当前位置:首页 > 太阳能路灯毕业论文
太阳能路灯毕业论文
附录2
程序: BITCNT EQU 30H
BYTECNT EQU 31H COMMAND EQU 32H
RCUDAT EQU 33H ; 定义1302 读出地址 XMTDAT EQU 3BH ; 定义1302 写入地址
IO_DATA BIT P1.4 ; 定义1302数据输入/输出端 SCLK BIT P1.3 ; 定义1302串行时钟 RST BIT P1.5 ; 定义1302复位
SCL BIT P1.6 ; 定义24c02串行时钟 SDA BIT P1.7 ; 定义24c02串行数据 XSJ BIT P3.2 ; 定义显示开关键 GNJ BIT P3.3 ; 定义功能键 JYJ BIT P3.4 ; 定义加1键
GM BIT P3.5 ; 定义光敏电阻输入端
TS2 BIT P1.0 ; 定义调时钟指示发光二极管 TGLD BIT P1.1 ;定义调关路灯指示发光二极管 TKLD BIT P1.2 ;定义调开路灯指示发光二极管 ORG 0000H
AJMP MAIN ;主程序入口地址 ORG 000BH
AJMP T0INT ;T0中断入口地址 ORG 001BH
AJMP T1INT ;T1中断入口地址 ORG 0030H
MAIN: MOV TMOD,#11H ;设置定时器T0,T1工作于模式1 SETB 30H CLR 31H
MOV 73H,#0 ; 功能键标志位 MOV 72H,#0 ; 闪烁标志位 CLR 32H
CLR 33H ; 闪烁标志位 MOV 70H,#0
MOV TH0,#0D8H MOV TL0,#0F0H MOV TH1,#0D8H
MOV TL1,#0F0H ; 定时10ms初值 MOV R3 ,#0AIH MOV R4 ,#00H MOV R1 ,#76H
MOV R7 ,#04H ; 读出24c02操作 LCALL EEPR
LCALL OSC_ENABLE ; 初始化1302时钟启动操作 LCALL WRIT_ENABLE ; 初始化1302允许数据输入
17
太阳能路灯毕业论文
LCALL R_MANY ; 调1302多字节读出程序 SETB TR0
KGXS: LCALL R_MANY
*******按键扫描程序******* JB XSJ ,XSBZ LCALL YS10MS
JB XSJ, XSBZ ; 判断显示开关键 CPL 30H ; 显示标志位
MOV 7BH ,75H MOV 7AH ,74H LCALL XS
XSBZ: JB30H ,PDGX ; 判断标志位
SETB TR1
JB GNJ ,PDGX ; 判断功能键 LCALL YS10MS JB GNJ , PDGX
INC 73H ; 功能键标志位加1 MOV A , #1 , POTS; ; 调时钟时 CLR TSZ
JB JYJ , PDGX LCALL TS10MS
JB JYJ , PDGX ; 加一键 INC 75H ;1302 ; 1302时加一 MOV A , 75H
CJNE A , #2 , PDTS
MOV 75H ,#0 ; 判断是否调到24时
PDTS: CJNE A , #2 , POTF
JB JYJ , PDTF LCALL YS10MS JB JYJ , PDTF
INC 74H ; 1302分加一 MOV A , 74H
CJNE A , #60 ,PDTF MOV 74H ,#0
PDTF: CJNE A , #3 ,PDGS
SETB TSZ CLR TGLD
LCALL W_MANY ; 存1302时、分 JB JYJ , PDGS LCALL YS 10MS JB JYJ , PDGS
INC 79H ; 关路灯时加一 MOV A , #24 , PDGS MOV 79H ,#0
18
太阳能路灯毕业论文
PDGS: CJNE A , #4 , PDKS
JB JYJ , PDKS
LCALL YS10MS JB JYJ PDKS
INC 78H ; 关路灯分加一 CJNE A ,#60 , PDKS MOV 78H , #0
PDKS: CJNE A , #5 , PDKF
SETB TGLD CLR TKLD JB JYJ PDKF LCALL YS10MS JB JYJ , PDKF
INC 77H ; 开路灯时加一 MOV A , #77H
CJNE A ,#24 , PDKF MOV 77H , #0
PDKF: CJNE A , #6 , PDJS
JB JYJ , PDJS LCALL YS10MS JB JYJ , PDJS
INC 76H ; 开路灯分加一 MOV A , #76H
CJNE A ,#60 , PDJS MOV 76H ,#0
PDJS: CJNE A , #7 , PDGX
MOV 73H ,#0 MOV R3 , #0A0H MOV R4 , #00H MOV R1 , #76H MOV R7 , #04H
LCALL EEPW ; 向24c02存内容 SETB TKLD SETB TR0
PDGX :JB 30H , KGXS
CLR TR1
*******中断T0服务程序******* T0INT: PUSH PSW
PUSH ACC
MOV 7H0 , #0D8H MOV TL0 , #0F0H
JB P3.5 RETTT ; 判断光线强弱 JB 32H , WSKD ; 判断是否已开灯 CLR 31H
19
太阳能路灯毕业论文
S ETB 32H
WSKD: JB 31H , YSC ; 输出标志位
MOV A , 75H
CJNE A , 79H , KLD ; 比较关灯时间点 MOV 74H
CJNE A , 78H , KLD ; 比较关灯分时间点
GLD: SETB P3.6 ; 关灯
SETB 31H AJMP RETT
YSC: MOV A , 75H
CJNE A , 77H , GLD MOV A , 74H
CJNE A , 76好,GLD CLR 31H
KLD: CLR P3.6
AJMP RETT
RETT: SETB P3.6
CLR 32H
RETT: POP ACC
POP PSW RETI
*******中断T1服务程序*********
T1INTPUSH PSW
PUSH ACC
MOV 7H1, #0D8H MOV TL1 , #0F0H INC 70H MOV A ,70H
CJNE A , #30 , FRET MOV A , 73 H
CJNE A ,#0 , SZSS
MOV 7BH , 75H MOV 7AH , 74H AJMP FRET
SZSS: CJNE A , #1 , SZSF
JB 33H , SSSZ MOV 7BH , 75H MOV 7AH , 74H AJMP FRET
SSSZ: MOV 7BH , # 0FFH
MOV 74H , #74H CPL 33H AJMP FRET
SZSF: CJNE A , #2 , GDSS
20
共分享92篇相关文档