1樓:匿名使用者
teble裡的值就是共陰8 段(含小數點)數碼管的段碼。
8 段從上面一橫開始順時針依次為a、b、c、d、e、f、g(中間的橫)和h(小數點),分別接在io口的0~7
例如要顯示0,則段碼為0011 1111 即0x3f 。
其它,你可自行推出。
2樓:琴音華映
unsigned char code table=;
定義一個陣列table,unsigned char 是指該陣列中成員均為無符號字元型,code是指把該陣列存放到**段中。
其中,0x3f的二進位制數是 0011 1111 ,共陰數碼管給高電平就亮,給二進位制數 0011 1111即給0x3f時,共陰數碼管就會亮0,同理,給0x06時數碼管亮1,直到給0x6f則亮9
這樣定義的好處是,對應數碼管,table[0]=0(即陣列的第一個數為0),table[1]=1,以此類推
比如該程式主函式前三句count=0;p0=table[count/10];p2=table[count%10];中
count/10=0;則 p0=table[count/10]=table[0]=0x3f=0011 1111,所以共陰數碼管亮0;
count%10=0;則p2=table[count%10]=table[0]=0x3f=0011 1111,所以共陰數碼管亮0。
說了那麼多不知道解釋清楚了沒有~~~
3樓:
這是顯示數字0-9的數碼管編碼
4樓:匿名使用者
顯示數字0-9的數碼管編碼 ,數碼管事共陰的,所以是高電平亮,0x06就是00000110,就是數碼管的b,c,是高電平。就顯示是1.不明白的話我就無解了。
5樓:
table中的值是對0——9這十個數字的編碼,首先你得知道數碼管工作的原理:8段共陰極數碼管是將8個led(a,b,c,d,e,f,g,dp)的陰極接到一起——接地,通過陽極接入電平的高低來控制led的亮與滅,例如:要顯示‘0’這個數,對應8段數碼管a,b,c,d,e,f,g,dp編碼為:
1,1,1,1,1,1,0,0,即p0=00111111,即3fh。同理,其他九個數字編碼方式也是這樣!
關於微控制器at89c51程式,利用兩個數碼管,利用按鍵控制實現“數字減一”顯示99到00。
6樓:匿名使用者
#include "reg52.h"
#include
#define uchar unsigned charuchar code led_tab=;
unsigned int x=9999;
void delay(unsigned int z)void main()
}void aa() interrupt 0void bb() interrupt 2
如何利用51微控制器實現計數器功能?並顯示在數碼管上,00~99之間的計數。求c語言**!初學勿複雜
7樓:我不清楚唉
一年多沒接觸了。。。忘光了。。。但思路差不多:設定兩個中斷,一箇中斷後加一,一箇中斷後減一。。再查表顯示
8樓:匿名使用者
前幾天剛剛做過,有這個功能,不過是pic
9樓:匿名使用者
用那幾個埠?用譯碼器麼?數碼管用共陽的還是共印的?
89C89S51前景微控制器問題,89C51 89S51前景 微控制器問題
暈倒.畢業了.都沒有分清楚 89c51 和89s51的區別啊.就這狀態找份這樣的工作難啊待遇.看個人人能,看公司狀態,一般情況下都不會太差.學習從51開始.89c51 89s51都屬於51系列,其實就是一回事 學習的話,選 89c51,89s51 都有點過時了.市場上的產品很少用 51,一般用它們的...
STC89C51微控制器復位,51微控制器復位後各暫存器狀態是怎樣的
該微控制器正常工作時復位端電壓應保持低電平狀態,復位時給復位端加上一個短暫的高電平即可使微控制器程式復位。該復位電路的工作原理是,電源通過電解電容再通過電阻串聯到地,電容兩段並聯一按鍵開關,正常工作時電容隔斷電源電壓,微控制器復位端相當於通過電阻接地。因電路中無電流,所以復位端電壓為0伏。當執行過程...
89C51微控制器輸出電流是多少,AT89S51微控制器I O口輸出電流及灌入電流各是多少
佯北勿從 51微控制器的io口每個引腳的電流驅動能力比較弱 拉電流 即微控制器引腳置高電平時對外輸出的電流,不超過1毫安。灌電流 即微控制器引腳置低電平時對外吸收的電流,不超過10毫安。這些都是教科書上那個微控制器的驅動電流,現在增強型51推輓輸出能達到20ma,具體還是看資料手冊。89c51是一種...