朱向慶 鄭景揚(yáng) 陳文龍 邱日錞 陸浩培
摘 要: 提出一種多功能單片機(jī)與CPLD實驗板的設(shè)計方案。該實驗板以單片機(jī)最小系統(tǒng)、CPLD最小系統(tǒng)為控制中心,其集成電源模塊、輸入模塊、輸出模塊、串行總線模塊、障礙物檢測模塊及模擬量模塊,能夠完成通用8051內(nèi)核單片機(jī)的仿真與下載實驗,完成CPLD實驗。實驗結(jié)果表明,該實驗板具有集成度高、適用性廣、擴(kuò)展性強(qiáng)、簡單易用等優(yōu)點(diǎn),可在單片機(jī)、EDA技術(shù)、數(shù)字電路與數(shù)字邏輯、通信原理課程的實踐教學(xué)中推廣使用。
關(guān)鍵詞: 復(fù)雜可編程邏輯器件; 實驗板; 仿真實驗; 下載實驗
中圖分類號: TN710?34; TP368 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2016)06?0123?04
Design of multifunctional single chip microcomputer and CPLD experimental board
ZHU Xiangqing, ZHENG Jingyang, CHEN Wenlong, QIU Richun, LU Haopei
(School of Electronic & Information Engineering, Jiaying University, Meizhou 514015, China)
Abstract: A design scheme for multifunctional single chip microcomputer and CPLD experimental board is proposed. The experimental board takes the single chip microcomputer minimum system and the CPLD minimum system as the control center. The power module, input module, output module, serial bus module, obstacle detection module and analog?quantity module are integrated to accomplish the simulation and download experiments of 8051 kernel single chip microcomputer, and CPLD experiment. The experimental results show that this experimental board has the advantages of high integration, extensive applicability, strong expandability, and simple use, and can be widely used in the practical teaching of the courses such as single chip microcomputer, EDA technology, digital circuit and digital logic, communication principle.
Keywords: CPLD; experimental board; simulation experiment; download experiment
0 引 言
目前,我國高校的電子信息類學(xué)科已經(jīng)普遍開設(shè)數(shù)字電路與數(shù)字邏輯、單片機(jī)、EDA(Electronic Design Automation,電子設(shè)計自動化)技術(shù)和通信原理等專業(yè)基礎(chǔ)課程[1?2]。實踐教學(xué)是這些課程教學(xué)的重要環(huán)節(jié),有著舉足輕重的作用。在學(xué)習(xí)過程中,不少學(xué)生都會從網(wǎng)店購買各種小型實驗板,好處是能夠直接使用,缺陷是學(xué)生對實驗板系統(tǒng)的硬件了解不夠深入[3];購買的實驗板通常只能滿足某一門課程的教學(xué)需求,利用率較低,且價格較貴,各類實驗板的共性部分不能重復(fù)使用。從降低學(xué)生的學(xué)習(xí)成本,提高學(xué)生動手能力,培養(yǎng)學(xué)生掌握微處理器架構(gòu)設(shè)計方法,滿足企業(yè)對求職者的技能要求這4個角度出發(fā),自制一款將單片機(jī)與復(fù)雜可編程邏輯器件(Complex Programmable Logic Device,CPLD)合二為一,能夠滿足多門課程教學(xué)需求,且可以進(jìn)行硬件仿真、燒錄程序的實驗教學(xué)儀器。
1 總體設(shè)計思路與方案為了使設(shè)計的實驗板具有較強(qiáng)的擴(kuò)展性、適用性、穩(wěn)定性及性價比,主要從以下幾個角度出發(fā),構(gòu)思功能模塊及硬件電路:
(1) 實驗板可根據(jù)需要,安裝不同型號的單片機(jī),不需要額外的硬件設(shè)備支持,即可實現(xiàn)硬件仿真與下載功能。其他已燒錄程序的DIP40封裝通用51系列單片機(jī),可直接安裝在實驗板上,利用實驗板上的模塊進(jìn)行實驗。
(2) 實驗板集成輸入模塊、輸出模塊、串行總線模塊、模擬量模塊、自動控制模塊和障礙物檢測模塊等,使得實驗板擁有強(qiáng)大的外圍支持,這些模塊可以用單片機(jī)或者CPLD單獨(dú)控制,能夠提高外圍器件的利用率,節(jié)約設(shè)備購置成本[4]。
(3) 單片機(jī)與CPLD的所有I/O接都通過排針引出,方便使用者以此實驗板為母板,連接控制其他設(shè)備,進(jìn)行二次開發(fā)實驗。
(4) 所有價格較貴的芯片、顯示器件、模塊等都不是直接焊接在實驗板上,而是安裝在實驗板上焊接的緊縮座、管座、圓孔母座、排座等上面,方便拆卸,以便在其他系統(tǒng)中重復(fù)使用。單片機(jī)及CPLD的時鐘電路所使用的晶振也安裝在圓孔母座上,方便使用者根據(jù)實驗需要調(diào)換不同頻率的晶振。
(5) 實驗板的所有功能模塊均連接至單片機(jī)I/O,做CPLD實驗時,將單片機(jī)卸下,用杜邦線連接CPLD的I/O至單片機(jī)I/O,即可用CPLD控制各功能模塊。對于共用單片機(jī)I/O的各功能模塊,使用者均可通過短路端子控制其電源或者數(shù)據(jù)線等,避免實驗項目的沖突。
2 系統(tǒng)硬件結(jié)構(gòu)
實驗板電路連接方框結(jié)構(gòu)示意圖如圖1所示,主要包括單片機(jī)最小系統(tǒng)、CPLD最小系統(tǒng)、功能模塊及電源模塊四大部分。功能模塊主要有輸入模塊、輸出模塊、串行總線模塊、障礙物檢測模塊和模擬量模塊5種。單片機(jī)最小系統(tǒng)由單片機(jī)、單片機(jī)復(fù)位電路、單片機(jī)時鐘電路及單片機(jī)I/O擴(kuò)展接口構(gòu)成。單片機(jī)通過電平轉(zhuǎn)換電路連接9針母座的單片機(jī)編程/調(diào)試接,計算機(jī)通過串連接單片機(jī)編程/調(diào)試接,實現(xiàn)硬件仿真與程序燒錄功能,單片機(jī)可以是宏晶科技公司的STC12C5A60S2和STC89C52RC、飛利浦公司的P89C52RD2、SST公司的SST89E516RD等通用DIP40封裝51系列單片機(jī)。單片機(jī)I/O擴(kuò)展接由P0~P3引出,連接至各功能模塊。
CPLD最小系統(tǒng)包括CPLD芯片EPM7128SLC84、CPLD時鐘電路、CPLD復(fù)位電路及CPLD I/O口擴(kuò)展接口,計算機(jī)可通過JTAG接口電路將程序加載至CPLD
[5]。輸入模塊包括8位撥碼開關(guān)、矩陣鍵盤及一體化紅外接收頭,在鍵盤工作方式控制端子的控制下,矩陣鍵盤可工作于4×4行列式鍵盤及1×4獨(dú)立按鍵兩種工作方式,以提高硬件的利用率。輸出模塊包括中文字符液晶/觸摸彩屏接、12864 OLED(Organic Light Emitting Diode,有機(jī)發(fā)光二極管)液晶接口、1602字符液晶接、8位發(fā)光二極管電路、8×8單色LED點(diǎn)陣電路、四位一體共陽數(shù)碼管電路、蜂鳴器電路、電機(jī)接及繼電器電路。中文字符液晶/觸摸彩屏接口可安裝12864中文字符液晶或
2.4寸TFT觸摸彩屏, LED驅(qū)動電路由8個PNP型三極管S9012構(gòu)成,用于驅(qū)動點(diǎn)陣和數(shù)碼管;達(dá)林頓管驅(qū)動電路由復(fù)合管驅(qū)動器ULN2003構(gòu)成,用于驅(qū)動蜂鳴器、電機(jī)和繼電器,電機(jī)接口可安裝型號為28BYJ?48的5線4相減速步進(jìn)電機(jī)。
電路連接方框結(jié)構(gòu)示意圖串行總線模塊包括數(shù)字型溫濕度傳感器DHT11電路、數(shù)字型溫度傳感器DS18B20電路、E2PROM存儲器AT24C02電路、實時時鐘DS1302電路及短距離無線通信模塊nRF24L01接,用于完成1?Wire單總線、I2C總線、三線制SPI總線、四線制SPI總線通信。障礙物檢測模塊包括超聲波模塊接口、紅外發(fā)射接收對管電路。超聲波模塊接口可安裝型號為KX?U0904的超聲波模塊;紅外發(fā)射接收對管的型號為ST178,除用于檢測障礙物外,還可進(jìn)行測距測速實驗。模擬量模塊包括模擬電壓產(chǎn)生電路、數(shù)/模轉(zhuǎn)換電路。模擬電壓產(chǎn)生電路由精密多圈電位器構(gòu)成,提供0~5 V的輸出電壓,給單片機(jī)片內(nèi)自帶的A/D轉(zhuǎn)換模塊,進(jìn)行A/D轉(zhuǎn)換實驗;數(shù)/模轉(zhuǎn)換電路主要由RC無源低通濾波電路構(gòu)成,將單片機(jī)產(chǎn)生的PWM波形進(jìn)行濾波,產(chǎn)生0~5 V的輸出電壓。電源模塊主要由5 V直流電源接口及CPLD電源電路構(gòu)成。CPLD電源電路主要由ASM1117?3.3 V穩(wěn)壓器構(gòu)成,將5 V直流電壓轉(zhuǎn)換成
3.3 V輸出,使得CPLD能獨(dú)立在兩種不同電壓下工作,方便使用者以此實驗板為母板,控制不同工作電壓的外圍設(shè)備,進(jìn)行擴(kuò)展實驗。3 實驗板布局設(shè)計實驗板內(nèi)單片機(jī)最小系統(tǒng)、CPLD最小系統(tǒng)及各功能模塊都是相互獨(dú)立的,具有很強(qiáng)的開放性,為使用者提供豐富的自主創(chuàng)新性設(shè)計空間,使其可根據(jù)需要自行搭建實驗電路。如圖2所示為實驗板結(jié)構(gòu)示意圖,從操作的方便性,系統(tǒng)的穩(wěn)定性等角度出發(fā),設(shè)計實驗板布局。單片機(jī)最小系統(tǒng)置于板子中部,使其到各功能模塊的平均距離最短。CPLD最小系統(tǒng)位于板子左下部,使其相對獨(dú)立,但控制各功能模塊時,又可方便地通過杜邦線連接至單片機(jī)的I/O口擴(kuò)展接口。
5 V電源及下載/通信接口位于板子左上部,方便從計算機(jī)USB口取電,與計算機(jī)通信。輸出模塊主要位于板子的上部,輸入模塊位于板子的下部,其余模塊位于單片機(jī)最小系統(tǒng)的左部及右部,使得它們工作時相互干擾較小。
4 實驗板工作方式實驗板可以完成如表1所示的30個實驗項目,其中前26個用單片機(jī)完成,帶☆號的3個限用STC12C5A60S2單片機(jī)。30個實驗項目除帶☆號的3個外,其余27個均可用CPLD單獨(dú)完成。帶號的2個實驗項目適用于數(shù)字電路與數(shù)字邏輯課程,可用CPLD設(shè)計常見的組合邏輯及時序邏輯電路,如編碼器、譯碼器、觸發(fā)器、計數(shù)器等。帶號的5個實驗項目適用于通信原理課程,可完成碼型變換、信道編譯碼及一些簡單的調(diào)制解調(diào)實驗。表1 實驗板可以完成的實驗項目
4.1 單片機(jī)實驗將計算機(jī)串口與實驗板的單片機(jī)編程/調(diào)試接口連接,不需專用的燒錄器或者仿真器,可進(jìn)行單片機(jī)硬件仿真及在系統(tǒng)編程(In System Programming,ISP)[6]。在計算機(jī)端用Keil μVision或Wave編寫/編譯單片機(jī)程序時,可以使用匯編(ASM)語音、C51語言或二者混合編程。為了提高系統(tǒng)運(yùn)行效率,還可在單片機(jī)中運(yùn)行Small RTOS51或者μC/OS?Ⅱ操作系統(tǒng)[3,7]。
4.1.1 下載實驗計算機(jī)端運(yùn)行宏晶公司的STC?ISP軟件、飛利浦公司的FLASH Magic軟件、SST公司的Soft ICE軟件,可以直接通過串口給STC89C52RC,P89C52RD2,SST89E5xRD等單片機(jī)下載程序,簡單方便快捷。
4.1.2 仿真實驗計算機(jī)端運(yùn)行Keil μVision軟件,可以通過串口將單片機(jī)固件加載至SST公司的SST89E5xRD系列單片機(jī),進(jìn)行硬件仿真實驗。使用SST89E5xRD單片機(jī)進(jìn)行硬件仿真,可以單步跟蹤、全速運(yùn)行、設(shè)置斷點(diǎn)、運(yùn)行到光標(biāo)處、夭折(暫停),隨時可查看寄存器、變量、I/O、內(nèi)存內(nèi)容;但不能仿真串口及定時器/計數(shù)器2(T2)
[8]。如果要想實現(xiàn)串口及T2的仿真功能,可采用宏晶公司最新發(fā)布的高性能“芯片仿真器”—— IAP15W4K58S4單片機(jī)[9],除了仿真功能之外,其本身的硬件性能與資源也非常優(yōu)越和豐富。使用IAP15W4K58S4單片機(jī)時,需要制作一個LQFP44轉(zhuǎn)DIP40的轉(zhuǎn)接板,將IAP15W4K58S4單片機(jī)從LQFP44封裝轉(zhuǎn)換成通用的DIP40封裝,即可將其安裝在實驗板的單片機(jī)緊縮座上[10]。4.1.3 全速運(yùn)行實驗對于不能通過串口直接下載程序的單片機(jī),只要是5 V供電、DIP40封裝的通用型號單片機(jī),如AT89S51單片機(jī),通過其他燒錄軟件下載程序后,安裝在本實驗板上后,同樣可以利用實驗板上的功能模塊完成實驗。
4.2 CPLD實驗完成CPLD實驗時,借助集成開發(fā)軟件平臺Quartus Ⅱ或Max+Plus Ⅱ,用原理圖、波形圖、硬件描述語言(VHDL或Verilog)等方法,生成相應(yīng)的目標(biāo)文件,通過下載電纜將代碼傳送到CPLD芯片EPM7128SLC84中,實現(xiàn)設(shè)計的數(shù)字系統(tǒng)。用USB_Blaster下載器連接計算機(jī)的USB口與實驗板的JTAG接口電路,計算機(jī)運(yùn)行Quartus Ⅱ軟件,可以對CPLD在系統(tǒng)編程(ISP)。用并口下載器連接計算機(jī)的并口與實驗板的JTAG接口電路,計算機(jī)運(yùn)行Max+Plus Ⅱ軟件,同樣可以對CPLD在系統(tǒng)編程(ISP)。
5 實踐方式與使用效果
在數(shù)字電路與數(shù)字邏輯、單片機(jī)、EDA技術(shù)、通信原理等課程的實驗、課程設(shè)計等實踐教學(xué)環(huán)節(jié),以本實驗板為平臺,開展“虛實結(jié)合,軟硬兼施”的項目教學(xué)方法[11?12]。先教會學(xué)生用Multisim,Proteus,Keil μVision,Quartus Ⅱ或Max+Plus Ⅱ等軟件進(jìn)行仿真實驗,熟練后再結(jié)合實驗板做硬件實驗[13?14]。圖3是焊接好的實驗板圖,整個實驗板及下載器件等的購置費(fèi)用約100元,對愿意參與自制實驗板的學(xué)生,采取“學(xué)校資助,學(xué)生自籌,貴重器件共享”的方式。首先由學(xué)校出資找印刷電路板廠家批量生產(chǎn)PCB板,接著學(xué)生自籌經(jīng)費(fèi)到網(wǎng)店購買元器件,然后由老師組織學(xué)生焊接實驗板,最后進(jìn)行軟硬件聯(lián)合調(diào)測。最后對完成整個過程的學(xué)生,學(xué)校再補(bǔ)貼一部分低值易耗品購置費(fèi)。PCB板是統(tǒng)一制作的,質(zhì)量較好,學(xué)生焊接實驗板的成功率較高。學(xué)生參與焊接、調(diào)測軟硬件,相對于購置現(xiàn)成的實驗板,對硬件原理及軟件設(shè)計掌握理解更深刻。學(xué)生的積極性很高,近幾年,每屆約有150個學(xué)生參與制作實驗板,約占總?cè)藬?shù)的70%。通過自制實驗板,學(xué)生對數(shù)字電路與數(shù)字邏輯、單片機(jī)、EDA技術(shù)、通信原理等課程的掌握程度獲得提高,課程設(shè)計、畢業(yè)設(shè)計的水平也同步提升。實驗板可作為學(xué)生備戰(zhàn)各種專業(yè)學(xué)術(shù)競賽的賽前訓(xùn)練裝備,學(xué)生利用單片機(jī)、CPLD設(shè)計制作各種電子系統(tǒng),參加國家級、省級大學(xué)生電子設(shè)計競賽和“挑戰(zhàn)杯”大學(xué)生課外學(xué)術(shù)科技作品競賽,2011—2014年共獲得國家級和省級獎勵38項。
6 結(jié) 語
該實驗板具有性價比高、功能強(qiáng)大、片內(nèi)資源豐富、I/O接口數(shù)量多的單片機(jī)與CPLD,可用于初學(xué)者同時學(xué)習(xí)兩種不同類型的處理器,對數(shù)字電路與數(shù)字邏輯、單片機(jī)、EDA技術(shù)和通信原理等多門課程的實踐教學(xué)有促進(jìn)作用。實踐證明,教師將自己的教學(xué)理念、工程經(jīng)驗和教學(xué)獨(dú)創(chuàng)性等融入自制的實驗板中,可以彌補(bǔ)通用實驗設(shè)備靈活性和適應(yīng)性不足的缺陷,培養(yǎng)學(xué)生的創(chuàng)造性思維能力及實踐動手能力,提高其學(xué)習(xí)的積極性[15],同時有效節(jié)約學(xué)生的學(xué)習(xí)成本,值得在工程應(yīng)用類課程中推廣。
參考文獻(xiàn)
[1] SHI Yanhui, HE Zhaofeng, WANG Jing. Exploration for practical teaching reform of single?chip microcomputer aiming at training of comprehensive ability [C]// Proceedings of 2013 2nd International Conference on Education Reform and Management Innovation. Jeju Island: [s.n.], 2013: 22?26.
[2] 李慶,江漢紅,亓科.基于S51單片機(jī)與CPLD的綜合實驗系統(tǒng)研制[J].電氣電子教學(xué)學(xué)報,2009,31
(3):75?77.[3] 朱向慶,胡均萬,陳宏華,等.多功能單片機(jī)實驗系統(tǒng)的研制[J].實驗室研究與探索,2012,31(4):41?44.
[4] 李英珠.基于CPLD或FPGA的單片機(jī)通用型開發(fā)實驗板:中國,ZL201120554743.5[P].2012?08?08.
[5] 劉顯忠.基于CPLD的實驗板研制開發(fā)與教學(xué)應(yīng)用[D].哈爾濱:黑龍江大學(xué),2013.
[6] 韓宇光.ISP系統(tǒng)創(chuàng)新實驗平臺研制[J].實驗技術(shù)與管理,2014,31(10):120?122.
[7] 朱向慶,黎東濤,蘇超益,等.適合于項目教學(xué)法的三合一單片機(jī)實驗箱設(shè)計[J].實驗技術(shù)與管理,2013,30(7):55?59.
[8] 林益平.基于SST89E54RD單片機(jī)的MONITOR?51仿真器設(shè)計[J].肇慶學(xué)院學(xué)報,2008,29(2):29?32.
[9] 丁向榮.基于IAP在線仿真技術(shù)提升單片機(jī)實驗技術(shù)水平[J].實驗技術(shù)與管理,2014,31(3):82?83.
[10] 丁向榮.單片微機(jī)原理與接口技術(shù):基于STC15系列單片機(jī)[M].北京:電子工業(yè)出版社,2012.
[11] 歐陽明星.“虛實結(jié)合”策略下多功能單片機(jī)實驗裝置的研制[J].實驗科學(xué)與技術(shù),2014,12(3):195?199.
[12] 宗亞妹,李建啟.系列化項目教學(xué)的研究與實踐[J].中國大學(xué)教學(xué),2013,35(11):44?46.
[13] 王超,楊蓮紅.Proteus仿真軟件在單片機(jī)實踐教學(xué)中的應(yīng)用[J].現(xiàn)代電子技術(shù),2014,37(14):84?87.
[14] 黃平,王偉,周廣濤.基于Quartus Ⅱ的FPGA/CPLD數(shù)字系統(tǒng)設(shè)計與應(yīng)用[M].北京:電子工業(yè)出版社,2014.
[15] 趙大中,吳曉東.自制教學(xué)儀器在高校教育教學(xué)中的應(yīng)用[J].中國現(xiàn)代教育裝備,2006,15(9):32?34.