久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于單片機+DS1302按鍵控制時間加減的問題

查看數: 3128 | 評論數: 1 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2019-6-17 15:13

正文摘要:

char l_tmpdate[3]={0,9,12}; char l_tmpdisplay[8]; void Write_Ds1302( unsigned char address,unsigned char dat )      {      RST=0;     _nop_(); & ...

回復

ID:517466 發表于 2019-6-17 17:07
l_tmpdate[1]=((l_tmpdate[1]+1)/16)*10 + ((l_tmpdate[1]+1)%16);   //分加1
    if(l_tmpdate[1]>59)    l_tmpdate[1]=0;                   //判斷
第一行把10進制的l_tmpdate[1]+1后,轉成16進制格式數據,結果第二行中又和10進制數據比較,你確定要這么做?對于10進制的60,在你的第一行處理中將變成30+12,變成了十進制的42了,然后去和10進制的59比,結論肯定是錯的,與你想要的到59分后再加1變成0的結果是不一致的。要么改成if(l_tmpdate[1]>41),要么第一行不要做轉換處理,改成l_tmpdate[1]++;

另外:l_tmpdate[1]=((l_tmpdate[1]+1)/16)*10 + ((l_tmpdate[1]+1)%16);   //分加1
這樣的處理不好,轉換成機器碼的時候,會多出許多代碼。
//加處理
l_tmpdate[1]++;
if(l_tmpdate[1]>59)    l_tmpdate[1]=0;                   //判斷

減處理:
if (l_tmpdate[1]==0)  
    l_tmpdate[1]=59;
else
    l_tmpdate[1]--;
這是不是和你想要的是一樣的結果?
數據在寫入DS1302的時候,再轉換為16進制數據即可。之前的判斷用十進制的處理就行。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕亚洲区一区二 | 国产精品伦理一区二区三区 | 精品国产91久久久久久 | 久久久无码精品亚洲日韩按摩 | 黄色毛片免费看 | 成人妇女免费播放久久久 | 视频一区在线观看 | 亚洲欧美另类在线 | 国产福利在线播放麻豆 | 9久久精品 | 久久精品视频免费看 | 国产麻豆乱码精品一区二区三区 | 99精品久久 | www.youjizz.com日韩| 日本在线视| 国产精品福利网站 | 亚洲激情av | 99精品一区二区三区 | 欧美中文字幕一区二区三区亚洲 | 亚洲高清视频一区二区 | 国产精品区一区二区三区 | 精品乱码一区二区三四区 | 色久影院 | 久草免费在线视频 | 久草中文在线观看 | 国产精品日韩欧美一区二区 | 99热国产精品 | 一区二区视频在线观看 | 激情一区二区三区 | 伊人久久在线观看 | 青青草国产在线观看 | 综合久久久 | 免费一区 | 欧美片网站免费 | 成人激情视频在线 | 最大av在线 | 中文精品视频 | 盗摄精品av一区二区三区 | 日本精品一区二区三区在线观看视频 | av电影手机在线看 | 成人在线不卡 |