完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
读写函数有什么问题?
void WriDS1302(unsigned char cmd, unsigned char dat) //ucAddr: DS1302µØÖ·, ucData: ҪдµÄÊý¾Ý { unsigned char i; DS1302RST_0;delay_us(1); DS1302RST_1; for(i=0; i<8; i++) { if(cmd&0x01) DS1302IO_1; else DS1302IO_0; cmd=cmd>>1; DS1302CLK_1; delay_us(1); DS1302CLK_0; } for(i=0; i<8; i++) { if(dat&0x01) DS1302IO_1; else DS1302IO_0; dat=dat>>1; DS1302CLK_1; delay_us(1); DS1302CLK_0; } DS1302RST_0; DS1302CLK_1; } //********************************************* unsigned char ReadDS1302(unsigned char cmd) //¶ÁÈ¡DS1302ijµØÖ·µÄÊý¾Ý { unsigned char i,tem=0; DS1302RST_0; delay_us(1); DS1302CLK_0; delay_us(1); DS1302RST_1; for(i=0; i<8; i++) { if(cmd&0x01) DS1302IO_1; else DS1302IO_0; cmd=cmd>>1; DS1302CLK_1; delay_us(1); DS1302CLK_0; } for(i=8; i>0; i--) { if(PAin(1)) tem=tem|0x01; else; tem=(tem<<1); DS1302CLK_1; delay_us(1); DS1302CLK_0; } DS1302RST_0; DS1302CLK_1; return(tem); } |
|
相关推荐
3个回答
|
|
你这个代码看着就头大 会不会是时序问题呢
|
|
|
|
+1 程序又长又乱,(主要自己学的也马马虎虎,不敢误人子弟。。)
|
|
|
|
和呵呵呵呵呵呵
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1131 浏览 0 评论
4264 浏览 1 评论
5669 浏览 4 评论
哪位大神有MGC3130的STM32 i2C驱动例程分享一下,感谢感谢
10176 浏览 1 评论
stm32f103c8t6用中断采出来的数来回跳?怎么样才能稳定下来?
4989 浏览 2 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-7-6 21:06 , Processed in 0.998844 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191