Keil C51使用詳解Keil C51 是美國Keil Software 公司出品的51 系列兼容單片機C 語言軟件開發(fā)系統(tǒng),與匯編相比,C 語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C 來開發(fā),體會更加深刻。Keil C51 軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。下面詳細(xì)介紹 Keil C51 開發(fā)系統(tǒng)各部分功能和使用。第二節(jié) Keil C51 單片機軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)C51 工具包的整體結(jié)構(gòu),如圖(1)所示,其中uVision 與Ishell 分別是C51 forWindows 和for Dos 的集成開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用IDE 本身或其它編輯器編輯C 或匯編源文件。然后分別由C51 及A51 編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51 創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51 連接定位生成絕對目標(biāo)文件(.ABS)。ABS 文件由OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex 文件,以供調(diào)試器dScope51 或tScope51 使用進行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進行調(diào)試,也可以直接寫入程序存貯器如EPROM 中。圖(1) C51 工具包整體結(jié)構(gòu)圖第三節(jié) Keil C51 工具包的安裝81. C51 for Dos在 Windows 下直接運行軟件包中DOS\C51DOS.exe 然后選擇安裝目錄即可。完畢后欲使系統(tǒng)正常工作須進行以下操作(設(shè)C:\C51 為安裝目錄):修改 Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后運行Autoexec.bat2. C51 for Windows 的安裝及注意事項:在 Windows 下運行軟件包中WIN\Setup.exe,最好選擇安裝目錄與C51 for Dos相同,這樣設(shè)置最簡單(設(shè)安裝于C:\C51 目錄下)。然后將軟件包中crack 目錄中的文件拷入C:\C51\Bin 目錄下。第四節(jié) Keil C51 工具包各部分功能及使用簡介1. C51 與A51(1) C51C51 是C 語言編譯器,其使用方法為:C51 sourcefile[編譯控制指令]或者 C51 @ commandfile其中 sourcefile 為C 源文件(.C)。大量的編譯控制指令完成C51 編譯器的全部功能。包控C51 輸出文件C.LST,.OBJ,.I 和.SRC 文件的控制。源文件(.C)的控制等,詳見第五部分的具體介紹。而 Commandfile 為一個連接控制文件其內(nèi)容包括:.C 源文件及各編譯控制指令,它沒有固定的名字,開發(fā)人員可根據(jù)自己的習(xí)慣指定,它適于用控制指令較多的場合。(2) A51A51 是匯編語言編譯器,使用方法為:9A51 sourcefile[編譯控制指令]或 A51 @ commandfile其中sourcefile 為匯編源文件(.asm或.a51),而編譯控制指令的使用與其它匯編如ASM語言類似,可參考其他匯編語言材料。Commandfile 同C51 中的Commandfile 類似,它使A51 使用和修改方便。2. L51 和BL51(1) L51L51 是Keil C51 軟件包提供的連接/定位器,其功能是將編譯生成的OBJ 文件與庫文件連接定位生成絕對目標(biāo)文件(.ABS),其使用方法為:L51 目標(biāo)文件列表[庫文件列表] [to outputfile] [連接控制指令]或 L51 @Commandfile源程序的多個模塊分別經(jīng) C51 與A51 編譯后生成多個OBJ 文件,連接時,這些文件全列于目標(biāo)文件列表中,作為輸入文件,如果還需與庫文件(.LiB)相連接,則庫文件也必須列在其后。outputfile 為輸文件名,缺少時為第一模塊名,后綴為.ABS。連接控制指令提供了連接定位時的所有控制功能。Commandfile 為連接控制文件,其具體內(nèi)容是包括了目標(biāo)文件列表,庫文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由于目標(biāo)模塊庫文件大多不止1 個,因而第2 種方法較多見,這個文件名字也可由使用者隨意指定。(2) Bl51BL51 也是C51 軟件包的連接/定位器,其具有L51 的所有功能,此外它還具有以下3 點特別之處:a. 可以連接定位大于64kBytes 的程序。b. 具有代碼域及域切換功能(CodeBanking & Bank Switching)c. 可用于RTX51 操作系統(tǒng)RTX51 是一個實時多任務(wù)操作系統(tǒng),它改變了傳統(tǒng)的編程模式,甚至不必用main( )函數(shù),單片機系統(tǒng)軟件向RTOS 發(fā)展是一種趨勢,這種趨勢對于186 和38610及68K 系列CPU 更為明顯和必須,對8051 因CPU 較為簡單,程序結(jié)構(gòu)等都不太復(fù)雜,RTX51 作用顯得不太突出,其專業(yè)版軟件PK51 軟件包甚至不包括RTX51Full,而只有一個RTX51TINY 版本的RTOS。RTX51 TINY 適用于無外部RAM 的單片機系統(tǒng),因而可用面很窄,在本文中不作介紹。Bank switching 技術(shù)因使用很少也不作介紹。3. DScope51,Tscope51 及Monitor51(1) dScope51dScope51 是一個源級調(diào)試器和模擬器,它可以調(diào)試由C51 編譯器、A51 匯編器、PL/M-51 編譯器及ASM-51 匯編器產(chǎn)生的程序。它不需目標(biāo)板(for windows 也可通過mon51 接目標(biāo)板),只能進行軟件模擬,但其功能強大,可模擬CPU 及其外圍器件,如內(nèi)部串口,外部I/O 及定時器等,能對嵌入式軟件功能進行有效測試。
上傳時間: 2013-11-01
上傳用戶:zhouxuepeng1
用51單片機設(shè)計的時鐘電路畢業(yè)論文第一章電路原理分析1-1 顯示原理1-2 數(shù)碼管結(jié)構(gòu)及代碼顯示1-3 鍵盤及讀數(shù)原理1-4 連擊功能的實現(xiàn)第 二 章 程序設(shè)計思想和相關(guān)指令介紹2-1 數(shù)據(jù)與代碼轉(zhuǎn)換2-2 計時功能的實現(xiàn)與中斷服務(wù)程序2-3 時間控制功能與比較指令2-4 時鐘誤差的分析附錄A 電路圖附錄B 存儲單元地址表附錄C 輸入輸出口功能分配表附錄D 定時中斷程序流程圖附錄F 調(diào)時功能流程圖附錄G 程序清單
上傳時間: 2013-10-29
上傳用戶:hoperingcong
摘要:本文介紹了一簡易流水燈的軟硬件設(shè)計過程,重點給出了其軟件編程的思想方法,以期給單片機學(xué)習(xí)者以啟發(fā)。關(guān)鍵字:單片機;流水燈;編程1.引言當(dāng)今時代是一個新技術(shù)層出不窮的時代,在電子領(lǐng)域尤其是自動化智能控制領(lǐng)域,傳統(tǒng)的分立元件或數(shù)字邏輯電路構(gòu)成的控制系統(tǒng),正以前所未見的速度被單片機智能控制系統(tǒng)所取代。單片機具有體積小、功能強、成本低、應(yīng)用面廣等優(yōu)點,可以說,智能控制與自動控制的核心就是單片機。目前,一個學(xué)習(xí)與應(yīng)用單片機的高潮正在工廠、學(xué)校及企事業(yè)單大規(guī)模地興起。學(xué)習(xí)單片機的最有效方法就是理論與實踐并重,本文筆者用AT89C51 單片機自制了一款簡易的流水燈,重點介紹了其軟件編程方法,以期給單片機初學(xué)者以啟發(fā),更快地成為單片機領(lǐng)域的優(yōu)秀人才。
上傳時間: 2013-11-09
上傳用戶:gundamwzc
PCA9544A 是NXP 公司生產(chǎn)的I2C 總線多路復(fù)用器,通過該器件可以將一路I2C 總線擴展為4 路I2C 總線。將1 路上行SDA/SCL 通道擴展為4 路下行通道。通過對內(nèi)部可編程寄存器進行配置,在同一時間可以任意選擇一對SCx/SDx 線。器件擁有四路輸入中斷,INT0到INT3,分別對應(yīng)著四路下行通道。該器件還有一個輸出中斷,輸出中斷的狀態(tài)由四個輸入中斷通過“與”邏輯控制。
上傳時間: 2013-11-17
上傳用戶:woshinimiaoye
PCA9546A 是一款I(lǐng)2C 多路復(fù)用器和開關(guān),能實現(xiàn)I2C 總線擴展、電平轉(zhuǎn)換及總線功能恢復(fù)
上傳時間: 2013-12-02
上傳用戶:myworkpost
PCA9547 是一款通過I2C 總線控制的八進制雙向轉(zhuǎn)換開關(guān)。它的每對SCL/ SDA 上行通道可以擴展為八對下行通道。但在某一時刻,由可編程控制寄存器中的內(nèi)容來決定只有一路SCx/SDx 被選擇。由多路復(fù)用器的通門,VDD 管腳可以用來限制PCA9547 通過的最高電壓,這使得每一對SCL/SDA 可以使用不同的總線電壓,因此1.8V、2.5V 或3.3V 的器件都可以在無其它保護的情況下與5V 的器件進行通信。它的外部上拉電阻將總線拉高至每個通道所要求的電壓電平,所有I/O 管腳都可以承受5V 的電壓。設(shè)備上電時由通道0 連接,并且允許主機和下行設(shè)備進行直接的通信
上傳時間: 2014-12-28
上傳用戶:sunshine1402
PCA9548A 是一款通過I2C 總線控制的八進制雙向轉(zhuǎn)換開關(guān)。它的每對SCL/ SDA 上行通道可以擴展為八對下行通道,可以通過可編程控制寄存器的內(nèi)容來選擇任意單一的SCx/SDx 通道或者組合通道。由多路復(fù)用器的通門,VDD 管腳可以用來限制PCA9547 通過的最高電壓,這使得每一對SCL/SDA 都可以使用不同的總線電壓,因此1.8V、2.5V 或3.3V的器件可以在無其它保護的情況下與5V 的器件進行通信。它的外部上拉電阻將總線拉高至每個通道所要求的電壓電平,所有I/O 管腳都可以承受5V 電壓。
上傳時間: 2013-10-13
上傳用戶:hanli8870
用單片機制作通用型電視遙控器:本文介紹了一種用MCS-51系列單片機AT89C52代替專用遙控芯片的設(shè)計方案,通過軟件模擬實現(xiàn)了電視機遙控編碼的發(fā)射,并且達到“一器多用”。上世紀(jì)八十年代初,日本率先在電視產(chǎn)品中使用了紅外遙控技術(shù),目前已經(jīng)在電視機上得到了廣泛應(yīng)用。電視遙控器使用的是專用集成發(fā)射芯片來實現(xiàn)遙控碼的發(fā)射,如東芝TC9012,飛利浦SAA3010T等。這些芯片價格較貴,且相互之間采用的遙控編碼格式互不兼容,所以各機型的遙控器通常只能針對各自的遙控對象而無法通用。本文在試驗驗證的基礎(chǔ)上,介紹了如何利用低成本的MCS-51系列單片機來實現(xiàn)遙控碼的模擬發(fā)射,并實現(xiàn)遙控器的通用化。遙控發(fā)射技術(shù)的基本原理通常彩電遙控信號的發(fā)射,就是將某個按鍵所對應(yīng)的控制指令和系統(tǒng)碼(由0和1組成的序列),調(diào)制在32~56KHz范圍內(nèi)的載波上,然后經(jīng)放大、驅(qū)動紅外發(fā)射管將信號發(fā)射出去。不同公司的遙控芯片,采用的遙控碼格式也不一樣。在此介紹較普遍的兩種,一種是NEC標(biāo)準(zhǔn),一種是PHILIPS 標(biāo)準(zhǔn)。
上傳時間: 2013-11-17
上傳用戶:jiangfire
用TPM2產(chǎn)生PWM和作脈沖寬度、周期測量:SPMC75F2413A的TPM2除具有一般的定時/計數(shù)的功能外,還有兩路的PWM輸出/兩路的捕獲功能,因此增強和擴展了TPM2在一般領(lǐng)域中的應(yīng)用,本應(yīng)用例介紹TPM2產(chǎn)生脈沖及捕獲(測量)脈沖。1.2 TPM2簡介SPMC75F2413A有一個通用16位TPM定時器,即TPM定時器2,支持捕獲輸入和PWM輸出功能。在電機控制速度反饋環(huán)應(yīng)用中,定時器2可以用來提供的系統(tǒng)時間基準(zhǔn)。定時器2為捕獲輸入和PWM輸出操作提供兩個輸入/輸出引腳。詳細(xì)介紹請參考《SPMC75F2413A編程指南》TPM定時器2模塊部分。
上傳時間: 2013-11-09
上傳用戶:司令部正軍級
用NTC熱敏電阻做溫度采集:本應(yīng)用例實現(xiàn)NTC熱敏電阻器對溫度的測量。熱敏電阻器把溫度的變化轉(zhuǎn)換為電阻阻值的變化,再應(yīng)用相應(yīng)的測量電路把阻值的變化轉(zhuǎn)換為電壓的變化;SPMC75F2413A內(nèi)建8路ADC可以把模擬的電壓值轉(zhuǎn)換為數(shù)字信號,對數(shù)值信號進行處理可以得到相應(yīng)的溫度值。1.2 熱敏電阻器熱敏電阻有電阻值隨溫度升高而升高的正溫度系數(shù)(Positive Temperature Coefficient簡稱PTC)熱敏電阻和電阻值隨溫度升高而降低的負(fù)溫度系數(shù)(Negative Temperature Coefficient簡稱NTC)熱敏電阻。NTC熱敏電阻器,是一種以過渡金屬氧化物為主要原材料,采用電子陶瓷工藝制成的熱敏半導(dǎo)體陶瓷組件。這種組件的電阻值隨溫度升高而降低,利用這一特性可制成測溫、溫度補償和控溫組件,又可以制成功率型組件,抑制電路的浪涌電流。
上傳時間: 2013-11-16
上傳用戶:sssnaxie
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1