第7課 數(shù)碼管動態(tài)顯示
圖1 數(shù)碼管同時顯示123456
在講解動態(tài)顯示方法之前,我們先介紹在種數(shù)碼管及單片機(jī)程序開發(fā)過程常用的方法-數(shù)組編碼法。
1、數(shù)組編碼
在跟數(shù)碼管相關(guān)的程序中,可以對位進(jìn)行編碼,也可對段進(jìn)行編碼,這里我們以段編碼進(jìn)行講解。通過第8課的程序我們知道,在位選確定后,要顯示數(shù)字8時,P0=0x80,顯示數(shù)字3時P0=0xb0,也就是0xb0,0x80分別可以表示數(shù)字3和8,按此方法,我們把在數(shù)碼管上顯示0-f,16個數(shù)字全部用16制度表示出來,這16個16進(jìn)制數(shù)就稱為數(shù)碼管可顯示0-f的相應(yīng)的編碼,如圖2所示(注意共陽和共陰極數(shù)碼管相應(yīng)的編碼有所不同,這里以實驗板上共陽極的為例)。
圖2 共陽極數(shù)碼管編碼
在編程中,編碼的表示方法如下:
unsigned char code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e };
這里編碼表示的方法與C語言中數(shù)組定義的方法基本一樣。table是數(shù)組名,后面需加[],中括號中需加上數(shù)組中元素的個數(shù),也可以不寫。等號的右邊用一個大括號將所有元素包含起來,里面的元素之間用“,”隔開,在大括號外用“;”結(jié)束。等號左邊的unsigned char 是數(shù)據(jù)元素的數(shù)據(jù)類型,這里定義為無符號字符型,也就是元素的值范圍只能是0-255之間。Code表示把這個數(shù)組定義為編碼,這樣定義的好處是其元素轉(zhuǎn)化成二進(jìn)文件后可能直接存儲到程序存儲器中,當(dāng)然這里也可以不加code,但是這樣編譯后會將其直接存儲到數(shù)據(jù)存儲器中,要知道單片機(jī)中數(shù)據(jù)存儲器的容量是非常有限的,定義為code后可節(jié)約單片機(jī)數(shù)據(jù)存儲器的空間。
關(guān)鍵詞:
數(shù)碼管動態(tài)顯示單片
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號放大器
評論