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

標題: TM1652顯示問題 [打印本頁]

作者: cjtdz    時間: 2025-4-26 21:11
標題: TM1652顯示問題
用TM1652驅動5位8段數碼管做了一個頻率計,在顯示65535以下的頻率時都正常,在顯示70000左右的頻率時只能顯示2500多,有關的頻率計數、變量都是定義成32位的,怎么調試都不對,難道TM1652不能顯示65535以上的數字?

作者: WL0123    時間: 2025-4-26 21:49
TM系列數碼管驅動器都是按位以字節寫入顯示寄存器。與其5位數的數據類型沒有關系。分解數據的常用代碼:
/*********************************************/
                swan =  ch/100000;                        // 十萬位
                wan  = (ch%100000)/10000;        // 萬位
                qian = (ch%10000)/1000;                // 千位
                bai  = (ch%1000)/100;                // 百位
                shi  = (ch%100)/10;                        // 十位
                ge   =  ch%10;                                // 個位
/*********************************************/
                swan = ch/100000;                        // 十萬位
                wan  = ch%100000/10000;                // 萬位
                qian = ch%10000/1000;                // 千位
                bai  = ch%1000/100;                        // 百位
                shi  = ch%100/10;                        // 十位
                ge   = ch%10;                                // 個位
/*********************************************/
                swan = ch/100000;                        // 十萬位
                wan  = ch/10000%10000;                // 萬位
                qian = ch/1000%1000;                // 千位
                bai  = ch/100%100;                        // 百位
                shi  = ch/10%10;                        // 十位
                ge   = ch%10;                                // 個位
/**************************************/
                swan = ch/100000%10;                //
                wan  = ch/10000%10;
                qian = ch/1000%10;
                bai  = ch/100%10;
                shi  = ch/10%10;
                ge   = ch%10;
/*********************************************/
                unsigned char buf[6];
                b=ch;                               
                for(i=0;i<6;i++)
                {
                        buf[i]=b%10;//由低位到高位保存
                        b/=10;
                }
/*********************************************/
作者: zhuls    時間: 2025-4-26 22:21
沒有代碼,只是猜 :
能顯示5位,應該是能顯示 到99999,
但你小于65535是下正常 的,那么,只能是你數據類型錯了,或是數據在處理時用錯類型 。
建 議你把代碼發上來。
作者: a399288395    時間: 2025-4-27 08:56
1652只是顯示驅動, 與你顯示什么數字  顯示多大的數字 原則上是沒有關系;
作者: 188610329    時間: 2025-4-27 09:02
TM1652是串口傳輸,你電腦直接收一下單片機發出來的串口數據,看看到底是 TM1652問題,還是單片機問題? 到底是單片機問題,還是代碼問題? 能問出這樣的問題,說明你代碼9成以上是復制粘貼來的,根本就沒過腦子。
作者: devcang    時間: 2025-4-27 10:05
關鍵程序是如何的
作者: man1234567    時間: 2025-4-27 11:01
直接定義70000左右的一個數,看能否正常顯示。
此處顯示內容與代碼有關與硬件無關。
作者: powerdruy    時間: 2025-4-29 15:48
你在傳遞顯示數值的變量上,肯定有一個類型錯了,仔細檢查
作者: coody_sz    時間: 2025-4-29 17:26
你數據處理的問題,跟顯示沒啥關系。
作者: 化工事故    時間: 2025-4-29 20:43
TM1652需要正確配置顯示模式和亮度,可以再檢查分頻系數的計算有沒有錯誤
作者: yslsdas    時間: 2025-5-7 14:01
zhuls 發表于 2025-4-26 22:21
沒有代碼,只是猜 :
能顯示5位,應該是能顯示 到99999,
但你小于65535是下正常 的,那么,只能是你數據 ...

http://m.raoushi.com/bbs/dpj-239955-1.html 我的顯示也有問題能給我看看麼




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