欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 為什么顯示十位要與16求余,與10求余不行 求大佬 [打印本頁]

作者: liuhengzhi    時間: 2019-12-2 20:58
標題: 為什么顯示十位要與16求余,與10求余不行 求大佬
我用串口助手向單片機發送12,讓他在數碼管上顯示,從SBUF上接收到數據,為什么顯示十位要與16求余,與10求余不行

作者: csmyldl    時間: 2019-12-3 02:08
串口助手發送的12是指0x12(十六進制),如果要顯示1,只能0x12/16才是1,0x12%16才是2
作者: gb302    時間: 2019-12-3 08:00
接收的是16進制數
作者: wulin    時間: 2019-12-3 08:13
串口助手向單片機發送12實際是16進制的0x12,是十進制的18。
作者: moluxiyan    時間: 2019-12-3 09:32
你串口助手向單片機以16進制或字符形式發送,看你用哪種方式了
作者: 小黑屋525    時間: 2019-12-3 12:06
串口發送是以ASCLL碼來發送的;
作者: 鄭漢松    時間: 2019-12-3 16:54
看你串口發的是什么格式的,16進制肯定余16啦,10進制就余10
作者: liuhengzhi    時間: 2019-12-3 20:47
csmyldl 發表于 2019-12-3 02:08
串口助手發送的12是指0x12(十六進制),如果要顯示1,只能0x12/16才是1,0x12%16才是2

如果我發送一個三位數,如何讓它三位分別在三個數碼管上顯示
作者: bh2030693    時間: 2019-12-3 21:03
說的可能是BCD碼,除以16就是二進制的右移4位;
你先弄清楚是以什么類型傳遞數據,例如16進制,10進制,BCD碼...
別人猜的話范圍很大,蒙對了就對了,蒙錯了就錯了,所以還是從對方角度考慮,提問題最好寫兩句代碼,這樣網友看了就明白了。
作者: 卡瓦①    時間: 2019-12-3 21:28
liuhengzhi 發表于 2019-12-3 20:47
如果我發送一個三位數,如何讓它三位分別在三個數碼管上顯示

num/256(百),num%256/16(十),num%16(個)    num為你要發送的數。
作者: yyh001123    時間: 2019-12-3 21:40
liuhengzhi 發表于 2019-12-3 20:47
如果我發送一個三位數,如何讓它三位分別在三個數碼管上顯示

如果是16進制的數字,百位=數值/16^2=數值/256,十位=(數值%256)/16,個位=(數值%256)%16
作者: liuhengzhi    時間: 2019-12-5 09:08
卡瓦① 發表于 2019-12-3 21:28
num/256(百),num%256/16(十),num%16(個)    num為你要發送的數。

好的明白了,謝謝大佬
作者: liuhengzhi    時間: 2019-12-5 09:14
bh2030693 發表于 2019-12-3 21:03
說的可能是BCD碼,除以16就是二進制的右移4位;
你先弄清楚是以什么類型傳遞數據,例如16進制,10進制,BC ...

好的,下次會注意的




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1