學(xué)習(xí)C51單片機(jī)——矩陣按鍵控制數(shù)碼管顯示數(shù)字(學(xué)習(xí)筆記Keil5)
1、矩陣按鍵原理
單片機(jī)檢測(cè)矩陣按鍵是否被按下的依據(jù)是檢測(cè)與該按鍵對(duì)應(yīng)的 I/O 口是否為低電平文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-854964.html
2、矩陣按鍵S1按下在第二個(gè)數(shù)碼管顯示數(shù)字1
#include <REGX52.H>
void main()//控制數(shù)碼管第二位顯示數(shù)字1
{
P0=0x00;//數(shù)碼管不亮
while(1)
{
P2_4=1;P2_3=1;P2_2=0;//位選
P1_3=0;
if(P1_7==0)//按鍵S1按下
{
P0=0x06;//段選,顯示數(shù)字1
}
}
}
3、控制S1-S10按鍵按下顯示數(shù)字0~9
#include <REGX52.H>
unsigned char shuzi[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
void main()//控制數(shù)碼管第二位顯示數(shù)字1
{
P0=0x00;//數(shù)碼管不亮
while(1)
{
P2_4=1;P2_3=1;P2_2=0;//位選
P1=0xFF;
P1_3=0;
if(P1_7==0){P0=shuzi[0];}//按下S1按鍵數(shù)碼管第2位顯示數(shù)字0
if(P1_6==0){P0=shuzi[4];}//按下S5按鍵數(shù)碼管第2位顯示數(shù)字4
if(P1_5==0){P0=shuzi[8];}//按下S9按鍵數(shù)碼管第2位顯示數(shù)字8
P1=0xFF;
P1_2=0;
if(P1_7==0){P0=shuzi[1];}//按下S2按鍵數(shù)碼管第2位顯示數(shù)字1
if(P1_6==0){P0=shuzi[5];}//按下S6按鍵數(shù)碼管第2位顯示數(shù)字5
if(P1_5==0){P0=shuzi[9];}//按下S10按鍵數(shù)碼管第2位顯示數(shù)字9
P1=0xFF;
P1_1=0;
if(P1_7==0){P0=shuzi[2];}//按下S3按鍵數(shù)碼管第2位顯示數(shù)字2
if(P1_6==0){P0=shuzi[6];}//按下S7按鍵數(shù)碼管第2位顯示數(shù)字6
P1=0xFF;
P1_0=0;
if(P1_7==0){P0=shuzi[3];}//按下S4按鍵數(shù)碼管第2位顯示數(shù)字3
if(P1_6==0){P0=shuzi[7];}//按下S8按鍵數(shù)碼管第2位顯示數(shù)字7
}
}
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-854964.html
到了這里,關(guān)于學(xué)習(xí)C51單片機(jī)——矩陣按鍵控制數(shù)碼管顯示數(shù)字(學(xué)習(xí)筆記Keil5)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!