?? define.asm
字號:
.list
.DATA
org 0h ;Bank 0 data section start from RAM address 0x000
AccBuf ds 1 ;Accumulater buffer
PflagBuf ds 1 ;PFLAG buffer
Keyinbuf ds 1 ;按鍵
Keychkbuf ds 1
Keycvtbuf ds 1
Keyoldbuf ds 1
Keychat ds 1
; aplcode ds 1
csxtable ds 1 ;csx的表值
gearbuf ds 1 ;輸出檔位值
inputcount ds 1 ;哪一個控制腳
; wingbuf ds 1 ;左右翼檔位
; empennagebuf ds 1 ;尾翼檔位
; screwbuf ds 1 ;螺旋槳檔位
; swingbuf ds 1 ;擺尾檔位
wingbuf1 ds 1 ;左右翼檔位1
empennagebuf1 ds 1 ;尾翼檔位1
screwbuf1 ds 1 ;螺旋槳檔位1
swingbuf1 ds 1 ;擺尾檔位1
; wingbuf2 ds 1 ;左右翼檔位1
; empennagebuf2 ds 1 ;尾翼檔位1
; screwbuf2 ds 1 ;螺旋槳檔位1
; swingbuf2 ds 1 ;擺尾檔位1
samebuf1 ds 1
samebuf2 ds 1
samebuf3 ds 1
samebuf4 ds 1
leveh ds 1 ;接收信號的高電平計數值
level ds 1 ;接收信號的低電平計數值
levecount ds 1 ;接受信號計數值的中間變量
timerswing ds 1 ;擺尾輸出振蕩波形的計數值
timerempennage ds 1 ;尾翼輸出振蕩波形的計數值
timerwing ds 1 ;機翼輸出振蕩波形的計數值
timerscrew ds 1 ;螺旋槳輸出振蕩波形的計數值
; tempmaxh ds 1
; tempmaxl ds 1
; tempmidh ds 1
; tempmidl ds 1
; tempminh ds 1
; tempminl ds 1
; tempvalh ds 1
; tempvall ds 1
; tempcount ds 1
; tablebufh ds 1 ;查表值
; tablebufl ds 1 ;
tablecount ds 1 ;查表的計數值
; tablecountbak ds 1 ;上一次的計數值
; samecount ds 1 ;跟上一次相同的次數
; countbuf ds 1 ;最終結果值
; tmrf1 ds 1
; tmrf2 ds 1
; tmrt1 ds 1
; tmrt2 ds 1
; temp6 ds 1
timer1800us ds 1
timer5ms ds 1
timer500ms ds 1
; timer1s ds 1
; timer1m ds 1
; timercount ds 1 ;時間計數
; timertable ds 1 ;定時時間
pulsecount1 ds 1 ;低電平計數
pulsecount2 ds 1 ;高電平計數
r1 ds 1 ;延時
r2 ds 1
;// temp0 ds 1
;// temp1 ds 1
flag ds 1
flag1 ds 1
flag2 ds 1
;// flag3 ds 1
;---------
;飛機各控制腳輸出
;//set by carman
wingbuf ds 1 ;控制左右翼高電平輸出寬度
empennagebuf ds 1 ;控制尾翼高電平輸出寬度
screwbuf ds 1 ;控制螺旋槳高電平輸出寬度
swingbuf ds 1 ;控制擺尾高電平輸出寬度
;------
;可以通過設定以下RAM來改變各高電平寬度
wingloadbuf ds 1 ;重新載入左右翼高電平控制信號
empennageloadbuf ds 1 ;重新載入尾翼高電平控制信號
screwloadbuf ds 1 ;重新載入螺旋槳高電平控制信號
swingloadbuf ds 1 ;重新載入擺尾高電平控制信號
;-----
winglowbuf ds 1 ;控制左右翼低電平輸出寬度
empennagelowbuf ds 1 ;控制尾翼低電平輸出寬度
screwlowbuf ds 1 ;控制螺旋槳低電平輸出寬度
swinglowbuf ds 1 ;控制擺尾低電平輸出寬度
;*************** Define flag ***************
;時間標志
t5msflag1 equ flag.0
t5msflag2 equ flag.1
t5msflag3 equ flag.2
t5msflag4 equ flag.3
t1800usflag equ flag.4
t200usflag equ flag.5
t500msflag equ flag.6
t5msflag equ flag.7
csxenbflag equ flag1.0 ;是否檢測csx的信號
winghighflag equ flag1.1 ;機翼是否輸出振蕩波的標志
empennagehighflag equ flag1.2 ;尾翼是否輸出振蕩波的標志
screwhighflag equ flag1.3 ;螺旋槳是否輸出振蕩波的標志
swinghighflag equ flag1.4 ;擺尾是否輸出振蕩波的標志
errorflag equ flag1.5 ;
; singleflag equ flag1.6 ;遙控接收信號的中斷標志
firstflag equ flag1.7 ;第一個接收信號的標志
keystatflag equ flag2.0
t18msflag equ flag2.1
;---------
;飛機各控制腳狀態輸出切換
;//set by carman
wingstatflag equ flag2.2 ;=0:high output,=1:low output
empennagestatflag equ flag2.3
screwstatflag equ flag2.4
swingstatflag equ flag2.5
; t0count equ #230;231
samecontant equ #5 ;解碼得到相同的次數
;----------------------------------------------
;-------------constant define------------------
;*************Port define**************************
singleflag equ p0.0 ;遙控接收腳
ptwing equ p1.1 ;機翼
ptscrew equ p1.0 ;螺旋槳
ptempennage equ p1.2 ;尾翼
ptswing equ p1.3 ;擺尾
ptcsx1 equ p5.0 ;前后陀螺儀控制信號
ptcsx2 equ p5.1 ;
ptcsx3 equ p5.2 ;
ptcsx4 equ p5.3 ;
ptcsy1 equ p5.4 ;左右陀螺儀控制信號
ptcsy2 equ p5.5 ;
ptcsy3 equ p5.6 ;
ptcsy4 equ p5.7 ;
;*********Micro define as following****************
NOTBIT macro bit
b0bts0 bit
jmp $+3
b0bset bit
jmp $+2
b0bclr bit
endm
IFLT16 expand mem1,val1,val2,adr ;mem<val val-->adr
local flt00,flt10,flt20,flt30
mov a,mem1+1
cmprs a,val2
jmp flt10
mov a,mem1
cmprs a,val1
jmp flt20
jmp flt30
flt20:
b0bts1 fc
jmp adr
jmp flt30
flt10:
b0bts1 fc
jmp adr
flt30:
endm
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -