系统源程序.docx

上传人:b****3 文档编号:5359931 上传时间:2022-12-15 格式:DOCX 页数:120 大小:34.40KB
下载 相关 举报
系统源程序.docx_第1页
第1页 / 共120页
系统源程序.docx_第2页
第2页 / 共120页
系统源程序.docx_第3页
第3页 / 共120页
系统源程序.docx_第4页
第4页 / 共120页
系统源程序.docx_第5页
第5页 / 共120页
点击查看更多>>
下载资源
资源描述

系统源程序.docx

《系统源程序.docx》由会员分享,可在线阅读,更多相关《系统源程序.docx(120页珍藏版)》请在冰豆网上搜索。

系统源程序.docx

系统源程序

$INCLUDE(C8051F120.INC)

LCD_DATADATAP2

LCD_DIBITP3.5

LCD_RWBITP3.3

LCD_EBITP3.1

LCD_CS1BITP3.0

LCD_CS2BITP3.2

LCD_RSTBITP3.4

BIT_COUNTDATA07FH

TIMERDATA07EH

TIMER1DATA07DH

DATA_INDATA020H

DATA_OUTDATA021H

LCDDATADATA022H;LCD数据寄存器

LCDCOMMANDDATA023H;LCD命令字寄存器

STATEREGDATA024H;LCD状态寄存器

DATAREGDATA025H

YUANYENONGDUZHIDATA026H;原液浓度

XISHINONGDUZHIDATA027H;稀释浓度

YUANYELIULIANGHDATA030H;原液流量高位

YUANYELIULIANGLDATA031H;原液流量低位

JINGSHUILIULIANGHDATA032H;净水流量高位

JINGSHUILIULIANGLDATA033H;净水流量低位

YUANYEZONGLIANGHDATA035H;原液总量高位

yuanYEZONGLIANGLDATA036H;原液总量低位

JINGSHUIZONGLIANGHDATA037H;净水总量高位

JINGSHUIZONGLIANGLDATA038H;净水总量低位

SHUIFACAIDUDATA039H;水阀开度

SHISHINONGDUDATA03AH;实时浓度

JIPINGDATA03BH;计屏

JISHIDATA03CH;计时

JINGSHUIMUBIAOHDATA040H;净水目标值高位

JINGSHUIMUBIAOLDATA041H;净水目标值低位

ZHONGJIAN1DATA042H

ZHONGJIAN2DATA043H

ZHONGJIAN3DATA044H

ZHONGJIAN4DATA045H

DLY_LCDEQU50H

CAL_LCD_XEQU51H

CAL_LCD_YEQU52H

YANSHI10CIDATA03DH;100次计数

DLY_10MS_HEQU7AH

DLY_10MS_MEQU7BH

DLY_10MS_LEQU7CH

DLY_HDEQU7DH

KEYBITP0.4

CLKBITP0.5

HD_CSBITP0.6

DATBITP0.7

;#########################################################################

ORG0000H

LJMPSTART

ORG73H;定时器3中断入口地址

LJMPT3ISR

ORG1000H

START:

MOVWDTCN,#0DEH;禁止看门狗

MOVWDTCN,#0ADH

MOVSP,#60H

MOVSFRPAGE,#0FH

ORLOSCICN,#10000000B;内部振荡器使能,8分频输出,即为24.5/8M

MOVCLKSEL,#00000000B;系统时钟取自内部振荡器,所以SYSCLK=24.5/8M

MOVXBR2,#40H;允许交叉开关

CLRHD_CS;

MOVXBR2,#40H;允许交叉开关

MOVSFRPAGE,#00H

;MOVEIE2,#10H;允许外部中断6中断

;MOVEIP2,#10H;设置外部中断6为高优先级

;MOVP3IF,#00H;设置外部中断6、7为下降沿中断方式

SETBEA;开总中断

LCALLFW7279

LCALLFWLCD;调用LCD复位子程序

LCALLLCD_DISPLAY

LCALLLCD_CLEAR

LCALLSHOW_INTERFACE

MOVYUANYEZONGLIANGL,#00H

MOVYUANYEZONGLIANGH,#00H

MOVJINGSHUIZONGLIANGH,#00H

MOVJINGSHUIZONGLIANGL,#00H

;--------------------------------------------------------------------------

MAIN:

MOVYANSHI10CI,#099

MOVJIPING,#01H

movjishi,#0

;---------------设DAC

;MOVOSCICN,#15H;4M

;MOVXBR2,#40H

MOVSFRPAGE,#00H

MOVADC0CF,#00011000B;8分频,增益为1

MOVADC0CN,#11000000B;允许ADC工作,位5为转换结束中断标志,

;位4为转换启动标志位、写1则启动AD;读为1:

转换未结束

;位3-2为00:

向AD0BUSY写1启动转换;为01:

定时器3溢出启动转换

;位1为越限比较中断标志

;位0为数据对齐方式:

0右对齐;1左对齐

MOVAMX0CF,#00;与AMX0SL配合使用,此处为选择通道0(AIN0.0)通道1(AIN0.1)为单端输入

MOVREF0CN,#03H;电压基准控制寄存器:

电压基准取于VREF0;允许内部基准电压发生器工作;

;允许内部基准电压缓冲器工作

MOVSFRPAGE,#01H

MOVTMR3CN,#00H;位7为益出标志位;位2为T3控制位:

1时启动定时;位1为1为T3使用系统时钟

MOVTMR3CF,#00001000B

MOVTMR3L,#05EH;定时器3重装载值

MOVTMR3H,#88H

;------------DAC

;MOVDAC1CN,#10001000B

MOVDAC1CN,#10000000B

MOVDAC1L,#0

MOVDAC1H,#0

MOVSFRPAGE,#00H

MOVREF0CN,#03

;----------------

MOVSFRPAGE,#01H

MOVA,TMR3CN;启动定时器3工作

ORLA,#4

MOVTMR3CN,A

MOVSFRPAGE,#00H

SETBEA

MOVA,EIE2;允许ADC0转换结束中断

ORLA,#01

MOVEIE2,A

SJMP$

ZHONGZHUAN:

LJMPENN

T3ISR:

MOVSFRPAGE,#01H

ANLTMR3CN,#01111111B;清除定时器3标志位

MOVTMR3CF,#00001000B

MOVTMR3L,#05EH;定时器3重装载值

MOVTMR3H,#88H

MOVSFRPAGE,#00H

DJNZYANSHI10CI,ZHONGZHUAN

INCJISHI

;

;MOVA,DATA_IN

;CJNEA,#0AH,JIANZHIB

;MOVJIPING,#01H

;JMPADKOU

JIANZHIB:

;CJNEA,#0BH,ADKOU

;MOVJIPING,#02H

ADKOU:

MOVSFRPAGE,#01H

MOVA,TMR3CN;清除TF3中断标志

ANLA,#7FH

MOVTMR3CN,A

MOVSFRPAGE,#00H

MOVAMX0SL,#00

SETBAD0BUSY;启动AD

AD0:

MOVSFRPAGE,#00H

MOVA,ADC0CN;检测转换结束否

JNBACC.5,AD0

CLRAD0INT;清除转换结束中断标志

NOP

NOP

NOP

MOVA,ADC0H

MOVR0,#30H

MOV@R0,A

INCR0

CLRA

MOVA,ADC0L

MOV@R0,A

MOVAMX0SL,#01H

SETBAD0BUSY

AD1:

MOVSFRPAGE,#00H

MOVA,ADC0CN

JNBACC.5,AD1

CLRAD0INT;清除转换结束中断标志

CLRAD0BUSY

NOP

NOP

NOP

MOVA,ADC0H

MOVR1,#32H

MOV@R1,A

INCR1

CLRA

MOVA,ADC0L

MOV@R1,A

;适时显示原液,净水流量

;-----------------------------------------

;双字节二进制整数转换为十进制整数子程序(原液流量)

;R2R3转为R4R5R6

MOVR2,YUANYELIULIANGH

MOVR3,YUANYELIULIANGL

IBTD:

CLRA

MOVR4,A

MOVR5,A

MOVR6,A

MOVR7,#16

IBTL2:

CLRC

MOVA,R3

RLCA

MOVR3,A

MOVA,R2

RLCA

MOVR2,A

MOVA,R6

ADDCA,R6

DAA

MOVR6,A

MOVA,R5

ADDCA,R5

DAA

MOVR5,A

MOVA,R4

ADDCA,R4

DAA

MOVR4,A

DJNZR7,IBTL2

;----------------

;双字节二进制整数转换为十进制整数子程序(净水流量)

;R2R3转为R4R5R6

MOVR2,JINGSHUILIULIANGH

MOVR3,JINGSHUILIULIANGL

IBTDJ:

CLRA

MOVR4,A

MOVR5,A

MOVR6,A

MOVR7,#16

IBTL2J:

CLRC

MOVA,R3

RLCA

MOVR3,A

MOVA,R2

RLCA

MOVR2,A

MOVA,R6

ADDCA,R6

DAA

MOVR6,A

MOVA,R5

ADDCA,R5

DAA

MOVR5,A

MOVA,R4

ADDCA,R4

DAA

MOVR4,A

DJNZR7,IBTL2J

;---------------------------L原*N

MOVR2,YUANYELIULIANGH;MAIN将R2R3和R6R7中的双字节无符号数相乘,

;结果送R4R5R6R7

MOVR3,YUANYELIULIANGL

MOVR6,#00

MOVR7,YUANYENONGDUZHI

NMUL:

MOVR4,#0

MOVR5,#0

MOVR0,#16

CLRC

NMLP:

MOVA,R4

RRCA

MOVR4,A

MOVA,R5

RRCA

MOVR5,A

MOVA,R6

RRCA

MOVR6,A

MOVA,R7

RRCA

MOVR7,A

JNCNMLN

MOVA,R5

ADDA,R3

MOVR5,A

MOVA,R4

ADDCA,R2

MOVR4,A

NMLN:

DJNZR0,NMLP

MOVA,R4

RRCA

MOVR4,A

MOVA,R5

RRCA

MOVR5,A

MOVA,R6

RRCA

MOVR6,A

MOVA,R7

RRCA

MOVR7,A

;--------------------------------------------------------

;无符号双字节除法子程序,将R2R3R4R5除以R6R7,商放在R4R5中,余数放R2R3中

MOVA,R4

MOVR2,A

MOVA,R5

MOVR3,A

MOVA,R6

MOVR4,A

MOVA,R7

MOVR5,A

MOVR6,#00

MOVR7,XISHINONGDUZHI

ndiv1:

MOVA,R3

CLRC

SUBBA,R7

MOVA,R2

SUBBA,R6

JNCNDVE1

MOVB,#16

NDVL1:

CLRC

MOVA,R5

RLCA

MOVR5,A

MOVA,R4

RLCA

MOVR4,A

MOVA,R3

RLCA

MOVR3,A

XCHA,R2

RLCA

XCHA,R2

MOVPSW.5,C

CLRC

SUBBA,R7

MOVR1,A

MOVA,R2

SUBBA,R6

JBPSW.5,NDVM1

JCNDVD1

NDVM1:

MOVR2,A

MOVA,R1

MOVR3,A

INCR5

NDVD1:

DJNZB,NDVL1

CLRPSW.5

JMPJIANFA

NDVE1:

SETBPSW.5

JMPJIANFA

;----------------------------------------

;R2R3减去R6R7,结果送R4R5

JIANFA:

MOVA,R4

MOVR2,A

MOVA,R5

MOVR3,A

MOVR6,YUANYELIULIANGH

MOVR7,YUANYELIULIANGL

DSUB:

MOVA,R6

CPLACC.7

MOVR6,A

DADD:

MOVA,R2

MOVC,ACC.7

MOVPSW.5,C

XRLA,R6

MOVC,ACC.7

MOVA,R2

CLRACC.7

MOVR2,A

MOVA,R6

CLRACC.7

MOVR6,A

JCDAB2

LCALLNADD

MOVA,R4

JBACC.7,DABE

DAB1:

MOVC,PSW.5

MOVACC.7,C

MOVR4,A

JMPCHUFA;END

DABE:

SETBC

RET

DAB2:

LCALLNSUB1

MOVA,R4

JNBACC.7,DAB1

LCALLCMPT

CPLPSW.5

SJMPDAB1

NADD:

MOVA,R3

MOVA,R7

MOVR5,A

MOVA,R2

ADDCA,R6

MOVR4,A

RET

NSUB1:

MOVA,R3

CLRC

SUBBA,R7

MOVR5,A

MOVA,R2

SUBBA,R6

MOVR4,A

RET

CMPT:

MOVA,R5

CPLA

ADDA,#01H

MOVR5,A

MOVA,R4

CPLA

ADDCA,#00H

MOVR4,A

RET

CHUFA:

MOVJINGSHUIMUBIAOH,R4

MOVJINGSHUIMUBIAOL,R5

;-------------------------------二次报警

CLRC

MOVA,#0DH

SUBBA,R4

JCJINSHIBAOJING2

JNZBJSBJ2

MOVA,#15H

SUBBA,R5

JCJINSHIBAOJING2

LJMPBJSBJ2

;------------------------

JINSHIBAOJING2:

LCALLLCD_DISPLAY

LCALLLCD_CLEAR

LCALLSHOW_INTERFACE

;----------------------计算原液总量

;无符号双字节除法子程序,将R2R3R4R5除以R6R7,商放在R4R5中,余数放R2R3中

BJSBJ2:

MOVR2,#0

MOVR3,#0

MOVR4,YUANYELIULIANGH

MOVR5,YUANYELIULIANGL

MOVR6,#00

MOVR7,#64H

ndiv1Y:

MOVA,R3

CLRC

SUBBA,R7

MOVA,R2

SUBBA,R6

JNCCHANGZHUANYI

MOVB,#16

LJMPNDVL1Y

;---------

CHANGZHUANYI:

LJMPNDVE1

;---------

NDVL1Y:

CLRC

MOVA,R5

RLCA

MOVR5,A

MOVA,R4

RLCA

MOVR4,A

MOVA,R3

RLCA

MOVR3,A

XCHA,R2

RLCA

XCHA,R2

MOVPSW.5,C

CLRC

SUBBA,R7

MOVR1,A

MOVA,R2

SUBBA,R6

JBPSW.5,NDVM1Y

JCNDVD1Y

NDVM1Y:

MOVR2,A

MOVA,R1

MOVR3,A

INCR5

NDVD1Y:

DJNZB,NDVL1Y

CLRPSW.5

JMPXT

NDVE1Y:

SETBPSW.5

JMPXT

;----------------------

XT:

;MOVA,R5

;;MOVB,JISHI

;MULAB

;----------------------

;无符号双字节除法子程序,将R2R3R4R5除以R6R7,商放在R4R5中,余数放R2R3中

MOVR2,#00H

MOVR3,#00H

;MOVR4,B

;MOVR5,A

MOVR6,#0H

MOVR7,#0AH

ndiv1YS:

MOVA,R3

CLRC

SUBBA,R7

MOVA,R2

SUBBA,R6

JNCNDVE1YS

MOVB,#16

NDVL1YS:

CLRC

MOVA,R5

RLCA

MOVR5,A

MOVA,R4

RLCA

MOVR4,A

MOVA,R3

RLCA

MOVR3,A

XCHA,R2

RLCA

XCHA,R2

MOVPSW.5,C

CLRC

SUBBA,R7

MOVR1,A

MOVA,R2

SUBBA,R6

JBPSW.5,NDVM1YS

JCNDVD1YS

NDVM1YS:

MOVR2,A

MOVA,R1

MOVR3,A

INCR5

NDVD1YS:

DJNZB,NDVL1YS

CLRPSW.5

JMPXH

NDVE1YS:

SETBPSW.5

JMPXH

;------------------------

XH:

;-------------------------

MOVA,YUANYEZONGLIANGL

CLRC

ADDA,R5

MOVYUANYEZONGLIANGL,A

MOVA,YUANYEZONGLIANGH

ADDCA,#0H

MOVYUANYEZONGLIANGH,A

CLRC

;MOVYUANYEZONGLIANGL,R5

;-------------------------------------计算净水总量

;无符号双字节除法子程序,将R2R3R4R5除以R6R7,商放在R4R5中,余数放R2R3中

MOVR2,#0

MOVR3,#0

MOVR4,jingshuiLIULIANGH

MOVR5,JINGSHUILIULIANGL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1