導航:首頁 > 編程語言 > keil2位數碼管編程

keil2位數碼管編程

發布時間:2023-01-07 02:18:04

單片機兩位數碼管顯示數字

#include<reg51.h>

#define uchar unsigned char;

uchar distab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; //0到f

uchar number,dat=29;

void t0isr() interrupt 1

case 0:P2=0x02;P0=distab[dat/10];

break;

case 1:P2=0x01;P0=distab[dat%10];

TMOD=0x01;

TH0=(65536-5000)/256;

TL0=(65536-5000)%256;

TR0=1;

ET0=1;

EA=1;

while(1);

}

分類

數碼管也稱LED數碼管,不同行業人士對數碼管的稱呼不一樣,其實都是同樣的產品。按發光二極體單元連接方式可分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發光二極體的陽極接到一起形成公共陽極(COM)的數碼管,共陽數碼管在應用時應將公共極COM接到+5V,當某一欄位發光二極體的陰極為低電平時,相應欄位就點亮,當某一欄位的陰極為高電平時,相應欄位就不亮。

以上內容參考:網路-數碼管

Ⅱ 在KEIL環境下的51編程LED兩位數倒計時

#include<AT89X51.H>
unsigned char flag1=0;
unsigned char counter=0;
unsigned char first=0;
unsigned char second=0;
unsigned char code dptable[]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//段碼表
main()
{
TMOD=0x10;//定時器T1,方式1
TH1=0xfa;//晶振為3.6864MHz,每5ms進一次中斷
TL1=0x00;
TR1=1;
ET1=1;
EA=1;
while(1)
{
P1_0=1;//P1口為位選
P2=dptable[second];//P2口為段選
P1_0=0;
while(flag1==0);//動態掃描,每個數碼管亮5ms
flag1=0;
P1_0=1;
P2=dptable[first];
P1_1=0;
while(flag1==0);
flag1=0;
P1_1=1;
}
}

void interT1() interrupt 3//5ms進一次中斷
{
TH1=0xfa;
TL1=0x00;
flag1=1;
counter++;
if(counter==200)//定時至1s
{
counter=0;
first--;
if(first==255)
{
first=9;
second--;
}
if(second==255)
{
second=7;
first=9;
}
}
}

Ⅲ keil寫程序 單片機二位數碼管顯示倒計時

#include<reg52.h>
#define uchar unsigned char
#define an P0 //共陰數碼管的陽極埠

sbit wei1=P2^4; //共陰數碼管的陽極埠,我的是四位的,下面語句中把1,2關了,只用到了3,4。
sbit wei2=P2^5;
sbit wei3=P2^6;
sbit wei4=P2^7;

uchar code num[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共陰數碼管0~9的十六進制碼

void delay(uchar xms) //軟體延時
{
int i,j;
for(i=xms;i>0;i--)
for(j=125;j>0;j--);
}
void display(int tens,ones) //用來顯示數字的函數,顯示此時的十位,個位。
{
int i,j;
for(i=2;i>0;i--)//通過改變i和j的值,可以改變計時時間。
for(j=50;j>0;j--)
{
wei3=1;//掃描原理。
wei4=0;
an=num[tens];
delay(5);
wei3=0;
wei4=1;
an=num[ones];
delay(5);
}
}
void main()
{
int onesp=0,tensp=0;//定義ones place和tens place。
wei1=0;
wei2=0;
while(1)
{
for(tensp=9;tensp>=0;tensp--)
{
for(onesp=9;onesp>=0;onesp--)
{
display(tensp,onesp);//調用函數顯示此時的數字。
}
}
}
}
這個程序測試可用,從99計數到00。只用了比較簡單知識,不涉及定時器和系統中斷。不懂可以追問。

Ⅳ keil編程開關閉合狀態數碼管靜態顯示

51單片機怎樣用鍵盤控制數碼管顯示的方法。如下參考:1.首先,編寫代碼並點亮數碼管。2.在編寫源代碼之後,確保原始代碼是正確的。3.確認代碼正確後,進入下一步,就是在這一行代碼(箭頭所指)中,刪除這四個單詞。4.然後如圖所示,四個單詞已被刪除,只要修改相應的代碼編號即可。5.表示數字0的代碼在這里進行了更改,如圖所示。6、最後寫代碼,將生成的十六進制文件寫進單片機應答,數碼管顯示的數字變為0。

Ⅳ 用keil軟體,匯編語言編程使兩個數碼管同時顯示不同內容,比如以「37為例,,,謝謝,」

兩個光腳控制選中的數碼管,然後其他管腳輸入數字。把這個過程放在一個循環里,不停的循環。

Ⅵ 用單片機實現2位靜態數碼管(共陽)控制,其中系統還包括4個獨立按鍵(中斷形式),

2位共陽數碼管分別接在P0口和P口。難點是4個按鍵要採用中斷方式,所以,4個按鍵不但接成獨立式按鍵,還要用一個4輸入與門得到一個中斷請信號加到P3.2上,用INT0中斷。右移,左移指定的位,用小數點顯示。模擬圖如下。

Ⅶ 求2位數碼管顯示C程序

首先,你沒有給出數碼管的相應電路,這里就用Display()函數來代替你的顯示程序。按鍵也沒有給出電路,這里以普通IO按鍵來編寫程序。
unsigned
char
disp_data;
//定義一個用於存儲需要顯示數值的全局變數
void
Display(unsigned
char
disp)
//數碼管顯示函數,輸入參數為要顯示的值。
void
Delay_ms(unsigned
char
disp)
//毫秒級延時函數,用於按鍵去抖動。
void
main()
{
disp_data=50;
Display(disp_data);
//初始顯示"50"
while(1);
//循環查詢+-按鍵的狀態
{
if(K+
==
0)
//判斷K+是否被按下(假如按鍵按下時為低電平)
{
Delay_ms(20);
//延時,去抖動
if(k+
==
0)
//再次判斷
{
disp_data++;
//數值+1
if(disp_data>80)
//判斷數據是否超出范圍
{
//已經超出
disp_data=80;
//使數據保持在80;
Display(disp_data);
//顯示數據
}
else
//沒有超出
{Display(disp_data);}
//顯示數據
}
}
if(K-
==
0)
//判斷K-是否被按下(假如按鍵按下時為低電平)
{
Delay_ms(20);
//延時,去抖動
if(k-
==
0)
//再次判斷
{
disp_data--;
//數值-1
if(disp_data<50)
//判斷數據是否超出范圍
{
//已經超出
disp_data=50;
//使數據保持在50;
Display(disp_data);
//顯示數據
}
else
//沒有超出
{Display(disp_data);}
//顯示數據
}
}
}
}
瀏覽器里直接打的代碼,整體思路應該是對的,需要注意的是K+\K-這樣的變數keil中是非法的,實際程序中請自行改正。

Ⅷ keil 用c51如何編寫按鍵通過74hc164控制兩個共陽極數碼管

要用74hc164控制兩個共陽極數碼管,應該用單片機的串口,並用方式0,74HC164的A、B端接P3.0,CLK端接P3.1。四個按鍵接法錯誤,是不能識別按鍵的,應該按下圖這接地,不要用二極體。左上角的四個LED是不會亮,也要用下圖這種LED,模擬時才會亮。4個LED和4個按鍵不能與數碼管的段控端abcdefg共用。模擬圖有這么多錯誤,就是寫程序也沒用。

Ⅸ 在2位數碼管上持續穩定顯示字形"EL"。在單片機上怎麼弄

對於一位的數碼管,如圖示共陽極,那麼在P0埠輸出要顯示字元的七段碼即可;

閱讀全文

與keil2位數碼管編程相關的資料

熱點內容
h3c光纖全工半全工設置命令 瀏覽:135
公司法pdf下載 瀏覽:379
linuxmarkdown 瀏覽:347
華為手機怎麼多選文件夾 瀏覽:679
如何取消命令方塊指令 瀏覽:345
風翼app為什麼進不去了 瀏覽:774
im4java壓縮圖片 瀏覽:358
數據查詢網站源碼 瀏覽:146
伊克塞爾文檔怎麼進行加密 瀏覽:886
app轉賬是什麼 瀏覽:159
php的基本語法 瀏覽:792
對外漢語pdf 瀏覽:516
如何用mamp本地web伺服器 瀏覽:869
如何加密自己js代碼 瀏覽:627
排列組合a與c的演算法 瀏覽:534
如何在文件夾中找到同名內容 瀏覽:786
有什麼app文字轉韓文配音 瀏覽:372
循環宏1命令 瀏覽:35
斐波那契數列矩陣演算法 瀏覽:674
公式保護後加密不了 瀏覽:82