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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4398|回復: 2
打印 上一主題 下一主題
收起左側

51單片機接收16進制用數碼管顯示十進制為什么沒有轉換程序,直接在顯示函數中求出來了

[復制鏈接]
跳轉到指定樓層
樓主
ID:378091 發表于 2018-8-3 09:11 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
1黑幣
#include <reg52.h>

#define uchar unsigned char
#define uint  unsigned int

sbit we = P2^7;        //數碼管位選
sbit du = P2^6;        //數碼管段選

/*數碼管段碼*/
uchar code leddata[]={

                0x3F,  //"0"
                0x06,  //"1"
                0x5B,  //"2"
                0x4F,  //"3"
                0x66,  //"4"
                0x6D,  //"5"
                0x7D,  //"6"
                0x07,  //"7"
                0x7F,  //"8"
                0x6F,  //"9"
                0x77,  //"A"
                0x7C,  //"B"
                0x39,  //"C"
                0x5E,  //"D"
                0x79,  //"E"
                0x71,  //"F"
                0x76,  //"H"
                0x38,  //"L"
                0x37,  //"n"
                0x3E,  //"u"
                0x73,  //"P"
                0x5C,  //"o"
                0x40,  //"-"
                0x00,  //熄滅
                0x00  //自定義

                         };

/*1毫秒延時函數*/
void delay(uint z)       
{
        uint x,y;
        for(x = z; x > 0; x--)
                for(y = 114; y > 0 ; y--);
}

/*
串口初始化函數
工作模式1 10位異步收發 發送速率4800bps
*/
void UART_init()  
{
        TMOD = 0x20;          //T1工作模式2  8位自動重裝
        TH1 = 0xfa;
        TL1 = 0xfa;         //比特率4800
        TR1 = 1;                //啟動T1定時器
        SM0 = 0;
        SM1 = 1;                 //串口工作方式1 10位異步
        REN = 1;                //串口允許接收
}

/*3位數碼管顯示函數*/
void display(uchar num)
{
        uchar bai,shi,ge;
        bai = num / 100; //求模
        shi = num % 100 / 10; //求余100后求出有多少個10
        ge  = num % 10; //求余
       
        P0 = 0xff;        //清除斷碼
        we = 1;
        P0 = 0xfe;         //點亮第一位數碼管
        we = 0;

        du = 1;
        P0 = leddata[bai];        //顯示百位
        du = 0;
        delay(1);

        P0 = 0xff;        //清除斷碼
        we = 1;
        P0 = 0xfd;//點亮第二位數碼管
        we = 0;

        du = 1;
        P0 = leddata[shi];        //顯示十位
        du = 0;
        delay(1);

        P0 = 0xff;        //清除斷碼
        we = 1;
        P0 = 0xfb;//點亮第三位數碼管
        we = 0;

        du = 1;
        P0 = leddata[ge];  //顯示各位
        du = 0;
        delay(1);       
}

void main()
{
        UART_init();//串口配置初始化
        while(1)
        {
                if (RI)        //檢測是否接收完成
                {
                        RI = 0;        //清除接收標志位,以便于下次接收
                }
                display(SBUF); //取出接收SBUF的值賦給數碼管顯示
        }
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:221865 發表于 2018-8-3 13:43 | 只看該作者
void display(uchar num)
{
        uchar bai,shi,ge;
        if(num >= '0' && num <= '9')
        {
                bai = (num - '0')/100;
        }
        ...
}

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:164602 發表于 2018-8-4 09:07 | 只看該作者
誰說沒有轉換程序?
這就是啊:
void display(uchar num)
{
        uchar bai,shi,ge;
        bai = num / 100; //求模
        shi = num % 100 / 10; //求余100后求出有多少個10
        ge  = num % 10; //求余
        

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美激情国产日韩精品一区18 | 欧美 日韩 亚洲91麻豆精品 | 精品视频一区二区三区 | 久久噜噜噜精品国产亚洲综合 | 最新91在线 | 亚洲精彩视频在线观看 | 午夜看电影在线观看 | 国产一区欧美一区 | 污视频免费在线观看 | 久久av一区二区三区 | 在线一区二区三区 | 国产二区精品视频 | 欧美涩涩网| 日日夜夜精品免费视频 | 日韩一区精品 | 国产一区二区电影网 | 狠狠躁天天躁夜夜躁婷婷老牛影视 | 韩国成人在线视频 | 亚洲免费人成在线视频观看 | 在线播放中文字幕 | 色天堂视频 | 亚洲九九精品 | 国产激情 | 日韩精品在线一区 | 午夜在线电影网 | 国产精品久久久久久久久久久免费看 | 久久久久91 | 99re在线视频| 成人免费在线观看 | 超碰在线免费av | 日本一区不卡 | 国产欧美一区二区三区久久人妖 | 高清久久久| 日韩综合在线 | 天堂va在线 | 亚洲一区二区三区在线 | 欧美激情一区 | 日韩在线欧美 | 欧美午夜一区 | 国产激情在线观看 | 日日噜噜噜夜夜爽爽狠狠视频97 |