标题:
51单片机汇编怎么把DS1302里的星期用数码管显示出来?
[打印本页]
作者:
418854190
时间:
2020-5-22 22:21
标题:
51单片机汇编怎么把DS1302里的星期用数码管显示出来?
单片机时钟源程序是网上找的 经过修改后年月日时分秒星期都可以在1602上显示 现在想把它换成数码管 结果星期死活显示不出来 每次启动都是0 1302读出来的数直接显示还是需要转换 用下面的程序显示不出来 不论怎么修改加减只能显示表中的第一个 0C0h
MOV A,WEEK
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P0,A;
CLR P1.4
JB ZHOUBZ,BNGG; 设置状态向下 正常显示状态跳转
CLR P0.7;显示当前设置位
ZHOUAA: CALL SZYS;设置延时 设置状态和正常显示状态数码管亮度不同 用了两个延时
SETB P1.4;
SETB P0.7;
LJMP DIPSHIA; 跳到时间显示
;============================================
BNGG: LCALL XSYS;显示延时
LJMP ZHOUAA
; 数据查表
;***************************************************************
TAB: DB 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h,0FFH,0BFH; ;共阳
; 0 1 2 3 4 5 6 7 8 9 空 -
作者:
man1234567
时间:
2020-5-23 09:19
如果同是汇编可以在1602上显示那么肯定在数码管上也能显示
已排除数码管连接或编程错误(可正常显示除星期外的其他时间)就从星期值的读显处着手查
作者:
418854190
时间:
2020-5-23 23:38
man1234567 发表于 2020-5-23 09:19
如果同是汇编可以在1602上显示那么肯定在数码管上也能显示
已排除数码管连接或编程错误(可正常显示除星期 ...
累死累活完成了 用EQU 定义地址不知道最大范围定义错了 改过来后对比读出的最大数别超出就行了
明天继续把不完善的地方试着优化一下
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1