資源描述:
《基于keilc51與proteus仿真聯(lián)合的單片機(jī)應(yīng)用研究》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、基于KeilC51與Proteus仿真聯(lián)合的單片機(jī)應(yīng)用研究摘要:傳統(tǒng)單片機(jī)技術(shù)教學(xué)中,采用的理論教學(xué)與實(shí)驗(yàn)讓學(xué)生感到難以入門,針對(duì)教學(xué)中存在的這個(gè)問(wèn)題,采用KeilC51和Proteus進(jìn)行仿真教學(xué),這種教學(xué)方法給學(xué)生創(chuàng)造一個(gè)直觀的形象,更有利于學(xué)生對(duì)單片機(jī)技術(shù)的掌握,從而提高了教學(xué)質(zhì)量。關(guān)鍵詞:軟件調(diào)試;單片機(jī);KEILC51;PROTEUS;硬件仿真中圖分類號(hào):TP399文獻(xiàn)標(biāo)識(shí)碼:A1弓I言(Introduction)單片機(jī)技術(shù)在各行各業(yè)中得到廣泛的應(yīng)用,同時(shí)單片機(jī)技術(shù)應(yīng)用課程是一門實(shí)踐性很強(qiáng)的軟硬件結(jié)合的技術(shù),需要通過(guò)大量的實(shí)踐才能理解和掌握程序設(shè)計(jì)方法與硬
2、件結(jié)構(gòu)設(shè)計(jì)。同時(shí)在目前的教學(xué)中,單片機(jī)開(kāi)發(fā)KeilC51與Proteus軟件的聯(lián)合仿真在實(shí)際的單片機(jī)系統(tǒng)開(kāi)發(fā)中被普遍應(yīng)用。為此,在單片機(jī)課程教學(xué)過(guò)程中,教師一定要結(jié)合工程實(shí)際做到軟件和硬件相結(jié)合,實(shí)現(xiàn)理論教學(xué)與工程實(shí)踐緊密結(jié)合,在傳授理論知識(shí)的同時(shí),教會(huì)學(xué)生如何使用實(shí)際工程所應(yīng)用的相關(guān)軟件進(jìn)行單片機(jī)系統(tǒng)開(kāi)發(fā)。2PROTEUS與KEILC51介紹(IntroductionofPROTEUS與KEILC51)2.1程序編譯軟件KeilC51KeilC51軟件是德國(guó)KeilSoftware公司幵發(fā)的51系列單片機(jī)開(kāi)發(fā)軟件。KeiluVison系列是該公司推出的51系列兼容
3、單片機(jī)軟件開(kāi)發(fā)系統(tǒng)。uVison是集成的可視化Windows操作界面,其提供了豐富的庫(kù)函數(shù)和各種編譯工具,能夠?qū)?1系列單片機(jī)以及和51系列兼容的絕大部分類型的單片機(jī)進(jìn)行設(shè)計(jì)[1]。KeiluVison系列可以支持單片機(jī)C51程序設(shè)計(jì)語(yǔ)言,也可以直接進(jìn)行匯編語(yǔ)言的設(shè)計(jì)與編譯。2.2仿真軟件Proteus為了驗(yàn)證設(shè)計(jì)程序的正確性,單片機(jī)程序設(shè)計(jì)與開(kāi)發(fā)往往采用軟件仿真與硬件仿真相結(jié)合的形式。軟件仿真只能驗(yàn)證程序的正確性,不能仿真具體的硬件環(huán)境。硬件仿真常用的軟件是英國(guó)LabcenterElectronics公司研發(fā)的電路設(shè)計(jì)與仿真平臺(tái)Proteus。Proteus具有原
4、理圖編輯、印刷電路板(PCB)設(shè)計(jì)及電路仿真功能,該軟件由ISIS和ARES兩部分構(gòu)成,其中ISIS是一款便捷的電子系統(tǒng)原理設(shè)計(jì)和仿真平臺(tái)軟件,ARES是一款高級(jí)的PCB布線編輯軟件。2硬件電路設(shè)計(jì)(Hardwarecircuitdesign)3.1運(yùn)用Proteus進(jìn)行的硬件電路設(shè)計(jì)原理LED發(fā)光管控制就是通常所說(shuō)的流水燈控制,這是單片機(jī)控制技術(shù)入門的基本控制項(xiàng)目。通過(guò)花樣繁多的流水燈控制任務(wù),可以學(xué)習(xí)和應(yīng)用基本的單片機(jī)和C語(yǔ)言程序設(shè)計(jì)的知識(shí)與技術(shù),積累豐富的單片機(jī)項(xiàng)目開(kāi)發(fā)與程序設(shè)計(jì)的經(jīng)驗(yàn)與技巧,為進(jìn)一步提高單片機(jī)技術(shù)水平打下堅(jiān)實(shí)的基礎(chǔ)[2]。本項(xiàng)目采用的流水燈實(shí)
5、際上是一個(gè)帶有八個(gè)發(fā)光二極管的單片機(jī)最小應(yīng)用系統(tǒng),即為由發(fā)光二極管D1-D8、晶振XI、電源VCC、單片機(jī)AT89C51和程序等組成的系統(tǒng)。如果讓接在P1.0口的D1亮起來(lái),那么只要把P1.0口的電平變?yōu)榈碗娖骄涂梢粤?;相反,如果要接在P1.0口的D1熄滅,就要把P1.0口的電平變?yōu)楦唠娖?;同理,接在P1.1-P1.7口的其他七只發(fā)光二極管點(diǎn)亮和熄滅的方法同D1。因此,要實(shí)現(xiàn)流水燈功能,只要將發(fā)光二極管D1—D8依次點(diǎn)亮、熄滅,八只發(fā)光二極管便會(huì)一亮一暗的做流水燈了[3]。在此還應(yīng)注意一點(diǎn),由于人眼的視覺(jué)暫留效應(yīng)以及單片機(jī)執(zhí)行每條指令的時(shí)間很短,在控制二極管亮滅的時(shí)
6、候應(yīng)該延時(shí)一段時(shí)間,否則就看不到“流水”效果了。3.2KEILC語(yǔ)言序的編程單片機(jī)的應(yīng)用系統(tǒng)由硬件和程序組成,上述硬件原理圖搭建完成上電之后,還不能看到流水燈循環(huán)點(diǎn)亮的現(xiàn)象,要實(shí)現(xiàn)流水燈循環(huán)點(diǎn)亮,還要告訴單片機(jī)該怎么進(jìn)行工作,即編寫(xiě)程序控制單片機(jī)管腳電平的高低變化,以實(shí)現(xiàn)發(fā)光二極管的一亮一滅。下面以八個(gè)發(fā)光二極管循環(huán)點(diǎn)亮來(lái)介紹兩種。采用數(shù)組控制與運(yùn)算符控制兩種編程[4]方法實(shí)現(xiàn)。(1)數(shù)組控制P0口流水燈#includevoiddelay(unsignedcharx){unsignedcharm,n;for(m=0;mvoiddelay(void){unsigned
7、charm,n;//P2每次右for(m=0;mfor(i=0;i〉l;移一位delayO;}}voidzizeng一LED(void)unsignedchari;for(i=0;i