熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
這個(gè)仿真圖貌似就有缺陷吧?用38譯碼器的目的很明顯是用少腳控制多腳,也就是用38的A、B、C的組合控制Y0 - Y7的輸出狀態(tài)(具體看真值表)樓主的仿真圖用3個(gè)腳控制4個(gè)腳,外加一個(gè)EN,那么38用來(lái)何用?還不如直接51三個(gè)腳驅(qū)動(dòng)了。 38譯碼器的用法跟51的道理一樣,用51驅(qū)動(dòng)驅(qū)動(dòng)數(shù)碼管的時(shí)候是段驅(qū)動(dòng)的IO口做個(gè)TABLE,而用38的時(shí)候這個(gè)TABLE是根據(jù)38的編碼端的3個(gè)腳做的。 比如51單片機(jī)驅(qū)動(dòng),先定義如下這個(gè)TABLE unsigned char code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; 然后使用的時(shí)候讓驅(qū)動(dòng)段的IO口Px = P0=Tab[i]; 這里是使用了單片機(jī)的7-8個(gè)IO口 使用38譯碼器的話只用了3個(gè)IO口,所以那個(gè)TABLE要按照3個(gè)IO口的編碼情況寫(xiě)。 正確的仿真圖應(yīng)該是單片機(jī)使用4個(gè)IO口驅(qū)動(dòng)數(shù)碼管的位,再用3個(gè)IO口編碼送給38譯碼器驅(qū)動(dòng)數(shù)碼管的段。 |
建議使用74HC595級(jí)聯(lián)來(lái)實(shí)現(xiàn) |
Powered by 單片機(jī)教程網(wǎng)