隨著單片機性能不斷提高而價格卻不斷下降, 單片機控制在越來越多的領域得以應用。按照傳統(tǒng)的模式, 在整個項目開發(fā)過程中, 先根據(jù)控制系統(tǒng)要求設計原理圖, PCB 電路圖繪制, 電路板制作, 元器件的焊接, 然后進行軟件編程, 通過仿真器對系統(tǒng)硬件和軟件調(diào)試, 最后將調(diào)試成功的程序固化到單片機中。這一過程中的主要問題是, 應用程序需要在硬件完成的情況下才能進行調(diào)試。雖然有的軟件可以進行模擬調(diào)試, 但是對于一些復雜的程序如人機交互程序, 在沒有硬件的時候, 沒有界面的真實感, 給調(diào)試帶來困難。在軟硬件的配合中如需要修改硬件, 要重新制板, 在時間和投入上帶來很大的麻煩。縱觀整個過程, 無論是從硬件成本上, 還是從調(diào)試周期上, 傳統(tǒng)開發(fā)模式的效率有待提高。能否只使用一種開發(fā)工具兼顧仿真, 調(diào)試, 制板, 以及最大限度的軟件模擬來作為單片機的開發(fā)平臺, 用它取代編程器、仿真器、成品前的硬件測試等工作是廣大單片機開發(fā)者的夢想。 PROTEUS 軟件介紹為了更加直觀具體地說明Proteus 軟件的實用價值, 本文以一具體的TAXI 的計價器和計時器電路板的設計過程為例。其電路板要實現(xiàn)的功能是:㈠計時功能(相當于時鐘);㈡里程計價功能:兩公里以內(nèi)價格為4 元, 以后每一公里加0.7 元, 不足一公里取整(如10.3 公里取11 公里);㈢通過鍵盤輸入里程, 模擬計算里程費, 實現(xiàn)Y= (X- 2)*0.7+4 的簡單計算。基于上述功能, 選用ATMEL 公司生產(chǎn)的通用芯片AT89C51 單片機構成應用系統(tǒng)。AT89C51 是內(nèi)含8 位4K 程序存儲器, 128B 數(shù)據(jù)存儲器, 2 個定時器/計數(shù)器的通用芯片。系統(tǒng)開發(fā)環(huán)境采用ProteusISIS 6。2.1 計價器模擬系統(tǒng)硬件構成系統(tǒng)主要由一個AT89C51 單片機、74LS373、74LS240、矩陣鍵盤、4 位7 段數(shù)碼管等組成。通用AT89C51 單片機芯片作為整個電路的核心部分、74LS373 作為LED 段選控制、74LS240四路反相器則為4 位共陰極7 段數(shù)碼管提供位選通信號、矩陣鍵盤輸入控制信號。
上傳時間: 2013-11-09
上傳用戶:木子葉1
4位八段數(shù)碼管的十進制加計數(shù)仿真實驗,程序采用匯編語言編寫。此程序在仿真軟件上與EDN-51實驗板上均通過。仿真圖中的數(shù)碼管位驅(qū)動采用74HC04,如按EDN-51板上用想同的PNP三極管驅(qū)動在仿真軟件上則無法正常顯示。程序共分5塊,STAR0為數(shù)據(jù)初始化,STAR2為計數(shù)子程序,STAR3為4位數(shù)碼管動態(tài)顯示子程序,STAR4為按鍵掃描子程序,STS00是延時子程序。由于EDN-51實驗板上沒裝BCD譯碼器,所以編寫程序比較煩瑣。 程序如下: ORG 0000H LJMP STAR0 ;轉(zhuǎn)程序 SRAR0ORG 0200H ;程序地址 0200HSTAR0: CLR 00 ;位 00 清 0 MOV P1,#0FFH ;#0FFH-->P1 MOV P2,#0FH ;#0FH-->P2 MOV P0,#0FFH ;#0FFH-->P0 MOV 30H,#00H ;#00H-->30H MOV 31H,#00H ;#00H-->30H MOV 32H,#00H ;#00H-->30H MOV 33H,#00H ;#00H-->30H LJMP STAR3 ;轉(zhuǎn)程序 SRAR3STAR2: MOV A,#0AH ;#0AH-->A INC 30H ;30H+1 CJNE A,30H,STJE ;30H 與 A 比較,不等轉(zhuǎn)移 STJE MOV 30H,#00H ;#00H-->30H INC 31H ;31H+1 CJNE A,31H,STJE ;31H 與 A 比較,不等轉(zhuǎn)移 STJE MOV 31H,#00H ;#00H-->31H INC 32H ;32H+1 CJNE A,32H,STJE ;32H 與 A 比較,不等轉(zhuǎn)移 STJE MOV 32H,#00H ;#00H-->32H INC 33H ;33H+1 CJNE A,33H,STJE ;33H 與 A 比較,不等轉(zhuǎn)移 STJE MOV 33H,#00H ;#00H-->33H MOV 32H,#00H ;#00H-->32H MOV 31H,#00H ;#00H-->31H MOV 30H,#00H ;#00H-->30HSTJE: RET ;子程序調(diào)用返回STAR3: MOV R0,#30H ;#30H-->R0 MOV R6,#0F7H ;#0F7H-->R6SMG0: MOV P1,#0FFH ;#0FFH-->P1 MOV A,R6 ;R6-->A MOV P1,A ;A-->P1 RR A ;A向右移一位 MOV R6,A ;A-->R6 MOV A,@R0 ;@R0-->A ADD A,#04H ;#04H-->A MOVC A,@A+PC ;A+PC--> MOV P0,A ;A-->P0 AJMP SMG1 ;轉(zhuǎn)程序 SMG1SDATA: DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H SMG1: LCALL STAR4 ;轉(zhuǎn)子程序 SRAR4 LCALL STS00 ;轉(zhuǎn)子程序 STS00 INC R0 ;R0+1 CJNE R6,#07FH,SMG0 ;#07FH 與 R6 比較,不等轉(zhuǎn)移 SMG0 AJMP STAR3 ;轉(zhuǎn)程序 SRAR3STAR4: JNB P2.0,ST1 ;P2.0=0 轉(zhuǎn) ST1 CLR 00 ;位 00 清 0 SJMP ST3 ;轉(zhuǎn)ST3ST1: JNB 00,ST2 ;位 00=0 轉(zhuǎn) ST2 SJMP ST3 ;轉(zhuǎn) ST3ST2: LCALL STAR2 ;調(diào)子程序 STAR2 SETB 00 ;位 00 置 1ST3: RET ;子程序調(diào)用返回ORG 0100H ;地址 0100HSTS00: MOV 60H,#003H ;#003H-->60H (211)DE001: MOV 61H,#0FFH ;#0FFH-->61H (255)DE002: DJNZ 61H,DE002 ;61H 減 1 不等于 0 轉(zhuǎn) DE002 DJNZ 60H,DE001 ;60H 減 1 不等于 0 轉(zhuǎn) DE001 RET ;子程序調(diào)用返回 END ;結(jié)束 上次的程序共有293句,經(jīng)小組成員建議,本人經(jīng)幾天的研究寫了下面的這個程序,現(xiàn)在的程序用了63句,精簡了230句。功能沒有減。如誰有更簡練的程序,請發(fā)上來,大家一起學習。 4位八段數(shù)碼管的十進制加計數(shù)仿真實驗(含電路圖和仿真文件)
上傳時間: 2013-10-11
上傳用戶:sssl
PLC 以 其 可靠性高、抗干擾能力強、配套齊全、功能完善、適應性強等特點,廣泛應用于各種控制領域。PLC作為通用工業(yè)控制計算機,是面向工礦企業(yè)的工控設備,使用梯形圖符號進行編程,與繼電器電路相當接近,被廣大工程技術人員接受。但是在實際應用中,如何編程能夠提高PLC程序運行速度是一個值得我們思考研究的問題。1 PLC工作原理PLC 與 計 算機的工作原理基本相同,即在系統(tǒng)程序的管理下,通過運行應用程序完成用戶任務。但兩者的工作方式有所不同。計算機一般采用等待命令的工作方式,而PLC在確定了工作任務并裝人了專用程序后成為一種專用機,它采用循環(huán)掃描工作方式,系統(tǒng)工作任務管理及應用程序執(zhí)行都是用循環(huán)掃描方式完成的。PLC 有 兩 種基本的工作狀態(tài),即運行(RUN)與停止(STOP)狀態(tài)。在這兩種狀態(tài)下,PLC的掃描過程及所要完成的任務是不盡相同的,如圖1所示。 PLC在RUN工作狀態(tài)時,執(zhí)行一次掃描操作所的時間稱為掃描周期,其典型值通常為1一100nis,不同PLC廠家的產(chǎn)品則略有不同。掃描周期由內(nèi)部處理時間、輸A/ 輸出處理執(zhí)行時間、指令執(zhí)行時間等三部分組成。通常在一個掃描過程中,執(zhí)行指令的時間占了絕大部分,而執(zhí)行指令的時間與用戶程序的長短有關。用戶 程 序 是根據(jù)控制要求由用戶編制,由許多條PLC指令所組成。不同的指令所對應的程序步不同,以三菱FX2N系列的PLC為例,PLC對每一個程序步操作處理時間為:基本指令占0.741s/步,功能指令占幾百微米/步。完成一個控制任務可以有多種編制程序的方法,因此,選擇合理、巧妙的編程方法既可以大大提高程序運行速度,又可以保證可靠性。 提高PLC程序運行速度的幾種編程方法2.1 用數(shù)據(jù)傳送給位元件組合的方法來控制輸出在 PL C應 用編程中,最后都會有一段輸出控制程序,一般都是用邏輯取及輸出指令來編寫,如圖2所示。在圖2所示的程序中,邏輯取的程序步為1,輸出的程序步為2,執(zhí)行上述程序共需3個程序步。通常情況下,PLC要控制的輸出都不會是少量的,比如,有8個輸出,在條件滿足時要同時輸出。此時,執(zhí)行圖2所示的程序共需17個程序步。若我們通過位元件的組合并采用數(shù)據(jù)傳送的方法來完成圖2所示的程序,就會大大減少程序步驟。在三 菱 PLC中,只處理ON/OFF狀態(tài)的元件(如X,Y,M和S),稱為位元件。但將位元件組合起來也可以處理數(shù)據(jù)。位元件組合由Kn加首元件號來表示。位元件每4bit為一組組合成單元。如KYO中的n是組數(shù),當n=1時,K,Yo 對應的是Y3一Yo。當n二2時,KZYo對應的是Y7一Yo。通過位元件組合,就可以用處理數(shù)據(jù)的方式來處理位元件,圖2程序所示的功能可用圖3所示的傳送數(shù)據(jù)的方式來完成。
上傳時間: 2013-11-11
上傳用戶:幾何公差
本應用指南講述一種實用的 MicroBlaze™ 系統(tǒng),用于在非易失性 Platform Flash PROM 中存儲軟件代碼、用戶數(shù)據(jù)和配置數(shù)據(jù),以簡化系統(tǒng)設計和降低成本。另外,本應用指南還介紹一種可移植的硬件設計、一個軟件設計以及在實現(xiàn)流程中使用的其他腳本實用工具。 簡介許多 FPGA 設計都集成了使用 MicroBlaze 和 PowerPC™ 處理器的軟件嵌入式系統(tǒng),這些設計同時使用外部易失性存儲器來執(zhí)行軟件代碼。使用易失性存儲器的系統(tǒng)還必須包含一個非易失性器件,用來在斷電期間存儲軟件代碼。大多數(shù) FPGA 系統(tǒng)都在電路板上使用 Platform FlashPROM (在本文中稱作 PROM),用于在上電時加載 FPGA 配置數(shù)據(jù)。另外,許多應用還可能使用其他非易失性器件(如 SPI Flash、Parallel Flash 或 PIC)來保存 MAC 地址等少量用戶數(shù)據(jù),因此導致系統(tǒng)電路板上存在大量非易失性器件。
標簽: MicroBlaze Platform Flash XAPP
上傳時間: 2013-10-13
上傳用戶:hakim
介紹了基于以太網(wǎng)的加載方法, 包括網(wǎng)絡接口控制HPI接口控制,該技術靈活方便,可脫離仿真器實現(xiàn)遠程,大容量的程序代碼加載,快速完成DSP系統(tǒng)的軟件更新
標簽: DSP 以太網(wǎng) 網(wǎng)絡加載 技術研究
上傳時間: 2013-11-20
上傳用戶:taiyang250072
SCA波形是SCA通信系統(tǒng)的核心,當前的應用中未采用波形庫管理技術,且對SCA波形的加載是在本地進行的。這不利于發(fā)揮SCA無線通信設備應有的靈活、方便、即插即用等特點。提出了一種SCA波形庫遠程管理和SCA波形遠程加載運行的技術方案,并在VxWorks操作系統(tǒng)中實現(xiàn)了SCA波形遠程加載和運行。結(jié)果表明,該方案能方便、高效的實現(xiàn)SCA波形庫的遠程管理和SCA波形的遠程加載運行。
上傳時間: 2013-10-31
上傳用戶:GavinNeko
無線感測器已變得越來越普及,短期內(nèi)其開發(fā)和部署數(shù)量將急遽增加。而無線通訊技術的突飛猛進,也使得智慧型網(wǎng)路中的無線感測器能夠緊密互連。此外,系統(tǒng)單晶片(SoC)的密度不斷提高,讓各式各樣的多功能、小尺寸無線感測器系統(tǒng)相繼問市。儘管如此,工程師仍面臨一個重大的挑戰(zhàn):即電源消耗。
上傳時間: 2013-10-30
上傳用戶:wojiaohs
超前進位加法器的設計
上傳時間: 2013-10-19
上傳用戶:shen_dafa
漢字庫加載與顯示
上傳時間: 2013-10-16
上傳用戶:lml1234lml
微帶天線[加]I.J.鮑爾
上傳時間: 2013-11-17
上傳用戶:jhksyghr