发布于 2013-12-04 11:48:45
11楼
SET
SAVE
CLR
L #Current_height //当前实际高度
L 10
/D
L 16 //*2 左移3位(*8)
*D
T #address_1 //当前高度对应的地址{dbw(n-1)}
L P#2.0
+D
T #address_2 //当前高度对应的地址{dbw(n)}
L #Current_height //当前实际高度
L 10
/D
L 10
*D
T #height_1 //高度(n-1)
L 10
+I
T #height_2 //高度(n)
L #db_num
T #db_number
OPN DB [#db_number]
L DBW [#address_2] //内部数据是WORD类型
L DBW [#address_1]
-I
T #temp1
L #Current_height
L #height_1
-D
T #temp2
L #height_2
L #height_1
-D
T #temp3
L #temp1
L #temp2
*D
L #temp3
/D
L DBW [#address_1]
+I
T #out
每两个DBW的地是相隔10个脉冲,t算法是依据下面式子。
{dbw(n)-dbw(n-1)}/{高度(n)-高度(n-1)}*{(当前实际高度-高度(n-1)}+dbw(n-1)}
现在是能计算出每个脉冲应当给定的速度。暂时没发现错误,请大家指点。