王 超, 宋莉莉
(昌吉學(xué)院 物理系, 新疆 昌吉 831100)
在單片機(jī)應(yīng)用系統(tǒng)開發(fā)和實(shí)踐教學(xué)中,經(jīng)常會(huì)遇到一些隱含性錯(cuò)誤,花費(fèi)很多時(shí)間仍然很困難發(fā)現(xiàn)。借助proteus仿真軟件,可以觀察到電路中各點(diǎn)波形的時(shí)序變化情況,并且能以圖表的形式保留在電路中,能迅速準(zhǔn)確地找到錯(cuò)誤原因。另外,利用仿真軟件在沒有硬件的環(huán)境下建立虛擬仿真平臺(tái),利用其強(qiáng)大的調(diào)試功能可以加快開發(fā)進(jìn)程,更容易實(shí)現(xiàn)實(shí)踐教學(xué)的目標(biāo),為教學(xué)、實(shí)驗(yàn)提供一個(gè)方便靈活的環(huán)境,豐富實(shí)驗(yàn)內(nèi)容,激發(fā)了學(xué)生的學(xué)習(xí)興趣,而且仿真成功的電路基本上可在產(chǎn)品開發(fā)中使用[1-4]。
Proteus ISIS是英國Labcenter 公司開發(fā)的電路分析與實(shí)物仿真軟件,可以仿真、分析各種模擬器件和集成電路,能夠?qū)崿F(xiàn)單片機(jī)仿真和SPICE電路仿真相結(jié)合,是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),目前最新版本是Proteus8.0[5-8]。
TI公司的12位串行A/D轉(zhuǎn)換器TLC2543具有11路模擬輸入通道,能夠?qū)崿F(xiàn)可編程的MSB或LSB前導(dǎo)和可編程的輸出數(shù)據(jù)長度的功能,TLC2543每次轉(zhuǎn)換都必須先寫入命令字,以便確定下一次轉(zhuǎn)換用哪個(gè)通道,下次轉(zhuǎn)換結(jié)果用多少位輸出,轉(zhuǎn)換結(jié)果輸出是低位在前還是高位在前,命令字格式如下[9-10]:
D7D6D5D4D3D2D1D0
高4位(D7~D4)設(shè)置可以實(shí)現(xiàn)從11個(gè)模擬輸入通道中選擇的位數(shù),或從3個(gè)內(nèi)部自測電壓中選擇一個(gè)以便對(duì)轉(zhuǎn)換器進(jìn)行校準(zhǔn)等;D3﹑D2選擇A/D轉(zhuǎn)換結(jié)果的數(shù)據(jù)輸出位數(shù);D1位用于選擇輸出數(shù)據(jù)的傳送方式,即下一個(gè)I/O周期,A/D轉(zhuǎn)換結(jié)果的數(shù)據(jù)是以低位在前或高位在前的方式串行輸出;D0設(shè)置A/D轉(zhuǎn)換結(jié)果是以單極性還是雙極性二進(jìn)制補(bǔ)碼表示。
(1) 在電路中被測點(diǎn)添加電壓探針,或者在被測支路添加電流探針;
(2) 選擇放置波形的種類,常見的有ANALOGUE(模擬波形) 、DIGITAL(數(shù)字波形)、MIXED(模數(shù)混合波形)、FREQUENCY(頻率響應(yīng)) 、DISTORTION(失真分析) 和FOURIER(傅立葉分析)等,并在原理圖中拖出用于生成仿真波形的圖表框[11-12];
(3) 在圖表框中添加探針;
(4) 設(shè)置圖表屬性,Start time為仿真開始時(shí)間,通常為0,Stop time 為仿真結(jié)束時(shí)間,根據(jù)波形輸出需要確定時(shí)間[13-15];
(5) 單擊圖表仿真按鈕生成所加探針對(duì)應(yīng)的波形;
(6) 分析波形并打印輸出。
圖1 硬件電路圖
依次在TLC2543的SDO、SDI、CS、CLK、EOC上添加電壓探針,使電壓探針與被測點(diǎn)電壓點(diǎn)相關(guān)聯(lián),并為放置的各電壓探針命名,分別為U2(CLK)、U2(SDI)、U2(SDO)、U2(CS)和U2(EOC)。
選擇圖形的種類:因要觀察的是模擬數(shù)字混合波形,所以選擇MIXED,并在原理圖中繪制圖表框,依次在圖表框中添加已經(jīng)命名過的探針,在圖表屬性中可以根據(jù)需要設(shè)置停止時(shí)間Stop time,在此設(shè)置為2 s,以便完整的觀察波形變化情況,單擊圖表仿真生成的仿真波形如圖2所示。圖2中,下半部分為模擬波形,上半部分為數(shù)字波形。
右鍵單擊選擇窗口最大化,會(huì)出現(xiàn)快捷工具欄,利用它可以實(shí)現(xiàn)編輯圖形、圖形移動(dòng)、放大縮小和查看仿真記錄等,在仿真波形輸出窗口中X軸為時(shí)間軸,其長度由仿真時(shí)間決定,時(shí)間軸的單位是s,利用放大或縮小操作來修改其顯示的時(shí)間,可以達(dá)到ns級(jí)單位,對(duì)分析單片機(jī)的時(shí)序極為有利,Y軸是高低電平顯示和電壓顯示軸。
圖2 仿真圖表波形圖
圖3 調(diào)試窗口
通過8051 CPU Source Code代碼調(diào)試窗口中可以看到時(shí)鐘信號(hào)CLK信號(hào)的變化周期,單片機(jī)的時(shí)鐘頻率為12 MHz,1個(gè)周期內(nèi)CLK 高電平持續(xù)時(shí)間為執(zhí)行1條指令SETB的時(shí)間,即1 μs,低電平持續(xù)時(shí)間為執(zhí)行6條指令的時(shí)間即7 μs,CLK低電平與CLK高電平之間的間隔時(shí)間為7 μs,從仿真波形圖4中觀察的結(jié)果與指令分析一致。
圖4 CLK波形變化周期
圖5 轉(zhuǎn)換結(jié)果波形分析
轉(zhuǎn)換速率是衡量A/D轉(zhuǎn)換器性能指標(biāo)一個(gè)非常重要的參數(shù),它是指完成一次從模擬轉(zhuǎn)換到數(shù)字的A/D轉(zhuǎn)換所需時(shí)間的倒數(shù),如何獲得A/D轉(zhuǎn)換時(shí)間tconv成為關(guān)鍵,根據(jù)TLC2543手冊(cè)提供的技術(shù)參數(shù),轉(zhuǎn)換時(shí)間tconv是轉(zhuǎn)換結(jié)束信號(hào)EOC在轉(zhuǎn)換期間兩次高電平之間低電平維持的時(shí)間,放大仿真波形中EOC時(shí)序部分,將時(shí)間軸以u(píng)s顯示,將光標(biāo)定位于EOC高電平變?yōu)榈碗娖綍r(shí)刻測量時(shí)間為207.915 835 000 μs, EOC由低電平變?yōu)楦唠娖綍r(shí)刻測量的時(shí)間為217.915 834 978 0 μs,tconv=9.999 999 978 μs,與TLC2543手冊(cè)中tconv中描述的典型值為8us,最大值為10 μs一致。仿真波形如圖6所示。
圖6 轉(zhuǎn)換時(shí)間分析圖
借助Proteus中的仿真圖表來分析單片機(jī)的時(shí)序,能實(shí)時(shí)觀察到單片機(jī)與外設(shè)接口之間信號(hào)的變化,可以實(shí)現(xiàn)程序執(zhí)行過程的定性分析,有助于發(fā)現(xiàn)一些難以查找到的隱含性錯(cuò)誤,縮短開發(fā)周期,提高分析問題的能力。
[1] 王海燕,楊艷華.Proteus和Keil軟件在單片機(jī)實(shí)驗(yàn)教學(xué)中的應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2012,31(5):88-91.
WANG Hai-yan,YANG Yan-hua .Application of Proteus and Keil in MCU Experiment Teaching[J]. Research and Exploration in Laboratory, 2012,31(5):88-91.
[2] 王 娟. Proteus軟件在單片機(jī)專題實(shí)訓(xùn)中的應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2012,31(8):72-74,110.
WANG Juan,Application of Proteus in MCU Practical Teaching[J]. Research and Exploration in Laboratory, 2012,31(8):72-74,110.
[3] 劉喜雙,姚 健. 單片機(jī)課程實(shí)踐教學(xué)改革探索[J].教育探索,2013(8):31-32.
LIU Xi-shuang,YAO Jian.Practice teaching reform for the Course of Single-Chip Microcomputer[J]. Education Exploration, 2013(8):31-32.
[4] 周冠玲,馮占英,李 戰(zhàn). “單片機(jī)原理及應(yīng)用”課程教學(xué)改革的探討[J].中國電化教育,2012(6):105-107.
ZHOU Guan-lin,FENG Zhan-yin,LI Zhan.Discussion on Teaching Reform for the Course of Single-Chip Microcomputer[J]. China Educational Technology, 2012(6):105-107.
[5] 張 新. 51單片機(jī)應(yīng)用開發(fā)25例[M].北京:電子工業(yè)出版社,2013.
[6] 彭 偉.單片機(jī)C語言程序設(shè)計(jì)實(shí)訓(xùn)100例[M].(第2版).北京:電子工業(yè)出版社,2012.
[7] 艾 紅.微控制器技術(shù)綜合設(shè)計(jì)和提高設(shè)計(jì)質(zhì)量探討[J].實(shí)驗(yàn)技術(shù)與管理,2013,30(10):121-124.
AI Hong.Discussion integrative design for microprocessor technology and improvement of design quality[J]. Experimental Technology and Mangerment, 2013,30(10):121-124.
[8] 王 瑾. 基于Proteus的數(shù)字電壓表仿真設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013,21(1):122-124,128.
WANG Jin,Simulation design of digital voltmeter based on Proteus[J]. Electronic Design Engineering, 2013,21(1):122-124,128.
[9] 杜樹春.基于Proteus和KeilC51的單片機(jī)設(shè)計(jì)與仿真[M].北京:電子工業(yè)出版社,2012.
[10] 張占強(qiáng),孟 克,其勞基于Proteus的多波形信號(hào)發(fā)生器仿真設(shè)計(jì)[J].電子測量技術(shù),2013,3(36):15-19.
ZHANG Zhan-qiang,MEN Ke, QI Lao. Design of multi-waveform signal generator base on Proteus simulation[J]. Electronic Measurement Technology, 2013,3(36):15-19.
[11] 劉昆磊,馬 超.Proteus仿真圖表在單片機(jī)教學(xué)過程中的應(yīng)用[J].內(nèi)江科技,2010,31(8):139-139.
LIU Kong-lei,MA Chao, Application of Proteus Simulation Diagram in MCU Teching [J].Nei Jiang Technology, 2010,31(8):139-139.
[12] 邱少噯. Proteus 仿真軟件在單片機(jī)教學(xué)中的應(yīng)用[J].電子制作,2014(1):120-121.
QIU Shao-yuan.Applicationof proteus software in MCU teaching[J]. Practical Electronics,2014(1):120-121.
[13] 徐 磊, 申紅軍, 蔡亞永.單片機(jī)開發(fā)Keil C51 與Proteus 仿真聯(lián)合應(yīng)用研究[J]. 電子設(shè)計(jì)工程,2013,17(21):178-181.
XU Lei,SHEN Hong-jun,CAI Ya-yong, MCU development Keil C51 and Proteus simulation combined application research[J]. Electronic Design Engineering,2013,17(21):178-181.
[14] 陳 飛,顧啟民,王 偉. 基于Proteus 和Keil 的項(xiàng)目教學(xué)法在單片機(jī)教學(xué)中的應(yīng)用[J]. 實(shí)驗(yàn)科學(xué)與技術(shù),2013,11(51):48-52.
CHEN Fei,GU Qimin,WANG Wei. Application of Project Teaching Method Based on Proteus and Keil in MCU Teaching[J]. Experiment Science and Technology,2013,11(51):48-52.
[15] 楊鎮(zhèn)博,張加宏.Proteus 軟件在單片機(jī)教學(xué)改革中的應(yīng)用[J].科技信息,2013(5):24-25.
YANG Zhen-Bo, ZHANG Jia-hong. Application of Proteus Software in the MCU Teaching Reform[J].Science &Technology Information, 2013(5):24-25.