51單片機(jī)C語(yǔ)言編程手冊(cè)這是一本關(guān)于Intel 80C51 以及廣大的51 系列單片機(jī)的書(shū)這本書(shū)介紹給讀者一些新的技術(shù)使你的8051 工程和開(kāi)發(fā)過(guò)程變得簡(jiǎn)單請(qǐng)注意這本書(shū)的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問(wèn)題討論更加清晰在適當(dāng)?shù)牡胤浇o出了程序代碼我們以討論項(xiàng)目的方法來(lái)說(shuō)明每章碰到的問(wèn)題所有的代碼都可在附帶的光盤(pán)上找到你必須熟系C 和8051 匯編因?yàn)楸緯?shū)不是一本C 和匯編的指導(dǎo)書(shū)你可以買(mǎi)到不少關(guān)于ANSI C 的書(shū)最佳選擇當(dāng)然是Intel的數(shù)據(jù)書(shū)可從你的芯片供應(yīng)商處免費(fèi)索取和隨編譯工具附送的手冊(cè)附送光盤(pán)中有我為這本書(shū)編寫(xiě)和收集的程序這些程序已經(jīng)通過(guò)測(cè)試這并不意味著你可以隨時(shí)把這些程序加到你的應(yīng)用系統(tǒng)或工程中有些地方必須首先經(jīng)過(guò)修改才能結(jié)合到你的程序中這本書(shū)將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書(shū)和使用這些例子但是你必須把C 語(yǔ)言的程序裝入你的匯編程序中這對(duì)懂得C 語(yǔ)言和8051匯編程序指令的人來(lái)說(shuō)并不是一件困難的事如果你有C 編譯器的話(huà)那恭喜你使用C 語(yǔ)言進(jìn)行開(kāi)發(fā)是一個(gè)好的決定你會(huì)發(fā)現(xiàn)使用C 進(jìn)行開(kāi)發(fā)將使你的工程開(kāi)發(fā)和維護(hù)的時(shí)間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個(gè)非常好的開(kāi)發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書(shū)支持Keil C 的擴(kuò)展如果你有其它的開(kāi)發(fā)工具像Archimedes 和Avocet 這本書(shū)也能很好地為你服務(wù)但你必須根據(jù)你所用的開(kāi)發(fā)工具改變一些Keil 的特殊指令在書(shū)的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書(shū)看成工具書(shū)而不是用來(lái)學(xué)習(xí)各種系統(tǒng)設(shè)計(jì)通過(guò)本書(shū)你可以了解給定一定的硬件和軟件設(shè)計(jì)之后8051 的各種性能希望你能從本書(shū)中獲取靈感并有助于你的設(shè)計(jì)使你豁然開(kāi)朗當(dāng)然我希望你也能夠從本書(shū)中學(xué)到有用的知識(shí)使之能夠提升你的設(shè)計(jì)
標(biāo)簽: 51單片機(jī)C語(yǔ)言 編程手冊(cè)
上傳時(shí)間: 2013-11-01
上傳用戶(hù):cjh1129
MSP430系列C編譯器編程指南第1章 安裝和文檔關(guān)系圖本章說(shuō)明如何安裝和運(yùn)行IAR 產(chǎn)品的命令行和Windwos Workbench 版本并給出與產(chǎn)品一起提供的用戶(hù)指南的概述請(qǐng)注意某此產(chǎn)品只有命令行版本且根據(jù)用戶(hù)正在使用的產(chǎn)品或平臺(tái)資料可能稍有不同1.1 命令行版本本節(jié)敘述怎樣安裝和運(yùn)得IAR 系統(tǒng)工具的命令版本1.1.1 用戶(hù)需要什么 DOS 4.X 或更高版本此產(chǎn)品也和運(yùn)行在Windows95, Windows NT 3.51 或更高版本或Windows 3.1 X 下的DOS 窗口相兼容 至少 10M 字節(jié)的自由磁盤(pán)空間 最少有 4M 字節(jié)的RAM 可供IAR 應(yīng)用程序使用
上傳時(shí)間: 2013-11-22
上傳用戶(hù):agent
MSP430系列單片機(jī)C語(yǔ)言程序設(shè)計(jì)與開(kāi)發(fā)MSP430系列是一個(gè)具有明顯技術(shù)特色的單片機(jī)品種。關(guān)于它的硬件特性及匯編語(yǔ)言程序設(shè)計(jì)已在《MSP430系列超低功耗16位單片機(jī)的原理與應(yīng)用》及《MSP430系列 FLASH型超低功耗16位單片機(jī)》等書(shū)中作了全面介紹。《MSP430系列單片機(jī)C語(yǔ)言程序設(shè)計(jì)與開(kāi)發(fā)》介紹IAR公司為MSP430系列單片機(jī)配備的C程序設(shè)計(jì)語(yǔ)言C430。書(shū)中敘述了C語(yǔ)言的基本概念、C430的擴(kuò)展特性及C庫(kù)函數(shù);對(duì)C430的集成開(kāi)發(fā)環(huán)境的使用及出錯(cuò)信息作了詳盡的說(shuō)明;并以MSP430F149為例,對(duì)各種應(yīng)用問(wèn)題及外圍模塊操作提供了典型的C程序例程,供讀者在今后的C430程序設(shè)計(jì)中參考。 《MSP430系列單片機(jī)C語(yǔ)言程序設(shè)計(jì)與開(kāi)發(fā)》可以作為高等院校計(jì)算機(jī)、自動(dòng)化及電子技術(shù)類(lèi)專(zhuān)業(yè)的教學(xué)參考書(shū),也可作為工程技術(shù)人員設(shè)計(jì)開(kāi)發(fā)時(shí)的技術(shù)資料。MSP430系列超低功耗16位單片機(jī)的原理與應(yīng)用目錄MSP430系列單片機(jī)C語(yǔ)言程序設(shè)計(jì)與開(kāi)發(fā) 目錄 第1章 C語(yǔ)言基本知識(shí)1.1 標(biāo)識(shí)符與關(guān)鍵字11.1.1 標(biāo)識(shí)符11.1.2 關(guān)鍵字11.2 數(shù)據(jù)基本類(lèi)型21.2.1 整型數(shù)據(jù)21.2.2 實(shí)型數(shù)據(jù)31.2.3 字符型數(shù)據(jù)41.2.4 各種數(shù)據(jù)轉(zhuǎn)換關(guān)系61.3 C語(yǔ)言的運(yùn)算符71.3.1 算術(shù)運(yùn)算符71.3.2 關(guān)系運(yùn)算符和邏輯運(yùn)算符71.3.3 賦值運(yùn)算符81.3.4 逗號(hào)運(yùn)算符81.3.5 ? 與 :運(yùn)算符81.3.6 強(qiáng)制轉(zhuǎn)換運(yùn)算符91.3.7 各種運(yùn)算符優(yōu)先級(jí)列表91.4 程序設(shè)計(jì)的三種基本結(jié)構(gòu)101.4.1 語(yǔ)句的概念101.4.2 順序結(jié)構(gòu)111.4.3 選擇結(jié)構(gòu)121.4.4 循環(huán)結(jié)構(gòu)141.5 函數(shù)181.5.1 函數(shù)定義181.5.2 局部變量與全局變量191.5.3 形式參數(shù)與實(shí)際參數(shù)201.5.4 函數(shù)調(diào)用方式201.5.5 函數(shù)嵌套調(diào)用211.5.6 變量的存儲(chǔ)類(lèi)別221.5.7 內(nèi)部函數(shù)和外部函數(shù)231.6 數(shù)組231.6.1 一維數(shù)組241.6.2 多維數(shù)組241.6.3 字符數(shù)組261.7 指針271.7.1 指針與地址的概念271.7.2 指針變量的定義281.7.3 指針變量的引用281.7.4 數(shù)組的指針281.7.5 函數(shù)的指針301.7.6 指針數(shù)組311.8 結(jié)構(gòu)和聯(lián)合321.8.1 結(jié)構(gòu)定義321.8.2 結(jié)構(gòu)類(lèi)型變量的定義331.8.3 結(jié)構(gòu)類(lèi)型變量的初始化341.8.4 結(jié)構(gòu)類(lèi)型變量的引用341.8.5 聯(lián)合341.9 枚舉361.9.1 枚舉的定義361.9.2 枚舉元素的值371.9. 3 枚舉變量的使用371.10 類(lèi)型定義381.10.1 類(lèi)型定義的形式381.10.2 類(lèi)型定義的使用381.11 位運(yùn)算391.11.1 位運(yùn)算符391.11.2 位域401.12 預(yù)處理功能411.12.1 簡(jiǎn)單宏定義和帶參數(shù)宏定義411.12.2 文件包含431.12.3 條件編譯命令44第2章 C430--MSP430系列的C語(yǔ)言2.1 MSP430系列的C語(yǔ)言452.1.1 C430概述452.1.2 C430程序設(shè)計(jì)工作流程462.1.3 開(kāi)始462.1.4 C430程序生成472.2 C430的數(shù)據(jù)表達(dá)482.2.1 數(shù)據(jù)類(lèi)型482.2.2 編碼效率502.3 C430的配置512.3.1 引言512.3. 2 存儲(chǔ)器分配522.3.3 堆棧體積522.3.4 輸入輸出522.3.5 寄存器的訪問(wèn)542.3.6 堆體積542.3.7 初始化54第3章 C430的開(kāi)發(fā)調(diào)試環(huán)境3.1 引言563.1.1 Workbench特性563.1.2 Workbench的內(nèi)嵌編輯器特性563.1.3 C編譯器特性573.1. 4 匯編器特性573.1.5 連接器特性583.1.6 庫(kù)管理器特性583.1.7 C?SPY調(diào)試器特性593.2 Workbench概述593.2.1 項(xiàng)目管理模式593.2.2 選項(xiàng)設(shè)置603.2.3 建立項(xiàng)目603.2.4 測(cè)試代碼613.2.5 樣本應(yīng)用程序613.3 Workbench的操作623.3.1 開(kāi)始633.3.2 編譯項(xiàng)目683.3.3 連接項(xiàng)目693.3.4 調(diào)試項(xiàng)目713.3.5 使用Make命令733.4 Workbench的功能匯總753.4.1 Workbench的窗口753.4.2 Workbench的菜單功能813.5 Workbench的內(nèi)嵌編輯器993.5.1 內(nèi)嵌編輯器操作993.5.2 編輯鍵說(shuō)明993.6 C?SPY概述1013.6.1 C?SPY的C語(yǔ)言級(jí)和匯編語(yǔ)言級(jí)調(diào)試1013.6.2 程序的執(zhí)行1023.7 C?SPY的操作1033.7.1 程序生成1033.7.2 編譯與連接1033.7.3 C?SPY運(yùn)行1033.7.4 C語(yǔ)言級(jí)調(diào)試1043.7.5 匯編級(jí)調(diào)試1113.8 C?SPY的功能匯總1133.8.1 C?SPY的窗口1133.8.2 C?SPY的菜單命令功能1203.9 C?SPY的表達(dá)式與宏1323.9.1 匯編語(yǔ)言表達(dá)式1323.9.2 C語(yǔ)言表達(dá)式1333.9.3 C?SPY宏1353.9.4 C?SPY的設(shè)置宏1373.9.5 C?SPY的系統(tǒng)宏137 第4章 C430程序設(shè)計(jì)實(shí)例4.1 程序設(shè)計(jì)與調(diào)試環(huán)境1434.1.1 程序設(shè)計(jì)調(diào)試集成環(huán)境1434.1.2 設(shè)備連接1444.1.3 ProF149實(shí)驗(yàn)系統(tǒng)1444.2 數(shù)值計(jì)算1454.2.1 C語(yǔ)言表達(dá)式1454.2.2 利用MPY實(shí)現(xiàn)運(yùn)算1464.3 循環(huán)結(jié)構(gòu)1474.4 選擇結(jié)構(gòu)1484.5 SFR訪問(wèn)1494.6 RAM訪問(wèn)1504.7 FLASH訪問(wèn)1514.8 WDT操作1534.8. 1 WDT使程序自動(dòng)復(fù)位1534.8.2 程序?qū)ATCHDOG計(jì)數(shù)溢出的控制1544.8.3 WDT的定時(shí)器功能1554.9 Timer操作1554.9.1 用Timer產(chǎn)生時(shí)鐘信號(hào)1554.9.2 用Timer檢測(cè)脈沖寬度1564.10 UART操作1574.10.1 點(diǎn)對(duì)點(diǎn)通信1574.10.2 點(diǎn)對(duì)多點(diǎn)通信1604.11 SPI操作1634.12 比較器操作1654.13 ADC12操作1674.13.1 單通道單次轉(zhuǎn)換1674.13.2 序列通道多次轉(zhuǎn)換1684.14 時(shí)鐘模塊操作1704.15 中斷服務(wù)程序1714.16 省電工作模式1754.17 調(diào)用匯編語(yǔ)言子程序1764.17.1 程序舉例1764.17.2 生成C程序調(diào)用的匯編子程序177第5章 C430的擴(kuò)展特性5.1 C430的語(yǔ)言擴(kuò)展概述1785.1.1 擴(kuò)展關(guān)鍵字1785.1.2 #pragma編譯命令1785.1.3 預(yù)定義符號(hào)1795.1.4 本征函數(shù)1795.1.5 其他擴(kuò)展特性1795.2 C430的關(guān)鍵字?jǐn)U展1795.2.1 interrupt1805.2.2 monitor1805.2.3 no_init1815.2.4 sfrb1815.2.5 sfrw1825.3 C430的 #pragma編譯命令1825.3.1 bitfields=default1825.3.2 bitfields=reversed1825.3.3 codeseg1835.3.4 function=default1835.3.5 function=interrupt1845.3.6 function=monitor1845.3.7 language=default1845.3.8 language=extended1845.3.9 memory=constseg1855.3.10 memory=dataseg1855.3.11 memory=default1855.3.12 memory=no_init1865.3.13 warnings=default1865.3.14 warnings=off1865.3.15 warnings=on1865.4 C430的預(yù)定義符號(hào)1865.4.1 DATE1875.4.2 FILE1875.4.3 IAR_SYSTEMS_ICC1875.4.4 LINE1875.4.5 STDC1875.4.6 TID1875.4.7 TIME1885.4.8 VER1885.5 C430的本征函數(shù)1885.5.1 _args$1885.5.2 _argt$1895.5.3 _BIC_SR1895.5.4 _BIS_SR1905.5.5 _DINT1905.5.6 _EINT1905.5.7 _NOP1905.5.8 _OPC1905.6 C430的匯編語(yǔ)言接口1915.6.1 創(chuàng)建匯編子程序框架1915.6.2 調(diào)用規(guī)則1915.6.3 C程序調(diào)用匯編子程序1935.7 C430的段定義1935.7.1 存儲(chǔ)器分布與段定義1945.7.2 CCSTR段1945.7.3 CDATA0段1945.7.4 CODE段1955.7.5 CONST1955.7.6 CSTACK1955.7.7 CSTR1955.7.8 ECSTR1955.7.9 IDATA01965.7.10 INTVEC1965.7.11 NO_INIT1965.7.12 UDATA0196第6章 C430的庫(kù)函數(shù)6.1 引言1976.1.1 庫(kù)模塊文件1976.1.2 頭文件1976.1.3 庫(kù)定義匯總1976.2C 庫(kù)函數(shù)參考2046.2.1 C庫(kù)函數(shù)的說(shuō)明格式2046.2.2 C庫(kù)函數(shù)說(shuō)明204第7章 C430編譯器的診斷消息7.1 編譯診斷消息的類(lèi)型2307.2 編譯出錯(cuò)消息2317.3 編譯警告消息243附錄 AMSP430系列FLASH型芯片資料248附錄 BProF149實(shí)驗(yàn)系統(tǒng)251附錄 CMSP430x14x.H文件253附錄 DIAR MSP430 C語(yǔ)言產(chǎn)品介紹275
標(biāo)簽: MSP 430 C語(yǔ)言 單片機(jī)
上傳時(shí)間: 2014-05-05
上傳用戶(hù):253189838
單片機(jī)C語(yǔ)言應(yīng)用程序設(shè)計(jì)針對(duì)目前最通用的單片機(jī)8051和最流行的程序設(shè)計(jì)語(yǔ)言——C語(yǔ)言,以KEII。公司8051單片機(jī)開(kāi)發(fā)套件講解單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)。該套件的編譯器有支持經(jīng)典8051及8051派生產(chǎn)品的版本,統(tǒng)稱(chēng)為Cx51。Windows集成開(kāi)發(fā)環(huán)境μVision2把μVisionl用的模擬調(diào)試器dScope與集成環(huán)境無(wú)縫結(jié)合起來(lái),使用更方便,支持的單片機(jī)品種更多。 本書(shū)的特點(diǎn)是取材于原文資料,總結(jié)實(shí)際教學(xué)和應(yīng)用經(jīng)驗(yàn),實(shí)例較多,實(shí)用性強(qiáng)。本書(shū)中C語(yǔ)言是針對(duì)8051特有結(jié)構(gòu)描述的,這樣,即使無(wú)編程基礎(chǔ)的人,也可通過(guò)本書(shū)學(xué)習(xí)單片機(jī)的c編程。單片機(jī)C語(yǔ)言應(yīng)用程序設(shè)計(jì)目錄第1章 單片機(jī)基礎(chǔ)知識(shí) 1.1 8051單片機(jī)的特點(diǎn) 1.2 8051的內(nèi)部知識(shí) 1.3 8051的系統(tǒng)擴(kuò)展 習(xí)題一第2章 C與8051 2.1 8051的編程語(yǔ)言 2.2 Cx51編譯器 2.3 KEIL 8051開(kāi)發(fā)工具 2.4 KEIL Cx51編程實(shí)例 2.5 Cx51程序結(jié)構(gòu) 習(xí)題二第3章 Cx51 數(shù)據(jù)與運(yùn)算 3.1 數(shù)據(jù)與數(shù)據(jù)類(lèi)型 3.2 常量與變量 3.3 Cx51數(shù)據(jù)存儲(chǔ)類(lèi)型與8051存儲(chǔ)器結(jié)構(gòu) 3.4 8051特殊功能寄存器(SFR)及其Cx51定義 3.5 8051并行接口及其Cx51定義 3.6 位變量(BIT)及其Cx51定義 3.7 Cx51運(yùn)算符、表達(dá)式及其規(guī)則 習(xí)題三第4章 Cx51 流程控制語(yǔ)句 4.1 C語(yǔ)言程序的基本結(jié)構(gòu)及其流程圖 4.2 選擇語(yǔ)句 4.3 循環(huán)語(yǔ)句 習(xí)題四第5章 Cx51 構(gòu)造數(shù)據(jù)類(lèi)型 5.1 數(shù)組 5.2 指針 5.3 結(jié)構(gòu) 5.4 共用體 5.5 枚舉 習(xí)題五第6章 Cx51 函數(shù)第7章 模塊化程序設(shè)計(jì)第8章 8051內(nèi)部資源的C編輯第9章 8051擴(kuò)展資源的C編輯第10章 8051輸出控制的C編程第11章 8051數(shù)據(jù)采集的C編程第12章 8051機(jī)間通信的C編程第13章 8051人機(jī)交互的C編程附錄A μVision2集成開(kāi)發(fā)環(huán)境使用附錄B KEIL Cx51 上機(jī)制南
標(biāo)簽: 單片機(jī) C語(yǔ)言 應(yīng)用程序
上傳時(shí)間: 2013-10-21
上傳用戶(hù):行者Xin
用C 語(yǔ)言來(lái)開(kāi)發(fā)單片機(jī)系統(tǒng)軟件最大的好處是編寫(xiě)代碼效率高、軟件調(diào)試直觀、維護(hù)升級(jí)方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等等,因此C 語(yǔ)言編程在單片機(jī)系統(tǒng)設(shè)計(jì)中已得到越來(lái)越廣泛的運(yùn)用。針對(duì)PIC 單片機(jī)的軟件開(kāi)發(fā),同樣可以用C 語(yǔ)言實(shí)現(xiàn)。但在單片機(jī)上用C 語(yǔ)言寫(xiě)程序和在PC 機(jī)上寫(xiě)程序絕對(duì)不能簡(jiǎn)單等同。現(xiàn)在的PC 機(jī)資源十分豐富,運(yùn)算能力強(qiáng)大,因此程序員在寫(xiě)PC 機(jī)的應(yīng)用程序時(shí)幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運(yùn)行過(guò)程中需要占用多少系統(tǒng)資源,也基本不用擔(dān)心運(yùn)行效率有多高。寫(xiě)單片機(jī)的C 程序最關(guān)鍵的一點(diǎn)是單片機(jī)內(nèi)的資源非常有限,控制的實(shí)時(shí)性要求又很高,因此,如果沒(méi)有對(duì)單片機(jī)體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見(jiàn)認(rèn)為是無(wú)法寫(xiě)出高質(zhì)量實(shí)用的C 語(yǔ)言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實(shí)現(xiàn)的原因,希望籍此能使讀者對(duì)PIC 單片機(jī)的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來(lái)討論C 語(yǔ)言編程,就有水到渠成的感覺(jué)。本書(shū)圍繞中檔系列PIC 單片機(jī)來(lái)展開(kāi)討論,Microchip 公司自己沒(méi)有針對(duì)中低檔系列PIC單片機(jī)的C 語(yǔ)言編譯器,但很多專(zhuān)業(yè)的第三方公司有眾多支持PIC 單片機(jī)的C 語(yǔ)言編譯器提供,常見(jiàn)的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機(jī)進(jìn)行系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的工程師群體中得到廣泛認(rèn)可。其正式完全版軟件需要購(gòu)置,但在其網(wǎng)站上有限時(shí)的試用版供用戶(hù)評(píng)估。另外,Hitech 公司針對(duì)廣大PIC 的業(yè)余愛(ài)好者和初學(xué)者還提供了完全免費(fèi)的學(xué)習(xí)版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機(jī)型號(hào)限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機(jī)因其所具備的豐富的片上資源而最適用于單片機(jī)學(xué)習(xí)入門(mén),因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機(jī)的C 語(yǔ)言編程。
上傳時(shí)間: 2013-11-17
上傳用戶(hù):aa54
AVR單片機(jī)C語(yǔ)言開(kāi)發(fā)入門(mén)指導(dǎo):本書(shū)介紹了ICCAVR編譯器使用C語(yǔ)言的有關(guān)知識(shí),也穿插介紹ICCAVR與常用的其他C編譯器使用C語(yǔ)言的一些異同點(diǎn),并簡(jiǎn)單介紹ICCAVR的集成環(huán)境和ICCAVR 6.26C能支持的庫(kù)函數(shù)。本書(shū)重點(diǎn)放在如何利用C語(yǔ)言來(lái)操作AVR單片機(jī)的硬件資源,以及如何編寫(xiě)一些實(shí)用的程序段,最后再通過(guò)一些簡(jiǎn)單的應(yīng)用實(shí)例來(lái)說(shuō)明如何使用C語(yǔ)言一開(kāi)發(fā)AVR芯片。本書(shū)適合開(kāi)發(fā)AVR單片機(jī)的工程技術(shù)人員,也適合大中專(zhuān)院校。 推薦圖書(shū):介紹了C語(yǔ)言知識(shí)、并給出了操作單片機(jī)硬件的例程,后面簡(jiǎn)單地介紹了其它幾款C編譯器。本書(shū)非常適合AVR單片機(jī)初學(xué)者學(xué)習(xí)使用。
上傳時(shí)間: 2013-10-23
上傳用戶(hù):liglechongchong
這是一本關(guān)于Intel 80C51 以及廣大的51 系列單片機(jī)的書(shū)這本書(shū)介紹給讀者一些新的技術(shù)使你的8051 工程和開(kāi)發(fā)過(guò)程變得簡(jiǎn)單請(qǐng)注意這本書(shū)的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問(wèn)題討論更加清晰在適當(dāng)?shù)牡胤浇o出了程序代碼我們以討論項(xiàng)目的方法來(lái)說(shuō)明每章碰到的問(wèn)題所有的代碼都可在附帶的光盤(pán)上找到你必須熟系C 和8051 匯編因?yàn)楸緯?shū)不是一本C 和匯編的指導(dǎo)書(shū)你可以買(mǎi)到不少關(guān)于ANSI C 的書(shū)最佳選擇當(dāng)然是Intel的數(shù)據(jù)書(shū)可從你的芯片供應(yīng)商處免費(fèi)索取和隨編譯工具附送的手冊(cè)附送光盤(pán)中有我為這本書(shū)編寫(xiě)和收集的程序這些程序已經(jīng)通過(guò)測(cè)試這并不意味著你可以隨時(shí)把這些程序加到你的應(yīng)用系統(tǒng)或工程中有些地方必須首先經(jīng)過(guò)修改才能結(jié)合到你的程序中這本書(shū)將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書(shū)和使用這些例子但是你必須把C 語(yǔ)言的程序裝入你的匯編程序中這對(duì)懂得C 語(yǔ)言和8051匯編程序指令的人來(lái)說(shuō)并不是一件困難的事如果你有C 編譯器的話(huà)那恭喜你使用C 語(yǔ)言進(jìn)行開(kāi)發(fā)是一個(gè)好的決定你會(huì)發(fā)現(xiàn)使用C 進(jìn)行開(kāi)發(fā)將使你的工程開(kāi)發(fā)和維護(hù)的時(shí)間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個(gè)非常好的開(kāi)發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書(shū)支持Keil C 的擴(kuò)展如果你有其它的開(kāi)發(fā)工具像Archimedes 和Avocet 這本書(shū)也能很好地為你服務(wù)但你必須根據(jù)你所用的開(kāi)發(fā)工具改變一些Keil 的特殊指令在書(shū)的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書(shū)看成工具書(shū)而不是用來(lái)學(xué)習(xí)各種系統(tǒng)設(shè)計(jì)通過(guò)本書(shū)你可以了解給定一定的硬件和軟件設(shè)計(jì)之后8051 的各種性能希望你能從本書(shū)中獲取靈感并有助于你的設(shè)計(jì)使你豁然開(kāi)朗當(dāng)然我希望你也能夠從本書(shū)中學(xué)到有用的知識(shí)使之能夠提升你的設(shè)計(jì) 8051 系列微處理器基于簡(jiǎn)化的嵌入式控制系統(tǒng)結(jié)構(gòu)被廣泛應(yīng)用于從軍事到自動(dòng)控制再到PC 機(jī)上的鍵盤(pán)上的各種應(yīng)用系統(tǒng)上僅次于Motorola 68HC11 在 8 位微控制器市場(chǎng)上的銷(xiāo)量很多制造商都可提供8051 系列單片機(jī)像Intel Philips Siemens 等這些制造商給51 系列單片機(jī)加入了大量的性能和外部功能像I2C 總線接口模擬量到數(shù)字量的轉(zhuǎn)換看門(mén)狗PWM 輸出等不少芯片的工作頻率達(dá)到40M 工作電壓下降到1.5V 基于一個(gè)內(nèi)核的這些功能使得8051 單片機(jī)很適合作為廠家產(chǎn)品的基本構(gòu)架它能夠運(yùn)行各種程序而且開(kāi)發(fā)者只需要學(xué)習(xí)這一個(gè)平臺(tái)8051 系列的基本結(jié)構(gòu)如下1 一個(gè)8 位算術(shù)邏輯單元2 32 個(gè)I/O 口4 組8 位端口可單獨(dú)尋址3 兩個(gè)16 位定時(shí)計(jì)數(shù)器4 全雙工串行通信5 6 個(gè)中斷源兩個(gè)中斷優(yōu)先級(jí)6 128 字節(jié)內(nèi)置RAM7 獨(dú)立的64K 字節(jié)可尋址數(shù)據(jù)和代碼區(qū)每個(gè)8051 處理周期包括12 個(gè)振蕩周期每12 個(gè)振蕩周期用來(lái)完成一項(xiàng)操作如取指令和計(jì)算指令執(zhí)行時(shí)間可把時(shí)鐘頻率除以12 取倒數(shù)然后指令執(zhí)行所須的周期數(shù)因此如果你的系統(tǒng)時(shí)鐘是11.059MHz 除以12 后就得到了每秒執(zhí)行的指令個(gè)數(shù)為921583條指令取倒數(shù)將得到每條指令所須的時(shí)間1.085ms
上傳時(shí)間: 2013-11-09
上傳用戶(hù):chenlong
C語(yǔ)言編程基礎(chǔ):1. 十六進(jìn)制表示字節(jié)0x5a:二進(jìn)制為01011010B;0x6E為01101110。 2. 如果將一個(gè)16位二進(jìn)數(shù)賦給一個(gè)8位的字節(jié)變量,則自動(dòng)截?cái)酁榈?位,而丟掉高8位。 3. ++var表示對(duì)變量var先增一;var—表示對(duì)變量后減一。 4. x |= 0x0f;表示為 x = x | 0x0f; 5. TMOD = ( TMOD & 0xf0 ) | 0x05;表示給變量TMOD的低四位賦值0x5,而不改變TMOD的高四位。 6. While( 1 ); 表示無(wú)限執(zhí)行該語(yǔ)句,即死循環(huán)。語(yǔ)句后的分號(hào)表示空循環(huán)體,也就是{;} 在某引腳輸出高電平的編程方法:(比如P1.3(PIN4)引腳)1. #include <AT89x52.h> //該頭文檔中有單片機(jī)內(nèi)部資源的符號(hào)化定義,其中包含P1.3 2. void main( void ) //void 表示沒(méi)有輸入?yún)?shù),也沒(méi)有函數(shù)返值,這入單片機(jī)運(yùn)行的復(fù)位入口 3. { 4. P1_3 = 1; //給P1_3賦值1,引腳P1.3就能輸出高電平VCC 5. While( 1 ); //死循環(huán),相當(dāng) LOOP: goto LOOP; 6. } 注意:P0的每個(gè)引腳要輸出高電平時(shí),必須外接上拉電阻(如4K7)至VCC電源。在某引腳輸出低電平的編程方法:(比如P2.7引腳)代碼1. #include <AT89x52.h> //該頭文檔中有單片機(jī)內(nèi)部資源的符號(hào)化定義,其中包含P2.7 2. void main( void ) //void 表示沒(méi)有輸入?yún)?shù),也沒(méi)有函數(shù)返值,這入單片機(jī)運(yùn)行的復(fù)位入口 3. { 4. P2_7 = 0; //給P2_7賦值0,引腳P2.7就能輸出低電平GND 5. While( 1 ); //死循環(huán),相當(dāng) LOOP: goto LOOP; 6. } 在某引腳輸出方波編程方法:(比如P3.1引腳)代碼1. #include <AT89x52.h> //該頭文檔中有單片機(jī)內(nèi)部資源的符號(hào)化定義,其中包含P3.1 2. void main( void ) //void 表示沒(méi)有輸入?yún)?shù),也沒(méi)有函數(shù)返值,這入單片機(jī)運(yùn)行的復(fù)位入口 3. { 4. While( 1 ) //非零表示真,如果為真則執(zhí)行下面循環(huán)體的語(yǔ)句 5. { 6. P3_1 = 1; //給P3_1賦值1,引腳P3.1就能輸出高電平VCC 7. P3_1 = 0; //給P3_1賦值0,引腳P3.1就能輸出低電平GND 8. } //由于一直為真,所以不斷輸出高、低、高、低……,從而形成方波 9. } 將某引腳的輸入電平取反后,從另一個(gè)引腳輸出:( 比如 P0.4 = NOT( P1.1) )
標(biāo)簽: 51單片機(jī)C語(yǔ)言 編程實(shí)例
上傳時(shí)間: 2013-11-02
上傳用戶(hù):zengduo
用C 語(yǔ)言來(lái)開(kāi)發(fā)單片機(jī)系統(tǒng)軟件最大的好處是編寫(xiě)代碼效率高、軟件調(diào)試直觀、維護(hù)升級(jí)方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等等,因此C 語(yǔ)言編程在單機(jī)系統(tǒng)設(shè)計(jì)中已得到越來(lái)越廣泛的運(yùn)用。針對(duì)PIC 單片機(jī)的軟件開(kāi)發(fā),同樣可以用C 語(yǔ)言實(shí)現(xiàn)。但在單片機(jī)上用C 語(yǔ)言寫(xiě)程序和在PC 機(jī)上寫(xiě)程序絕對(duì)不能簡(jiǎn)單等同。現(xiàn)在的PC 機(jī)資源十分豐富,運(yùn)算能力強(qiáng)大,因此程序員在寫(xiě)PC 機(jī)的應(yīng)用程序時(shí)幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運(yùn)行過(guò)程中需要占用多少系統(tǒng)資源,也基本不用擔(dān)心運(yùn)行效率有多高。寫(xiě)單片機(jī)的C 程序最關(guān)鍵的一點(diǎn)是單片機(jī)內(nèi)的資源非常有限,控制的實(shí)時(shí)性要求又很高,因此,如果沒(méi)有對(duì)單片機(jī)體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見(jiàn)認(rèn)為是無(wú)法寫(xiě)出高質(zhì)量實(shí)用的C 語(yǔ)言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實(shí)現(xiàn)的原因,希望籍此能使讀者對(duì)PIC 單片機(jī)的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來(lái)討論C 語(yǔ)言編程,就有水到渠成的感覺(jué)。本書(shū)圍繞中檔系列PIC 單片機(jī)來(lái)展開(kāi)討論,Microchip 公司自己沒(méi)有針對(duì)中低檔系列PIC單片機(jī)的C 語(yǔ)言編譯器,但很多專(zhuān)業(yè)的第三方公司有眾多支持PIC 單片機(jī)的C 語(yǔ)言編譯器提供,常見(jiàn)的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC 編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機(jī)進(jìn)行系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的工程師群體中得到廣泛認(rèn)可。其正式完全版軟件需要購(gòu)置,但在其網(wǎng)站上有限時(shí)的試用版供用戶(hù)評(píng)估。另外,Hitech 公司針對(duì)廣大PIC 的業(yè)余愛(ài)好者和初學(xué)者還提供了完全免費(fèi)的學(xué)習(xí)版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機(jī)型號(hào)限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機(jī)因其所具備的豐富的片上資源而最適用于單片機(jī)學(xué)習(xí)入門(mén),因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機(jī)的C 語(yǔ)言編程。
標(biāo)簽: PIC C語(yǔ)言編程 單片機(jī)
上傳時(shí)間: 2013-11-12
上傳用戶(hù):wfeel
PIC 單片機(jī)C 語(yǔ)言編程簡(jiǎn)介用C 語(yǔ)言來(lái)開(kāi)發(fā)單片機(jī)系統(tǒng)軟件最大的好處是編寫(xiě)代碼效率高、軟件調(diào)試直觀、維護(hù)升級(jí)方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等等,因此C 語(yǔ)言編程在單片機(jī)系統(tǒng)設(shè)計(jì)中已得到越來(lái)越廣泛的運(yùn)用。針對(duì)PIC 單片機(jī)的軟件開(kāi)發(fā),同樣可以用C 語(yǔ)言實(shí)現(xiàn)。但在單片機(jī)上用C 語(yǔ)言寫(xiě)程序和在PC 機(jī)上寫(xiě)程序絕對(duì)不能簡(jiǎn)單等同。現(xiàn)在的PC 機(jī)資源十分豐富,運(yùn)算能力強(qiáng)大,因此程序員在寫(xiě)PC 機(jī)的應(yīng)用程序時(shí)幾乎不用關(guān)心編譯后的可執(zhí)行代碼在運(yùn)行過(guò)程中需要占用多少系統(tǒng)資源,也基本不用擔(dān)心運(yùn)行效率有多高。寫(xiě)單片機(jī)的C 程序最關(guān)鍵的一點(diǎn)是單片機(jī)內(nèi)的資源非常有限,控制的實(shí)時(shí)性要求又很高,因此,如果沒(méi)有對(duì)單片機(jī)體系結(jié)構(gòu)和硬件資源作詳盡的了解,以筆者的愚見(jiàn)認(rèn)為是無(wú)法寫(xiě)出高質(zhì)量實(shí)用的C 語(yǔ)言程序。這就是為什么前面所有章節(jié)中的的示范代碼全部用基礎(chǔ)的匯編指令實(shí)現(xiàn)的原因,希望籍此能使讀者對(duì)PIC 單片機(jī)的指令體系和硬件資源有深入了解,在這基礎(chǔ)之上再來(lái)討論C 語(yǔ)言編程,就有水到渠成的感覺(jué)。本書(shū)圍繞中檔系列PIC 單片機(jī)來(lái)展開(kāi)討論,Microchip 公司自己沒(méi)有針對(duì)中低檔系列PIC單片機(jī)的C 語(yǔ)言編譯器,但很多專(zhuān)業(yè)的第三方公司有眾多支持PIC 單片機(jī)的C 語(yǔ)言編譯器提供,常見(jiàn)的有Hitech、CCS、IAR、Bytecraft 等公司。其中筆者最常用的是Hitech 公司的PICC 編譯器,它穩(wěn)定可靠,編譯生成的代碼效率高,在用PIC 單片機(jī)進(jìn)行系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的工程師群體中得到廣泛認(rèn)可。其正式完全版軟件需要購(gòu)置,但在其網(wǎng)站上有限時(shí)的試用版供用戶(hù)評(píng)估。另外,Hitech 公司針對(duì)廣大PIC 的業(yè)余愛(ài)好者和初學(xué)者還提供了完全免費(fèi)的學(xué)習(xí)版PICC-Lite 編譯器套件,它的使用方式和完全版相同,只是支持的PIC 單片機(jī)型號(hào)限制在PIC16F84、PIC16F877 和PIC16F628 等幾款。這幾款Flash 型的單片機(jī)因其所具備的豐富的片上資源而最適用于單片機(jī)學(xué)習(xí)入門(mén),因此筆者建議感興趣的讀者可從PICC-Lite 入手掌握PIC 單片機(jī)的C 語(yǔ)言編程。
標(biāo)簽: pic 單片機(jī)c語(yǔ)言 教程
上傳時(shí)間: 2013-11-17
上傳用戶(hù):15527161163
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1