微控制器求動態顯示分別顯示0123在四位數碼管

2021-03-03 21:22:49 字數 3026 閱讀 5997

1樓:匿名使用者

#include

#define uchar unsigned charuchar tab=; //0到f

uchar num;

uchar led=;

void delay(uchar a)

main()

c語言微控制器** 數碼管動態顯示

2樓:匿名使用者

這裡的16個元素代表的是從

十六進製制數0~9、a、b、c、d、e、f的段碼,根據什麼來填這些陣列元素?那就要看你設計程式時定義陣列的作用才能確定.table[1]對應的元素為0x06,是十六進製制數,轉換成二進位制數是00000110b,分別對應於數碼管的dp、g、f、e、d、c、b、a 腳,所以在共陰數碼管上點亮b、c兩段,顯示的是數字1,其它同理。

3樓:匿名使用者

你這陣列裡面16組數分別為0~f的共陰數碼管的編碼,你說只需要數碼管顯示0~6,那麼多餘的就沒有用到,或者 在別的函式裡面有用到 你仔細看你的程式......

p0=table[1],意思就是說 往p0裡面送table這組數裡面的第2個數也就是0x06,0x06正好是共陰數碼管顯示1的編碼。所以數碼管就會顯示1,同理 table[2]就是顯示2的編碼,需要注意的是table[0]指定的是table裡面的第乙個數。

4樓:匿名使用者

陣列不一定是數碼管的編碼,也許是其它地方用的,如果顯示6個字,6個陣列也就夠了,看看數碼管的規格書吧,共陽還是共陰,自已編下看看

微控制器四位數碼管顯示學號1308010123,求c語言程式

5樓:匿名使用者

電路做好了嗎

發給我原理圖

我就可以寫了

幫忙看一下,51微控制器的4位數碼管動態顯示

6樓:匿名使用者

#include

void delay(unsigned int i);

unsigned char code disp_tab[16]=;

unsigned char code dispbit[4]=; // 高4位進行段選擇,每次選擇乙個數碼管

unsigned char disbuf[4];

void delayms(unsigned int ms)void led_disp()

}main()

7樓:飛雪流星

16 以前顯示的是 0 和 乙個數,如15 時顯示的是 0 和 f、14 時顯示的是 0 和 e。。。

16 時顯示的是 1 和 0 ,17 時顯示的是 1 和 1

disbuf[0]=(((firstdat&0xf0)>>4)&0x0f);

disbuf[1]=firstdat&0x0f;

disbuf[2]=(((seconddat&0xf0)>>4)&0x0f);

disbuf[3]=seconddat&0x0f;

這裡不用這麼麻煩吧,直接

disbuf[0]=firstdat>>4; 右移時,低四位被移出,高四位移入0,就是你要的結果了

disbuf[1]=firstdat&0x0f;

disbuf[2]=seconddat>>4;

disbuf[3]=seconddat&0x0f;

或者disbuf[0]=firstdat/16; 除以16 得到 16 進製的十位

disbuf[1]=firstdat%16; 對16取餘得到 16進製制的個位

disbuf[2]=seconddat/16;

disbuf[3]=seconddat%16;

就行了吧

我想應該不會出現沒消影的,不知道你說的消影是指什麼現象

8樓:匿名使用者

參考一下這個**例項的8位數碼管的動態顯示,試試

用at89c51微控制器實現四位數碼管顯示資料!!用c語言程式實現!!例如顯

9樓:匿名使用者

#include

#define uchar unsigned charuchar tab=; //0到9

uchar num;

uchar led=;

void t0isr() interrupt 1p0=~tab[led[num]];

num++;

num&=0x03;

}main()

用c語言編一段程式,要求同時讓四個一位數碼管分別顯示1.-.2.6,急求(51微控制器做的,共陽數碼

10樓:匿名使用者

#include

#define uchar unsigned charuchar tab=; //0到9

uchar num,dat,time;

uchar led=;

void t1isr() interrupt **0=~tab[led[num]];

num++;

num&=0x03;

}main()

51微控制器led4位數碼管動態顯示「0123」的程式,急急,,,能幫忙的就快點,謝謝啦

11樓:

51微控制器led8位數碼管動態顯示「76543210」的程式,你修改一下

12樓:匿名使用者

右邊的四根線

,控制位選,即:控制哪個數

碼管亮。左邊的七根線,控制段選,即:控制乙個數碼管的七段。

明白了吧?在while迴圈中:1 選第乙個數碼管,關閉其他數碼管,再選讓第乙個數碼管的那些段亮;2 選第二個數碼管,關閉其他數碼管,再選讓第二個數碼管的哪些段亮;3 ,4步同理,這樣讓while不停迴圈,就可以實現動態顯示了。

微控制器中數碼管動態顯示掃瞄時間問題

我也遇到copy過同樣的問題,仿bai真時顯示刷 proteus 是電腦 的,led的閃爍速度和真實的是不一樣的,一般數碼管延時20ms沒問題的,最好是搭電路看,電腦螢幕重新整理速度太慢。這個問題我也碰到過,proteus裡的時間不是很準確的,在實際電路板上做只要重新整理時間在5ms以內就可以的。微...

51微控制器如何利用七段數碼管採用動態顯示顯示4位數字,如

顯示函式 函式名 display56 變數定義 unsigned char qian,bai,shi,ge 定義顯示緩衝區 unsigned char table 表 共陽數碼管 0 1 2 3 4 5 6 7 8 9 c 延時子函式,短暫延時 void delay56 void display56...

微控制器如何驅動LCD顯示字元,微控制器用LCD1602C語言程式設計,如何讓第一行顯示字串比如welcome,第

微控制器命令lcd說 你給我顯示字元 急不得,看看看時序圖和指令 做研究 怎麼這麼浮躁?微控制器 用lcd1602 c語言程式設計,如何讓第一行顯示字串 比如 wel e 第 參考bai du 51 單片 zhi機dao驅動 版 lcd1602 權 位址 第一行第一列是0x80,第二行第一列是0xc...