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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1716|回復(fù): 13
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)用串口向6位數(shù)碼管發(fā)送文本18.46.23,數(shù)碼管顯示不了,求大佬們指點(diǎn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
#include <REGX52.H>

unsigned char Nixie_Buffer[9];
unsigned char count, count1;

void UART_Init(void)                //4800bps@11.0592MHz
{
        PCON &= 0x7F;                //波特率不倍速
        SCON = 0x50;                //8位數(shù)據(jù),可變波特率,與串口發(fā)送的區(qū)別是這里打開了接收控制位REN
        TMOD &= 0x0F;                //清除定時(shí)器1模式位
        TMOD |= 0x20;                //設(shè)定定時(shí)器1為8位自動(dòng)重裝方式
        TL1 = 0xFA;                //設(shè)定定時(shí)初值
        TH1 = 0xFA;                //設(shè)定定時(shí)器重裝值
        ET1 = 0;                //禁止定時(shí)器1中斷
        TR1 = 1;                //啟動(dòng)定時(shí)器1
        EA = 1;
        ES = 1;
}

unsigned char NixieTable[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x7f};//0~F,還有小數(shù)點(diǎn)

sbit DP1 = P0^0;
sbit DP2 = P0^1;
sbit DP3 = P0^2;
sbit DP4 = P0^3;
sbit DP5 = P0^4;
sbit DP6 = P0^5;

void Delay(unsigned int xms)
{
        unsigned char i, j;
        while(xms)
        {
                i = 2;
                j = 199;
                do
                {
                while (--j);
                } while (--i);
                xms--;
        }
}

void Nixie(unsigned char Location,Number)
{
        switch(Location)
        {
                case 1:DP1 = 0;break;
                case 2:DP2 = 0;break;
                case 3:DP3 = 0;break;
                case 4:DP4 = 0;break;
                case 5:DP5 = 0;break;
                case 6:DP6 = 0;break;
        }
        P1 = NixieTable[Number];
        Delay(1);//先延時(shí)1毫米,為避免過早清零讓數(shù)碼管太暗
        //P1 = 0x00;//將上一位段選清零,避免上一位段選的數(shù)據(jù)進(jìn)入下一位的位選,且讓清零的數(shù)據(jù)進(jìn)入位選,就沒影響,不過這里好像沒啥用
        //計(jì)算機(jī)進(jìn)行:位選 段選 位選 段選.......
        P0 = 0xff;
}

void Nixie_showentitle(unsigned char *str)
{
        while(*str != '\0')
        {
                        if (*str >= '0' && *str <= '9')
                        {
                                Nixie(count1, *str++ - 48);//顯示數(shù)字
                                count1++;
                        }
                        else if(*str == '.')
                        {
                                Nixie(count1 - 1, 16);//顯示小數(shù)點(diǎn)
                                *str++;
                        }
        }
}//數(shù)碼管為6位共陽極

void main()
{
        UART_Init();
        while(1)
        {
                Nixie_showentitle(Nixie_Buffer);
        }
}

void UART_Routine() interrupt 4
{
        if(RI)
        {
                Nixie_Buffer[count] = SBUF;//從發(fā)送緩沖區(qū)發(fā)送文本,例如18.46.23
                RI = 0;
                count++;
                count %= 9;
        }
        else
        {
                TI = 0;
        }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:883242 發(fā)表于 2024-4-15 11:50 | 只看該作者
那么請問發(fā)送什么可以顯示呢?
回復(fù)

使用道具 舉報(bào)

板凳
ID:1116661 發(fā)表于 2024-4-15 12:52 | 只看該作者
Hephaestus 發(fā)表于 2024-4-15 11:50
那么請問發(fā)送什么可以顯示呢?

發(fā)送什么都不能顯示(捂臉)
回復(fù)

使用道具 舉報(bào)

地板
ID:161164 發(fā)表于 2024-4-15 13:18 | 只看該作者
  1. void Nixie(unsigned char Location,Number)
  2. {
  3.         P1 = NixieTable[Number];
  4.         switch(Location)
  5.         {
  6.                 case 1:DP1 = 0;break;
  7.                 case 2:DP2 = 0;break;
  8.                 case 3:DP3 = 0;break;
  9.                 case 4:DP4 = 0;break;
  10.                 case 5:DP5 = 0;break;
  11.                 case 6:DP6 = 0;break;
  12.         }
  13.         Delay(1);//先延時(shí)1毫米,為避免過早清零讓數(shù)碼管太暗
  14.         P0 = 0xff;
  15. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

5#
ID:1109793 發(fā)表于 2024-4-15 13:20 | 只看該作者
不懂,用電腦的串口嗎?接收的電路啥樣?
回復(fù)

使用道具 舉報(bào)

6#
ID:1057978 發(fā)表于 2024-4-15 17:22 | 只看該作者
你先固定顯示個(gè)“123456”,正常顯示的話說明顯示程序沒問題,再檢查串口收發(fā)
回復(fù)

使用道具 舉報(bào)

7#
ID:213173 發(fā)表于 2024-4-15 17:41 | 只看該作者
b1325583446 發(fā)表于 2024-4-15 12:52
發(fā)送什么都不能顯示(捂臉)

串口驅(qū)動(dòng)數(shù)碼管?你這個(gè)數(shù)碼管應(yīng)該是個(gè)模塊,這個(gè)模塊的硬件電路你不提供,大家怎么幫你?
回復(fù)

使用道具 舉報(bào)

8#
ID:1116661 發(fā)表于 2024-4-15 19:23 | 只看該作者
不好意思大家,這是開發(fā)板,是電腦向單片機(jī)發(fā)送:

屏幕截圖 2024-04-15 192119.png (94.65 KB, 下載次數(shù): 63)

燒錄界面

燒錄界面

通信工程學(xué)院2023級開發(fā)板.pdf

1.33 MB, 下載次數(shù): 2

回復(fù)

使用道具 舉報(bào)

9#
ID:1116661 發(fā)表于 2024-4-15 19:29 | 只看該作者
回復(fù)

使用道具 舉報(bào)

10#
ID:1116661 發(fā)表于 2024-4-15 19:30 | 只看該作者
wangxiangtan 發(fā)表于 2024-4-15 17:22
你先固定顯示個(gè)“123456”,正常顯示的話說明顯示程序沒問題,再檢查串口收發(fā)

謝謝,我去試試
回復(fù)

使用道具 舉報(bào)

11#
ID:1116661 發(fā)表于 2024-4-15 19:45 | 只看該作者
pdf文件沒發(fā)起

屏幕截圖 2024-04-15 194248.png (519.01 KB, 下載次數(shù): 63)

屏幕截圖 2024-04-15 194248.png
回復(fù)

使用道具 舉報(bào)

12#
ID:213173 發(fā)表于 2024-4-15 21:47 | 只看該作者

串口收到的文本數(shù)字字符需要減0x30轉(zhuǎn)換成十進(jìn)制數(shù),文本小數(shù)點(diǎn)也是一個(gè)字節(jié),需要轉(zhuǎn)換成0并插入數(shù)碼管段碼的最高位才能在共陽數(shù)碼管上顯示正確數(shù)字。
回復(fù)

使用道具 舉報(bào)

13#
ID:213173 發(fā)表于 2024-4-15 22:14 | 只看該作者
uchar data dis_buf[8];
uchar data dis_buf1[6];
串口收到的8個(gè)字節(jié)文本保存在緩存
dis_buf[0]='1';
dis_buf[1]='8';
dis_buf[2]='.';
dis_buf[3]='4';
dis_buf[4]='6';
dis_buf[5]='.';
dis_buf[6]='2';
dis_buf[7]='3';

轉(zhuǎn)換成6位數(shù)碼管段碼
dis_buf1[0]=NixieTable[dis_buf[0]-0x30];
dis_buf1[1]=NixieTable[(dis_buf[1]-0x30)]&0x7f;//加小數(shù)點(diǎn)
dis_buf1[2]=NixieTable[dis_buf[3]-0x30];
dis_buf1[3]=NixieTable[(dis_buf[4]-0x30)]&0x7f;//加小數(shù)點(diǎn)
dis_buf1[4]=NixieTable[dis_buf[6]-0x30];
dis_buf1[5]=NixieTable[dis_buf[7]-0x30];
回復(fù)

使用道具 舉報(bào)

14#
ID:883242 發(fā)表于 2024-4-16 10:31 | 只看該作者
b1325583446 發(fā)表于 2024-4-15 12:52
發(fā)送什么都不能顯示(捂臉)

那么顯示部分做到什么程度了?能顯示什么?
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人欧美一区二区三区黑人孕妇 | 在线视频一区二区 | 欧美精品一区二区三区四区五区 | 欧洲av在线| av中文在线| 国产91丝袜| 国产成人久久av免费高清密臂 | 日韩欧美在线一区 | 精品在线免费观看视频 | 黄 色 毛片免费 | 福利在线看| 午夜精品久久久久久久久久久久久 | 亚洲一区二区三区视频 | 国内自拍视频在线观看 | 国产一区二区三区不卡av | 精品国产一区二区三区在线观看 | 国产精品久久久久久网站 | 精品一区二区三区不卡 | 久久中文一区二区 | 久久久久久一区 | 久久精品久久久久久 | 91精品国产一区二区 | 国产午夜精品一区二区三区嫩草 | 天天操天天舔 | 日韩精品一区二区三区中文字幕 | 精品久久久久久亚洲综合网站 | 国产高清无av久久 | 亚洲 中文 欧美 日韩 在线观看 | 国产在线一区二 | 久在草 | 色就是色欧美 | 91精品麻豆日日躁夜夜躁 | 日韩三级电影在线看 | 日日操日日舔 | 久久黄网| 国产欧美日韩精品一区二区三区 | 91毛片在线看 | 一区二区三区高清 | av成年人网站 | 成人在线看片 | 欧美视频网 |