⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad7711a.dt

📁 用汇编语言实现温度采集芯片ad7711的源程序
💻 DT
📖 第 1 页 / 共 3 页
字号:
       CALL   MUL_AB    
       BC 	R3,6
       BS 	R3,5            
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU01
       INC	D_C3
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU01
       INC	D_C2
NCU01:
       MOV	A,BB
       ADD	D_C3,A
       JBC	R3,0
       INC	D_C2
       
       ;***DAT1-->D_C3
       MOV	A,DAT1
       ADD	D_C3,A
       JBC	R3,0
       INC	D_C2
       
       ;***DAT0*0X0FF-->D_C2,D_C3
       MOV	A,DAT0
       MOV	BB,A
       MOV	A,@0X0FF
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C3,A
       JBC	R3,0
       INC	D_C2
       MOV	A,BB
       ADD	D_C2,A
       ;***DAT0-->D_C2
       MOV	A,DAT0
       ADD	D_C2,A
       
       ;D_C0::D_C5  六字节宽度数据取补码
       COM	D_C0
       COM	D_C1
       COM	D_C2
       COM	D_C3
       COM	D_C4
       COM	D_C5
       INC	D_C5
       MOV	D_C5,D_C5
       JBS	R3,2
       JMP	NCU02
       INC	D_C4
       MOV	D_C4,D_C4
       JBS	R3,2
       JMP	NCU02
       INC	D_C3
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU02
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU02
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU02:       
       ;(D_C0::D_C5)+(2F52C3E4)
       MOV	A,@0X0E4
       ADD	D_C5,A
       JBS	R3,0
       JMP	NCU03
       INC	D_C4
       MOV	D_C4,D_C4
       JBS	R3,2
       JMP	NCU03
       INC	D_C3
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU03
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU03
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU03:       
       MOV	A,@0X0C3
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU04
       INC	D_C3    
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU04
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU04
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU04:
       MOV	A,@0X52
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU05
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU05
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU05: 
       MOV	A,@0X2F
       ADD	D_C2,A
       JBS	R3,0
       JMP	NCU06
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU06:
       ;(53247)*T  + [D_C0::D_C5]     
       MOV	A,T10L
       MOV	BB,A
       MOV	A,@0X47
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C5,A
       JBS	R3,0
       JMP	NCU07
       INC	D_C4
       MOV	D_C4,D_C4
       JBS	R3,2
       JMP	NCU07
       INC	D_C3
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU07
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU07
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU07:
       MOV	A,BB
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU08
       INC	D_C3   
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU08
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU08
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU08: 
       ;**
       MOV	A,T10L
       MOV	BB,A
       MOV	A,@0X32
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU09
       INC	D_C3   
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU09
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU09
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU09:       
       MOV	A,BB
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU10
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU10
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU10:
       ;**
       MOV	A,T10H
       MOV	BB,A
       MOV	A,@0X47
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU11
       INC	D_C3   
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU11
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU11
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU11:       
       MOV	A,BB
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU12
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU12
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU12:
       ;**
       MOV	A,T10L
       MOV	BB,A
       MOV	A,@0X05
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU13
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU13
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU13:       
       MOV	A,BB
       ADD	D_C2,A
       JBS	R3,0
       JMP	NCU14
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0 
NCU14: 
       ;**
       MOV	A,T10H
       MOV	BB,A
       MOV	A,@0X32
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU15
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU15
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU15:       
       MOV	A,BB
       ADD	D_C2,A
       JBS	R3,0
       JMP	NCU16
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0 
NCU16:
       ;**
       MOV	A,T10H
       MOV	BB,A
       MOV	A,@0X05
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_C2,A
       JBS	R3,0
       JMP	NCU17
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU17:
       ;(T**2)*(6DD-T)/400
       MOV	A,T10H
       MOV	D_C6,A
       MOV	A,T10L
       MOV	D_C7,A	;[6DD-T]-->[D_C6::D_C7]
       COM	D_C6            
       COM	D_C7
       INC	D_C7
       MOV	D_C7,D_C7
       JBC	R3,2
       INC	D_C6
       MOV	A,@0X0DD
       ADD	D_C7,A
       JBC	R3,0
       INC	D_C6
       MOV	A,@0X06
       ADD	D_C6,A	;[6DD-T]-->[D_C6::D_C7]
       ;**
       CLR	D_C8
       CLR	D_C9
       CLR	D_CA
       CLR	D_CB
       MOV	A,T10L
       MOV	BB,A
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       MOV	D_CB,A
       MOV	A,BB
       MOV	D_CA,A
       MOV	A,T10H
       MOV	BB,A
       MOV	A,T10L
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CA,A
       JBS	R3,0
       JMP	NCU18
       INC	D_C9
       MOV	D_C9,D_C9
       JBC	R3,2
       INC	D_C8
NCU18:
       ADD	D_CA,A
       JBS	R3,0
       JMP	NCU19
       INC	D_C9
       MOV	D_C9,D_C9
       JBC	R3,2
       INC	D_C8
NCU19:       
       MOV	A,BB
       ADD	D_C9,A
       JBC	R3,0
       INC	D_C8
       ADD	D_C9,A
       JBC	R3,0
       INC	D_C8
       
       MOV	A,T10H
       MOV	BB,A
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6 
       BS 	R3,5        
       ADD	D_C9,A 
       JBC	R3,0
       INC	D_C8
       MOV	A,BB
       ADD	D_C8,A
       ;**
       BC	 R3,0
       RRC	D_C8
       RRC	D_C9
       RRC	D_CA          
       BC	 R3,0
       RRC	D_C8
       RRC	D_C9
       RRC	D_CA
       
       ;[D_C6::D_C7]*[D_C8::D_CA]-->[D_CB::D_CF]
       CLR	D_CB
       CLR	D_CC
       CLR	D_CD
       CLR	D_CE
       CLR	D_CF
       MOV	A,D_C7
       MOV	BB,A
       MOV	A,D_CA
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       MOV	D_CF,A
       MOV	A,BB
       MOV	D_CE,A
       
       MOV	A,D_C7
       MOV	BB,A
       MOV	A,D_C9
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CE,A
       JBC	R3,0
       INC	D_CD
       MOV	A,BB
       ADD	D_CD,A
       JBC	R3,0
       INC	D_CC
       
       MOV	A,D_C6
       MOV	BB,A
       MOV	A,D_CA
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CE,A
       JBS	R3,0
       JMP	NCU20
       INC	D_CD
       MOV	D_CD,D_CD
       JBC	R3,2
       INC	D_CC
NCU20: 
       MOV	A,BB
       ADD	D_CD,A
       JBC	R3,0
       INC	D_CC
       
       MOV	A,D_C7
       MOV	BB,A
       MOV	A,D_C8
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CD,A
       JBC	R3,0
       INC	D_CC
       MOV	A,BB
       ADD	D_CC,A
       JBC	R3,0
       INC	D_CB
       
       MOV	A,D_C6
       MOV	BB,A
       MOV	A,D_C9
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CD,A
       JBS	R3,0
       JMP	NCU21
       INC	D_CC
       MOV	D_CC,D_CC
       JBC	R3,2
       INC	D_CB
NCU21: 
       MOV	A,BB
       ADD	D_CC,A
       JBC	R3,0
       INC	D_CB
       
       MOV	A,D_C6
       MOV	BB,A
       MOV	A,D_C8
       BS	 R3,6
       BC	 R3,5
       CALL   MUL_AB
       BC 	R3,6
       BS 	R3,5         
       ADD	D_CC,A
       JBC	R3,0
       INC	D_CB
       MOV	A,BB
       ADD	D_CB,A
       
       ;[D_CB::D_CF]取补码
       COM	D_CB
       COM	D_CC
       COM	D_CD
       COM	D_CE
       COM	D_CF
       INC	D_CF
       MOV	D_CF,D_CF
       JBS	R3,2
       JMP	NCU22
       INC	D_CE
       MOV	D_CE,D_CE
       JBS	R3,2
       JMP	NCU22
       INC	D_CD
       MOV	D_CD,D_CD
       JBS	R3,2
       JMP	NCU22
       INC	D_CC
       MOV	D_CC,D_CC
       JBC	R3,2
       INC	D_CB
NCU22:
       ;[D_C0::D_C5]+[D_CB::D_CF]-->[D_C0::D_C5]
       MOV	A,D_CF
       ADD	D_C5,A
       JBS	R3,0
       JMP	NCU23
       INC	D_C4
       MOV	D_C4,D_C4
       JBS	R3,2
       JMP	NCU23
       INC	D_C3
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU23
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU23
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU23: 
       MOV	A,D_CE
       ADD	D_C4,A
       JBS	R3,0
       JMP	NCU24
       INC	D_C3    
       MOV	D_C3,D_C3
       JBS	R3,2
       JMP	NCU24
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU24
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU24:
       MOV	A,D_CD
       ADD	D_C3,A
       JBS	R3,0
       JMP	NCU25
       INC	D_C2
       MOV	D_C2,D_C2
       JBS	R3,2
       JMP	NCU25
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU25:
       MOV	A,D_CC
       ADD	D_C2,A
       JBS	R3,0
       JMP	NCU26
       INC	D_C1
       MOV	D_C1,D_C1
       JBC	R3,2
       INC	D_C0
NCU26:
       MOV	A,D_CB
       ADD	D_C1,A
       JBC	R3,0
       INC	D_C0      
       MOV	A,D_CA
       ADD	D_C0,A
       ;[D_C0::D_C5]+[D_CB::D_CF]-->[D_C0::D_C5]完成
       
       JBC	D_C0,7	;F(T)?0
       JMP	D_NEG	 ;F(T)<0
       JMP	D_POS	 ;F(T)>0
D_NEG:       
       ;T10-->TL,  T10=(T10+TH)/2
       MOV	A,T10H
       MOV	T_LH,A
       MOV	A,T10L
       MOV	T_LL,A
       MOV	A,T_HL
       ADD	T10L,A

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -