天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

PIC單片機(jī)C語(yǔ)言程序設(shè)計(jì)

發(fā)布時(shí)間:2017-02-18 08:32

  本文關(guān)鍵詞:單片機(jī)C語(yǔ)言程序設(shè)計(jì),由筆耕文化傳播整理發(fā)布。


  編者按:為了幫助具有PIC單片機(jī)匯編語(yǔ)言知識(shí)的技術(shù)人員或工程師,快速掌握利用C語(yǔ)言編寫(xiě)PIC單片機(jī)程序的方法,本刊特推出《PIC單片機(jī)C語(yǔ)言程序設(shè)計(jì)》系列連載文章。丈中給出的C語(yǔ)言程序?qū)嵗,均是可?zhí)行的,讀者可以放心引用。

  一、匯編語(yǔ)言與C語(yǔ)言

  早期的單片機(jī)程序多采用匯編語(yǔ)言編寫(xiě)。用匯編語(yǔ)言編程,直接、簡(jiǎn)捷,可有效地訪問(wèn)和控制各種硬件設(shè)備,如存儲(chǔ)器、I/O口等,目標(biāo)代碼簡(jiǎn)短、占用內(nèi)存少、執(zhí)行速度快、語(yǔ)句效率高。然而,由于匯編語(yǔ)言是面向機(jī)器的語(yǔ)言,不同廠家或同廠家不同系列的單片機(jī)。其匯編語(yǔ)言指令系統(tǒng)往往互不相同,即通常所說(shuō)的“不兼容”。這就出現(xiàn)了精通51單片機(jī)匯編語(yǔ)言的人不能直接編寫(xiě)PIC或其他單片機(jī)的匯編語(yǔ)言源程序,反之亦然的現(xiàn)象,以及產(chǎn)品升級(jí)換代和不同單片機(jī)問(wèn)程序移植難的問(wèn)題。而且,由于匯編語(yǔ)言是采用助記符的低級(jí)語(yǔ)言,可讀性較差,當(dāng)源程序功能多、程序長(zhǎng)時(shí),即使加了注釋?zhuān)喿x自己編寫(xiě)的程序也會(huì)感到困難,更不用說(shuō)修改程序和增加功能了。

  目前,單片機(jī)的應(yīng)用越來(lái)越廣,各半導(dǎo)體生產(chǎn)廠家不斷推出各種高、中、低檔單片機(jī)系列,以適應(yīng)市場(chǎng)的需求。而客戶對(duì)單片機(jī)系統(tǒng)的設(shè)計(jì)人員的基本要求,就是要選擇能夠滿足產(chǎn)品性能和成本要求的單片機(jī),并以最快的速度開(kāi)發(fā)出完全滿足市場(chǎng)需求的智能化產(chǎn)品。用匯編語(yǔ)言編程顯然無(wú)法達(dá)到要求。

  用C語(yǔ)言開(kāi)發(fā)單片機(jī)系統(tǒng)軟件的最大好處,是代碼效率高、軟件調(diào)試直觀、維護(hù)升級(jí)方便、代碼的重復(fù)利用率高、便于跨平臺(tái)的代碼移植等。因此,C語(yǔ)言在單片機(jī)系統(tǒng)設(shè)計(jì)中得到越來(lái)越廣泛的運(yùn)用。

  C語(yǔ)言是一種高級(jí)語(yǔ)言,具有低級(jí)語(yǔ)言的特點(diǎn),原來(lái)用各種匯編語(yǔ)言編寫(xiě)的單片機(jī)程序,均可用C語(yǔ)言程序代換。

  二、C語(yǔ)言的特點(diǎn)

  C語(yǔ)言的特點(diǎn)可歸納如下。

  1.語(yǔ)言簡(jiǎn)潔

  C是一種小型語(yǔ)言,共有32個(gè)關(guān)鍵字,9種控制語(yǔ)句,表示方法簡(jiǎn)單,只需用規(guī)范的方法。就可以構(gòu)造出功能很強(qiáng)的數(shù)據(jù)類(lèi)型、語(yǔ)句和程序結(jié)構(gòu)。如用++表示加1;一一表示減1;運(yùn)算符省寫(xiě)等。

  2.表達(dá)方式靈活實(shí)用

  C語(yǔ)言提供多種運(yùn)算符和表達(dá)式值的方法,對(duì)問(wèn)題的表達(dá)可通過(guò)多種途徑獲得,其程序設(shè)計(jì)更主動(dòng)、靈活。它語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大,如對(duì)整型量與字符型數(shù)據(jù)及邏輯型數(shù)據(jù)可以通用等。

  3. 表達(dá)力強(qiáng)

  C語(yǔ)言有豐富的數(shù)據(jù)結(jié)構(gòu)和運(yùn)算符。包含了各種數(shù)據(jù)結(jié)構(gòu),如整型、數(shù)據(jù)類(lèi)型、指針類(lèi)型和聯(lián)合類(lèi)型等,用來(lái)實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)的運(yùn)算。C語(yǔ)言的運(yùn)算符有34種,范圍很寬,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)難度極大的運(yùn)算。

  C語(yǔ)言能直接訪問(wèn)硬件的物理地址,能進(jìn)行位(bit)操作。兼有高級(jí)語(yǔ)言和低級(jí)語(yǔ)言的許多優(yōu)點(diǎn)。

  它既可用來(lái)編寫(xiě)系統(tǒng)軟件,又可用來(lái)開(kāi)發(fā)應(yīng)用軟件,已成為一種通用程序設(shè)計(jì)語(yǔ)言。

  4.C語(yǔ)言生成的目標(biāo)代碼質(zhì)量高

  C語(yǔ)言描述問(wèn)題比匯編語(yǔ)言迅速,工作量小、可讀性好,易于調(diào)試、修改和移植,而代碼質(zhì)量與匯編語(yǔ)言相當(dāng)。

  5.結(jié)構(gòu)化程序設(shè)計(jì)

  C語(yǔ)言是一種結(jié)構(gòu)化語(yǔ)言,提供編寫(xiě)結(jié)構(gòu)化程序所需的控制流的結(jié)構(gòu)語(yǔ)句,如for、while、do…while、lf…else等;用函數(shù)作為程序設(shè)計(jì)的基本單位,以實(shí)現(xiàn)程序的模塊化;其源文件還可分割為多個(gè)源文件,以分別對(duì)各源文件進(jìn)行編譯,再連接生成可執(zhí)行的目標(biāo)碼(hex)文件。

  6.可移植性

  匯編語(yǔ)言是不可移植的。而C語(yǔ)言在不同機(jī)器上的C編譯程序,86%的代碼是公共的,,所以C語(yǔ)言的編譯程序便于移植。在一個(gè)環(huán)境上用C語(yǔ)言編寫(xiě)的程序,不改動(dòng)或稍加改動(dòng),就可移植到另一個(gè)完全不同的環(huán)境中運(yùn)行。

  三、學(xué)習(xí)方法

  用PIC單片機(jī)開(kāi)發(fā)電子產(chǎn)品和用C語(yǔ)言編程,最主要的是要堅(jiān)持學(xué)習(xí),不能中斷。應(yīng)通過(guò)各種實(shí)例程序來(lái)學(xué)習(xí)C語(yǔ)言的語(yǔ)法規(guī)則。要熟練掌握C語(yǔ)言的數(shù)據(jù)類(lèi)型表達(dá)方法、各種運(yùn)算符、各種語(yǔ)句結(jié)構(gòu)。

  最好能背誦。要學(xué)會(huì)用C函數(shù)實(shí)現(xiàn)所需功能的方法。實(shí)際上,每個(gè)C函數(shù)都相當(dāng)于一個(gè)功能模塊,一個(gè)C函數(shù)便可實(shí)現(xiàn)一種功能。

  此外,用C語(yǔ)言開(kāi)發(fā)PIC單片機(jī)應(yīng)用產(chǎn)品,必須具有PIC單片機(jī)匯編語(yǔ)言知識(shí)。如果你已經(jīng)掌握了用匯編語(yǔ)言編寫(xiě)PIC單片機(jī)源程序的方法,最好將編寫(xiě)成功的PIC單片機(jī)匯編語(yǔ)言源程序,逐個(gè)用C語(yǔ)言源文件代換,從中體會(huì)C語(yǔ)言的優(yōu)越性。

  四、簡(jiǎn)單的C 語(yǔ)言程序

  為了幫助讀者進(jìn)入C語(yǔ)言編程環(huán)境,要給大家介紹一個(gè)簡(jiǎn)單的C語(yǔ)言程序。

  下面扼要介紹該程序所用到的C語(yǔ)言基本知識(shí)。更多的知識(shí)則在后文詳細(xì)介紹。

  1.主函數(shù)main( )

  C語(yǔ)言程序一般由若干個(gè)函數(shù)組成。函數(shù)是完成某個(gè)功能的算法的程序段,是C語(yǔ)言的基本組成單位。組成一個(gè)程序的若干函數(shù),可以保存在一個(gè)或幾個(gè)源程序文件中,這些文件都以。C為擴(kuò)展名(匯編語(yǔ)言以ASM為擴(kuò)展名)。一個(gè)程序必須有且只能有一個(gè)名為main的函數(shù),即是主函數(shù)main( )程序運(yùn)行時(shí),總是從主函數(shù)main( )開(kāi)始執(zhí)行的。

  2.C語(yǔ)言函數(shù)

  C語(yǔ)言程序的基本單位是函數(shù)。C語(yǔ)言程序必須有且只能有一個(gè)名為main的主函數(shù)。主函數(shù)可以調(diào)用其他函數(shù),其他函數(shù)也可相互調(diào)用。被調(diào)用的函數(shù)可以是系統(tǒng)提供的庫(kù)函數(shù),也可以是程序設(shè)計(jì)者自己編寫(xiě)的函數(shù)——對(duì)于MCU (如PIC單片機(jī)),所用的大多是自己編寫(xiě)的函數(shù)。一個(gè)函數(shù)由函數(shù)頭和函數(shù)體兩部分組成,每個(gè)函數(shù)的形式都相同。

 。1)函數(shù)頭由函數(shù)名(自定義名)、函數(shù)標(biāo)志——( ),即一對(duì)圓括號(hào),以及參數(shù)表,又稱(chēng)函數(shù)形式參數(shù)名和參數(shù)說(shuō)明(定義形式參數(shù)類(lèi)型)組成。

  前兩項(xiàng)必須有,如主函數(shù)main( ),后兩項(xiàng)為即可選項(xiàng)。注意:函數(shù)名可包括函數(shù)類(lèi)型和函數(shù)名字等。

 。2)函數(shù)體由一對(duì)花括號(hào):{}括起來(lái),括號(hào)內(nèi)由若干語(yǔ)句組成。這些語(yǔ)句有兩種類(lèi)型:一類(lèi)是說(shuō)明語(yǔ)句,又稱(chēng)變量定義,其作用是定義函數(shù)中用到的變量;另一類(lèi)是執(zhí)行語(yǔ)句,又稱(chēng)函數(shù)功能的執(zhí)行部分。

  用于完成一定的功能,即算法處理。注意:有的函數(shù)沒(méi)有變量定義部分,但有若干執(zhí)行語(yǔ)句。而在特定的情況下,則既無(wú)聲明部分,也無(wú)執(zhí)行部分,如:


  本文關(guān)鍵詞:單片機(jī)C語(yǔ)言程序設(shè)計(jì),由筆耕文化傳播整理發(fā)布。



本文編號(hào):243638

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/wenshubaike/mishujinen/243638.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶a25a9***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com