lxm41577 发表于 2025-5-22 15:50 你的寄存器地址重复了,20H,21h,22H,用做时分秒了,就不能再做它用了, mov 20h,#00H ;8025的0eh寄存器 mov 21h,#00H ;8025的0fh寄存器 这两句是设置8025用的, mov addss,#0Eh;开始地址 0EH是设置寄存器位置,写入时间开始地址应该是00H开始才对 |
我也用DS3231,这芯片的售价是确实贵,不舍得买。但…… 我公司有产品用到这片芯片,而且是原厂正品, |
新乡家电维修 发表于 2025-3-24 19:46 楼主我又来了,不好意思,你的程序我试了试,读可以使用,只是RX8025设置功能不成功,现在几点钟我需要设置成几点钟,不然显示的时间和实时时间不一直就没有意义了,麻烦在指点指点一下 MOV 22H,#09H ;小时 MOV 21H,#23H ;分钟 MOV 20H,#30H ; 秒 ;这个是要设置的时间 LCALL SHEZHI_8025 ;程序一调用单片机就死机不显示了 ;=============设置RX8025T功能================= ;========================================= shezhi_8025: mov 20h,#00H ;8025的0eh寄存器 mov 21h,#00H ;8025的0fh寄存器 mov r4, #64H mov r0, #20h ;r0作为间接寻址 mov addss,#0Eh;开始地址 mov r5, #2 lcall write ret write: lcall start mov a, r4 lcall send lcall ack jc write mov a, addss lcall send lcall ack mov a, @r0 ; lcall send lcall ack lcall stop inc r0 inc addss djnz r5, write ;减1后不为0转移,存储6位 ret |
新乡家电维修 发表于 2025-4-24 08:31 看到,非常感谢传经送宝,抱歉我没有系统学习过单片机,只是爱好能力有限,你说的有些我会听不懂,在次感谢你的分享精神,过段时间我试试这程序 |
lxm41577 发表于 2025-4-22 14:17 ;-------总线启动程序--------- start: setb scl setb sda nop nop clr sda nop nop clr scl ret ;-------总线停止程序--------- stop: clr sda nop nop setb scl nop nop setb sda ret ;-----------应答---------- ack: setb sda nop nop setb scl jb sda, ack_0 clr c sjmp ack_1 ack_0: setb c ack_1: nop nop clr scl ret ;--------------发送8位数据--------- send: mov b, #08h send_1: rlc a mov sda, c setb scl nop nop clr scl djnz b, send_1 ret ;--------------接收8位数据----------- receive: mov b, #08h clr a setb sda receive_1: setb scl nop nop mov c,sda rlc a clr scl djnz b, receive_1 rec_EN: ret |
lxm41577 发表于 2025-4-22 14:17 总线传送数据,启动,应答都是IIC总线规则,没有什么特殊的。和24C02一样就行 |
新乡家电维修 发表于 2025-3-24 19:46 楼主,研究下你给的程序,我有些地方没看明白,感觉没有初始化,自己要的时间如何往回写,有调用子程序但没看到子程序如: LCALL START ;启动总线 LCALL SEND LCALL ACK ; 芯片应答 望楼主能传宝送经,不吝赐教 |
51黑有你更精彩 |
dcc60 发表于 2025-3-2 15:14 打板一次,多功能使用,想用什么时钟芯片都行, |
keemee 发表于 2025-2-28 05:23 8025便宜,几毛钱也是高精度时钟芯片,DS3231太贵 |
lxm41577 发表于 2025-3-1 15:54 ;=============设置RX8025T功能================= ;========================================= shezhi_8025: mov 20h,#00H ;8025的0eh寄存器 mov 21h,#00H ;8025的0fh寄存器 mov r4, #64H mov r0, #20h ;r0作为间接寻址 mov addss,#0Eh;开始地址 mov r5, #2 lcall write ret write: lcall start mov a, r4 lcall send lcall ack jc write mov a, addss lcall send lcall ack mov a, @r0 ; lcall send lcall ack lcall stop inc r0 inc addss djnz r5, write ;减1后不为0转移,存储6位 ret ;===========8025T读程序================= ;==================================== GET8025: mov r0,#29h ;r0开始存放地址 mov addss,#00H;指向地址 mov r5, #7 ss: mov r2, #64H mov r4, #65H Lcall read ;调用读存储器程序 inc addss inc r0 djnz r5,ss ret ;---------------------------------- read: lcall start ;启动总线 mov a, r2 lcall send lcall ack ; 芯片应答 jc read mov a, addss lcall send lcall ack read_a: lcall start mov a,r4 lcall send lcall ack jc read_a rece: lcall receive mov @r0,a ;读到数据存储到@R0指定地址 lcall ack lcall stop ret |
为什么用了三块时钟芯片? LZ可否写一个DS1302(或RX8025)与STC15W408AS组成的时钟程序?刚接触这类,好多东西搞不懂。 |
楼主,是否可以共享一下RX8025T的汇编程序,我想用这个芯片制作时钟,程序不好找,尤其汇编的,单片机只是爱好本人只会汇编,C只能看个大概,拜托!拜托! |
RX8025T也是时间芯片吗?比DS3231的优点在哪?谢谢 |
新乡家电维修 发表于 2025-2-19 20:19 汇编程序,我喜欢,加油 |
zdmjjp 发表于 2024-4-5 08:21 还没完成,农历程序没着落呢,汇编语言 |
51黑有你更精彩 |
期待用那个九毛九的8H2K08U 再来一版,标配RTC |
能共享程序吗,谢谢! |
想学习一下,请楼主多帮助,谢谢! |