目錄
一、前言
二、芯片使用
1、74hc245
2、74ls138譯碼器
三、硬件連接
四、軟件代碼
五、效果展示
六、代碼鏈接
一、前言
數(shù)碼管進(jìn)行顯示成果后,可根據(jù)自己的想法進(jìn)行改進(jìn)。本設(shè)計(jì)采用八位數(shù)碼管進(jìn)行循環(huán)顯示0~f,其中涉及到段碼及位碼的調(diào)用,可更深一步的理解數(shù)碼管的使用。
二、芯片使用
1、74hc245
本設(shè)計(jì)中數(shù)碼管的段選使用74hc245進(jìn)行驅(qū)動(dòng)??梢詾閿?shù)碼管提供足夠且穩(wěn)定的電壓,數(shù)碼管與74hc245芯片之間需加電阻進(jìn)行分壓以保護(hù)數(shù)碼管不會(huì)因?yàn)殡妷哼^(guò)大而燒毀。
芯片引腳功能:
第1腳DIR,為輸入輸出端口轉(zhuǎn)換用, DIR=“1”高電平時(shí)信號(hào)由“A”端輸入“B”端輸出, DIR=“0”低電平時(shí)信號(hào)由“B”端輸入“A”端輸出。
第2~9腳“A”信號(hào)輸入輸出端,A1=B1﹑﹑﹑﹑﹑﹑A8=B8,A1與B1是一組,如果DIR=“1”O(jiān)E=“0”則A1輸入B1輸出,其它類(lèi)同。如果DIR=“0”O(jiān)E=“0”則B1輸入A1輸出,其它類(lèi)同。 第11~18腳“B”信號(hào)輸入輸出端,功能與“A”端一樣,不在描述。
第19腳G,使能端,若該腳為“1”A/B端的信號(hào)將不導(dǎo)通,只有為“0”時(shí)A/B端才被啟用,該腳也就是起到開(kāi)關(guān)的作用
第10腳GND,電源地。
第20腳VCC,電源正極。
序號(hào) | 名稱(chēng) | 功能 |
---|---|---|
1 | DIR | 輸入輸出轉(zhuǎn)換端口,高電平A到B,低電平B到A。 |
2~9 | A0~A7 | 輸入輸出端口 |
10 | GND | 電源負(fù)極 |
11~18 | B7~B0 | 輸入輸出端口 |
19 | OE | 使能端,高電平信號(hào)不導(dǎo)通,低電平導(dǎo)通 |
20 | VCC | 電源正極 |
2、74ls138譯碼器
本設(shè)計(jì)中數(shù)碼管的位選使用138譯碼器進(jìn)行驅(qū)動(dòng),使用的數(shù)碼管為共陰極數(shù)碼管。
芯片引腳功能:
A0~A2對(duì)應(yīng)Y0——Y7;A0,A1,A2以二進(jìn)制形式輸入,然后轉(zhuǎn)換成[十進(jìn)制,對(duì)應(yīng)相應(yīng)Y的序號(hào)輸出低電平,其他均為高電平;
序號(hào) | 名稱(chēng) | 功能 |
---|---|---|
1~3 | A0、A1、A2 | 地址輸入端 |
4、5 | E3、E2 | 選通端(低電平有效) |
6 | E1 | 選通端(高電平有效) |
8 | GND | 電源負(fù)極 |
7、9~15 | Y7~Y0 | 輸出端 |
16 | VCC | 電源正極 |
三、硬件連接
實(shí)物圖
原理圖
最小單片機(jī)系統(tǒng)
位碼控制電路
四、軟件代碼
main主函數(shù)
主函數(shù)較為簡(jiǎn)單,對(duì)數(shù)碼管顯示函數(shù)的調(diào)用,以及定時(shí)器函數(shù)的初始化。
void main()
{
Timer0Init(); //定時(shí)器0初始化
while(1)
{
DigDisplay(); //數(shù)碼管顯示函數(shù)
}
}
void Timer0() interrupt 1
定時(shí)器函數(shù),用于調(diào)整循環(huán)的快慢以及顯示數(shù)字的變化
TH0=(65536-6000)/256; //給定時(shí)器賦初值,定時(shí)10ms
TL0=(65536-6000)%256;
a--;
if(a==0)
{
j++;
a=100;
if(j==16)
{
j=0;
}
}
大致講解:在進(jìn)行位選后,相對(duì)應(yīng)的段碼就會(huì)選出來(lái)。程序中i用于位選。對(duì)應(yīng)的段碼是m。m=j+i是由于0~f有16位
數(shù)碼管段碼、位碼顯示函數(shù)。
void DigDisplay()
{
u8 i;
for(i=0;i<8;i++)
{
switch(i) //位選,選擇點(diǎn)亮的數(shù)碼管,
{
case(0):
LSA=0;LSB=0;LSC=0; break;//顯示第0位
case(1):
LSA=1;LSB=0;LSC=0; break;//顯示第1位
case(2):
LSA=0;LSB=1;LSC=0; break;//顯示第2位
case(3):
LSA=1;LSB=1;LSC=0; break;//顯示第3位
case(4):
LSA=0;LSB=0;LSC=1; break;//顯示第4位
case(5):
LSA=1;LSB=0;LSC=1; break;//顯示第5位
case(6):
LSA=0;LSB=1;LSC=1; break;//顯示第6位
case(7):
LSA=1;LSB=1;LSC=1; break;//顯示第7位
}
m=j+i;
if(m>=16)
m=m-16;
P0=smgduan[m];//發(fā)送段碼
delay(100); //間隔一段時(shí)間掃描
P0=0x00;//消隱
}
}
五、代碼鏈接
關(guān)注公眾號(hào)“小小創(chuàng)客者”回復(fù)“數(shù)碼管循環(huán)顯示數(shù)字”獲得代碼及仿真,如有錯(cuò)誤歡迎指正。
審核編輯 黃昊宇
-
單片機(jī)
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635407 -
數(shù)碼管
+關(guān)注
關(guān)注
32文章
1882瀏覽量
91134 -
數(shù)碼管驅(qū)動(dòng)
+關(guān)注
關(guān)注
1文章
17瀏覽量
4591
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論