完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
正常不是把用户输出的十进制数据转为BCD码才能被DS1302识别吗
前面数组定义是 unsigned char time_buf1[8] = {20,15,11,6,20,59,00,5};//空年月日时分秒周 unsigned char time_buf[8] ; 麻烦大家看一下这个函数吧,这个函数的功能应该就是把十进制的时间改为二进制然后写入DS1302 所以注释的BCD码处理应该指的就是十进制转bcd码,可是安装这个算法完全算不出来BCD码,我们取i=1吧,那么就是 tmp=time_buf1[1]/10; //15/10=1=tmp time_buf[1]=time_buf1[1]%10; //15%10=5=time_buf[1] time_buf[1]=time_buf[1]+tmp*16; //5+1*16=21=time_buf[1] 这个21很明显绝不是BCD码啊,还是我里面什么想错了? |
|
相关推荐
9个回答
|
|
呵呵哒哒哒你妹 发表于 2015-11-8 09:56 若DS1302输出的是BCD码,你要转成为十进制,则 unsigned char res BCD2HEX(unsigned char bcd) { unsigned char res; res = bcd/16 *10 +bcd%16; return res; }; 例如:BCD码17H,则它代表的是十进数17,而十进数17 = 11H; 计算过程为:分离出17H的高四位(为1),低四为(为7),再1*10 +7 = 17 =11H
最佳答案
|
|
|
|
啊勒,代码怎么被屏蔽了
|
|
|
|
其实你程序应该是对的:15H = 21,所以15H转换为BCD码就是21H.
例如:11H要转换为BCD码,结果应该为11H = 17(十进制) ->17H(BCD码); 所以,可以这么算:11H/10 =1;11H%10 = 7; BCD码等于1*16+7=17H。 程序应该为 unsigned char Hex2BCD(unsigned char hex) { unsigned char res; res = hex/10*16+hex%10; ruturn res; } |
|
|
|
路过,我是来学习的,楼 下继续哈
|
|
|
|
我给你的不是海誓山盟,而是一颗不变的心!楼主可以参考一下。。 http://www.taiheth.com http://www.dgkjly.com http://www.jinluodz.com http://www.konuaer.com http://www.kangbidz.com |
|
|
|
BCD码不是一个四位的二进制数字吗?17H是怎么表示BCD码?而且这个BCD码处理后是要串行输出的,单单17H是怎样串行输出的呢?一口气问了两句,还望解答 |
|
|
|
呵呵哒哒哒你妹 发表于 2015-11-7 17:20 附注:压缩BCD码与非压缩BCD码的区别—— 压缩BCD码的每一位用4位二进制表示,一个字节表示两位十进制数。例如10010110B表示十进制数96D;非压缩BCD码用1个字节表示一位十进制数,高四位总是0000,低4位的0000~1001表示0~9.例如00001000B表示十进制数8. |
|
|
|
15H = 21,15H转换为BCD码就是21.
|
|
|
|
ymw501817897 发表于 2015-11-7 17:58 还是不明白计算出来的17H是怎么进行串口输出的,难道还要转一遍,把1和7再转成高四位和低四位二进制数字吗。不过明白了17H就是压缩BCD码了,只是那个算BCD码的算法是根据什么式子变得?我知道它是分别把个位和十位提出来,为什么最后个位还要加上十位乘16呢 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
515 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
515 浏览 0 评论
780 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1360 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
572 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11760 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 03:45 , Processed in 0.979981 second(s), Total 89, Slave 72 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号