|
大家帮个忙,我这个单片机的航海航标灯怎么搞测量天气?
请大家看看,这图有没有错,有的话请指正,还有帮忙搞图片的天气变化!以下是程序看看有没有错,请把可以天气变化的图片和程序一起发上来,也可以发去我的邮箱里面, 邮箱是:mokai_158@163.com谢了
程序:
ORG 2000H
MAIN:MOV SP,#30H
GAT0:CLR P1.7
MOV TMOD,#09H ;T0定时,模式1,GATE=1
MOV TL0,#058H ;T0计算初值
MOV TH0,#9EH
MOV R7,#28H ;软件计数初值
HERE1:JNB P3.2,HERE1 ;夜晚到了吗? P3.2=0(白天)转HER1即停在此语句等待,夜晚到了P3.2=1 往下执行。
SETB TR0 ;到了,启动T0
SETB ET0 ;允许T0中断
SETB EA ;CPU开中断
HERE2:JB P3.2,HERE2 ;白天到了吗?P3.2=1(黑夜)转HERE2,即停在此语句等待,白天到了P3.2=0 往下执行。
CLR TR0 ;到了,关T0
CLR ET0 ;禁止T0中断
CLR EA ;关中断
CLR P1.7 ;关信号灯
SJMP GAT0
中断服务程序
ORG 000BH
SJMP T0INT
ORG 0020H
T0INT:MOV TL0,#058H ;重赋T0初值
MOV TH0,#9EH
DJNZ R7,EXIT ;软件计数为零吗?
MOV R7,#28H ;计数已到,重赋初值
CPL P1.7 ;输出取反,控制灯亮或灭
EXIT: RETI ;中断返回
END
|
|