一、引言
單片機市場可以用巨無霸來形容,其中51 單片機使用者就更多了,針對51 單片機無需更多的介紹,這里必須強調(diào)一點,只要你精通了51 單片機,以后在實際工作中選用其它單片機也很容易了,這就是初學(xué)者學(xué)習(xí)51 單片機的價值。選擇51 單片機學(xué)習(xí)入門容易,倒不是說51 系列單片機比別的型號簡單,其實在8 位單片機家族中,51 系列單片機算是復(fù)雜的,但51 單片機在中國推廣最徹底,教程也是最豐富,基本不用看英文資料就能學(xué)好,所以特別適合初學(xué)者學(xué)習(xí)用。
下面說說CPLD,從近來跟學(xué)生和愛好者交往中發(fā)現(xiàn),初學(xué)者都很“討厭”它,問我為什么要把單片機和CPLD 放一塊兒,那樣不是增加了學(xué)習(xí)的難度嗎?其實深入學(xué)習(xí)單片機后,你就會發(fā)現(xiàn),單獨一片單片機芯片,實在是不夠用,稍微復(fù)雜的系統(tǒng)都會缺少接口資源,IO 口不夠用。我們學(xué)單片機不能僅僅局限于LED(發(fā)光二極管,數(shù)碼管等)驅(qū)動,輸入還需要鍵盤、ADC,輸出需要LCD、DAC 等,當把這些對象同時放在一個系統(tǒng)當中時,就需要用到很多其它分離的接口IC(芯片),各種邏輯IC。
學(xué)完單片機后大家都會知道這些芯片:如74373,7432,74138……隨著數(shù)字電子技術(shù)的發(fā)展,一種新的器件正在被廣泛應(yīng)用,那就是CPLD(ComplexProgrammable Logic Device) 復(fù)雜可編程邏輯器件,通俗的說就是可以把以上那些分離器件都放進去的一種可以二次開發(fā)的IC.關(guān)于CPLD 的詳細介紹大家可以自己在網(wǎng)上瀏覽,很多很多。
基于此,本刊用這篇文章深入淺出的介紹一種采用51 單片機和CPLD 構(gòu)建復(fù)雜電路系統(tǒng)的設(shè)計思想。
二、單片機系統(tǒng)中幾個典型電路介紹
首先從熟悉的最小系統(tǒng)電路電路說起,如圖1所示,圖中用網(wǎng)絡(luò)標號實現(xiàn)電路連接,這樣繪制的電路圖清晰整潔,U1 是經(jīng)典的51 單片機 IC,復(fù)位電路和晶振電路是傳統(tǒng)電路,這里C5 電容是靠近單片機VCC 引腳的,用來對電源濾波,圖中其它芯片VCC 附近都有相同功能的濾波電容。U2 是經(jīng)典的低八位地址鎖存電路,這里的74373 也可以用74573 代替,U3 是地址譯碼電路,74138 實現(xiàn)連續(xù)8 個地址(1### #### #### #000 ~ 1####### #### #111,# 是無關(guān)位,可以是0 也可以是1,取決于電路其它部分的需要)對象擴展。
圖1 MCU最小系統(tǒng)原理圖
51 單片機給大家推薦STC 的89 或90 系列,其中90 系列已經(jīng)有片內(nèi)ADC 了,需要特別強調(diào)的是, 隨著FLASH 技術(shù)的成熟,片內(nèi)FLASH ROM從8K 到64K 任選,已經(jīng)足夠用了,所以現(xiàn)在很少有單片機系統(tǒng)外擴ROM 了,這樣使得EA/VPP 和PSEN 引腳失去了原先的功能了,STC 的51 單片機已經(jīng)將這兩個引腳發(fā)展成P4 口了。
復(fù)雜的系統(tǒng)必然有很多輸入輸出接口,如圖2所示,U5 是數(shù)據(jù)鎖存器74273,擴展一個8bits 數(shù)據(jù)輸出端口,U6 是三態(tài)數(shù)據(jù)緩沖器74573,擴展一個8bits 數(shù)據(jù)輸入端口,分別用7432 實現(xiàn)讀寫時序接口匹配。
圖2 MCU端口口擴展原理圖
經(jīng)典LCD1602 接口如圖3 所示,這里7408、7402 邏輯門用來實現(xiàn)6800 時序(讀寫信號有獨立接口的是8080 時序,這里只有使能信號E,需要外邏輯電路將讀寫信號相與合并使用)。
圖3 LCD1602接口電路原理圖
以上給出的系統(tǒng)還算不上是復(fù)雜系統(tǒng),總共采用了8 塊IC,一個實現(xiàn)特定功能的系統(tǒng)往往更復(fù)雜,需要采用的IC 會更多。能不能把這些分離的器件用CPLD 來實現(xiàn)呢?答案是肯定的。
評論
查看更多