亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

溫度傳感器數碼管問題求大神賜教,在線等

[復制鏈接]
跳轉到指定樓層
樓主
ID:224119 發表于 2017-8-2 15:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本人小白一個,怎么使以下程序在十位加入小數點。
程序如下。
#include        "config.h"       

//宏定義,數碼管a-g各段對應的比特,更換硬件只用改動以下8行
#define    a 0x01                  //  AAAA
#define    b 0x04                    // F    B
#define    c 0x10                    // F    B
#define    d 0x40                    //  GGGG
#define    e 0x80                    // E    C
#define    f 0x02                    // E    C
#define    g 0x08                    //  DDDD    H
#define    h 0x20

//用宏定義自動生成段碼表,很好的寫法,值得學習
//更換硬件無需重寫段碼表
unsigned char code LED_table[]={
        a+b+c+d+e+f,                   //"0"
        b+c,                           //"1"
        a+b+d+e+g,                       //"2"
        a+b+c+d+g,                       //"3"
        b+c+f+g,                       //"4"
        a+c+d+f+g,                       //"5"
        a+c+d+e+f+g,                   //"6"
        a+b+c,                           //"7"
        a+b+c+d+e+f+g,                   //"8"
        a+b+c+d+f+g,                   //"9"
        b+c+e+f+g,                       //"H"
        a+f+e+g,                       //"C"
        d+e+f,                           //"L"
        g,                               //"-"
        h,                                                                //"."
        0x00                           //black
};



extern void Dlay(uint16 t);
extern uint DisplayData2 ;
uchar Keybit1 =0;
uchar Keybit2 =0;
void Display(uint DisplayData )                        //形參
{
        //////////////////////////////////////數碼管顯示
        P0 = 0X00;//清除顯示
        P3 = 0x00;
        P0 = 0X80;//個位顯示
        P3 = LED_table[DisplayData % 10];
        Dlay(4000);

        P0 = 0X00;//清除顯示
        P3 = 0x00;
        P0 = 0X40;//十位顯示
        P3 = LED_table[DisplayData % 100 / 10];       
        Dlay(4000);

        P0 = 0X00;//清除顯示
        P3 = 0x00;
        P0 = 0X08;//百位顯示
        P3 = LED_table[DisplayData % 1000 / 100];
        Dlay(4000);

        /////////////////////////////////////////按鍵讀取
        P0 = 0X00;//清除顯示
        P3 = 0x00;
        P3CR =Bin(11100110);        //3.4 ad口 設為輸入        ,3.0-3.3開關輸入
        Dlay(100);
        if((P3 & 0x10) ==0){
                if(Keybit1 ==0){
                        DisplayData2 -- ;
                        Keybit1 =1;
                }
        }else{
                Keybit1 =0;
        }

        if((P3 & 0x08) ==0){
                if(Keybit2 ==0){
                        DisplayData2++;
                        Keybit2 =1;
                }
        }else{
                Keybit2=0;
        }
       
        P3CR =Bin(11111111);        //3.3 ad口 設為輸入        ,3.0-3.3開關輸入
               

}



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

使用道具 舉報

沙發
ID:224122 發表于 2017-8-2 16:08 | 只看該作者
P3 = LED_table[DisplayData % 100 / 10] + 0x20;   
回復

使用道具 舉報

板凳
ID:224122 發表于 2017-8-2 16:09 | 只看該作者
        P0 = 0X00;//清除顯示
        P3 = 0x00;
        P0 = 0X40;//十位顯示
        P3 = LED_table[DisplayData % 100 / 10] + 0x20;        
        Dlay(4000);
回復

使用道具 舉報

地板
ID:224119 發表于 2017-8-2 18:23 | 只看該作者
1047001555 發表于 2017-8-2 16:09
P0 = 0X00;//清除顯示
        P3 = 0x00;
        P0 = 0X40;//十位顯示

嗯。謝謝解惑
回復

使用道具 舉報

5#
ID:152163 發表于 2017-8-2 20:02 | 只看該作者
那要看你的數碼管是幾段的 有的加不上
回復

使用道具 舉報

6#
ID:220231 發表于 2017-8-6 01:05 來自觸屏版 | 只看該作者
P3 = LED_table[DisplayData % 100 / 10]|0x80就行
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表