亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        C語言在單片機(jī)中的應(yīng)用研究

        2021-02-07 07:52:52江蘇省徐州醫(yī)藥高等職業(yè)學(xué)校鄧如兵
        電子世界 2021年1期
        關(guān)鍵詞:流程圖分支編程

        江蘇省徐州醫(yī)藥高等職業(yè)學(xué)校 鄧如兵

        C語言是一種高級(jí)計(jì)算機(jī)編程語言,在51系列單片機(jī)中通常使用專用的C51語言為單片機(jī)編程,C51能夠直接操作硬件資源,提高了編程效率。

        計(jì)算機(jī)語言分為低級(jí)語言和高級(jí)語言,單片機(jī)作為計(jì)算機(jī)系列中的專用計(jì)算機(jī),在開發(fā)單片機(jī)應(yīng)用系統(tǒng)時(shí),也可以采用低級(jí)語言和高級(jí)語言。單片機(jī)常用的應(yīng)用系統(tǒng)開發(fā)語言是匯編語言和C語言。匯編語言有其代碼短小、運(yùn)行快速的優(yōu)點(diǎn),但是有一個(gè)讓編程人員難以掌握的缺點(diǎn)。本文以51系列單片機(jī)為例,介紹C語言在單片機(jī)中的應(yīng)用方法。

        1 C語言和單片機(jī)概述

        C51是一種用于51系列單片機(jī)編程的C語言,具備高級(jí)程序設(shè)計(jì)語言的特點(diǎn),同時(shí)能夠直接操作硬件資源。C語言的三種基本結(jié)構(gòu)包括順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu);分支結(jié)構(gòu)有雙分支結(jié)構(gòu)和多分支結(jié)構(gòu);循環(huán)結(jié)構(gòu)有當(dāng)型循環(huán)結(jié)構(gòu)、直到型循環(huán)結(jié)構(gòu)。單片機(jī)程序設(shè)計(jì)也離不開這三種基本結(jié)構(gòu)的運(yùn)用。

        單片機(jī)通常是為實(shí)時(shí)控制應(yīng)用而設(shè)計(jì)制造的,把中央處理部件、存儲(chǔ)器和各種輸入/輸出接口等集成在一塊芯片上。Intel公司設(shè)計(jì)的51系列單片機(jī)是單片機(jī)中應(yīng)用最廣泛的經(jīng)典機(jī)型。

        2 C語言算法表達(dá)

        在利用單片機(jī)處理應(yīng)用需求的時(shí)候,通常需要進(jìn)行算法描述,可以用自然語言、偽代碼、傳統(tǒng)的流程圖、N-S盒圖和PAD圖來表示。一般習(xí)慣用傳統(tǒng)的流程圖、N-S盒圖和PAD圖來表達(dá)程序算法。這三種算法流程可用順序結(jié)構(gòu)、雙分支結(jié)構(gòu)、多分支結(jié)構(gòu)、多分支結(jié)構(gòu)、直到型循環(huán)結(jié)和當(dāng)型循環(huán)結(jié)構(gòu)表達(dá)?;窘Y(jié)構(gòu)圖如圖1、2、3所示。

        在單片機(jī)算法設(shè)計(jì)中,可以根據(jù)應(yīng)用的需求,合理選擇傳統(tǒng)的流程圖、N-S盒圖和PAD圖來繪制程序算法流程圖。簡單的算法描述,通常選擇傳統(tǒng)的流程圖就可以完成。而在復(fù)制算法表達(dá)上,適合采用結(jié)構(gòu)化層次分明的N-S盒圖和PAD圖來繪制程序算法,結(jié)合算法表達(dá),實(shí)際編程最好采用模塊化、結(jié)構(gòu)化的方法。

        圖1 傳統(tǒng)的流程圖的基本控制結(jié)構(gòu)順序結(jié)構(gòu)

        圖2 N-S盒圖的順序結(jié)構(gòu)

        圖3 PAD圖的順序結(jié)構(gòu)

        表1 程序結(jié)構(gòu)排列表

        3 單片機(jī)中的應(yīng)用方法

        3.1 C51語言編程

        程序結(jié)構(gòu)排列見表1。程序結(jié)構(gòu)按順序依次是頭文件引入、宏定義(可選)、自定義函數(shù)聲明(可選)、主函數(shù)(必選)、普通子函數(shù)(可選)、中斷子函數(shù)(可選)、中斷子程序(可選)。保存好的程序文件擴(kuò)展名為*.c,頭文件擴(kuò)展名為*.h。

        部分源代碼示例如下:

        3.2 C51加多任務(wù)操作系統(tǒng)編程

        多任務(wù)實(shí)時(shí)操作系統(tǒng)可選用rtx-51 tiny系統(tǒng),實(shí)時(shí)操作系統(tǒng)引入到單片機(jī)程序設(shè)計(jì)中,rtx-51 tiny系統(tǒng)沒有主函數(shù),主函數(shù)就是任務(wù)0函數(shù),程序從任務(wù)0開始執(zhí)行。其它任務(wù)要寫成無限循環(huán)的形式。中斷子函數(shù)寫法可以采用常規(guī)寫法,但是為了防止占用系統(tǒng)中斷,最可靠的寫法是在中斷函數(shù)里只是把信號(hào)發(fā)給另外一個(gè)任務(wù),讓另外一個(gè)任務(wù)來處理中斷應(yīng)用服務(wù)。

        部分源代碼示例如下:

        3.3 C51語言混合編程方法

        在Keilc軟件中做好對(duì)應(yīng)的選項(xiàng)設(shè)置,編譯后即可生成目標(biāo)代碼。編程時(shí)候要注意現(xiàn)場保護(hù)和工作寄存器空間的分配,防止寄存器沖突。

        部分源代碼示例如下:

        4 開發(fā)方法

        在單片機(jī)集成開發(fā)工具中,利用C語言寫出應(yīng)用程序,再使用編譯器排除錯(cuò)誤,再把寫好的代碼編譯為機(jī)器碼,同時(shí)生成HEX文件,最后利用編程器或者在線編程軟件把HEX可執(zhí)行文件寫入單片機(jī)內(nèi)。寫入的代碼在樣機(jī)中進(jìn)行運(yùn)行調(diào)試,成功后就可以批量生產(chǎn)。

        為了提高單片機(jī)應(yīng)用系統(tǒng)的開發(fā)效率,通??捎美胮roteus軟件來仿真處理器及其外圍電路,把硬件電路利用仿真軟件來進(jìn)行模擬仿真;結(jié)合程序開發(fā)軟件,能夠?qū)υO(shè)計(jì)項(xiàng)目反復(fù)進(jìn)行修改和測試,待設(shè)計(jì)項(xiàng)目功能實(shí)現(xiàn)后再對(duì)樣機(jī)進(jìn)行實(shí)機(jī)調(diào)試。

        51系列單片機(jī)常用的編程軟件是keil軟件,提供了包括C編譯器、宏匯編、連接器、庫管理和仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。它支持眾多不同公司的51架構(gòu)的芯片,它的界面和常用的微軟Vc++的界面相似,界面友好,易學(xué)易用。

        Keil uVision編程中的常見錯(cuò)誤:C51編譯器識(shí)別錯(cuò)誤類型有三種。致命錯(cuò)誤:偽指令控制行有錯(cuò),訪問不存在的源文件或頭文件等。語法及語義錯(cuò)誤:語法和語義錯(cuò)誤都發(fā)生在源文件中。

        總結(jié):C語言的應(yīng)用,極大的方便了單片機(jī)應(yīng)用系統(tǒng)的開發(fā)。在單片機(jī)中編程常用的方法是直接采用C語言編寫系統(tǒng)和應(yīng)用程序,還可以借用專用的操作系統(tǒng)內(nèi)核構(gòu)建應(yīng)用系統(tǒng),或者有特殊要求的情況下,可以采用嵌入?yún)R編語言進(jìn)行混合編程。

        猜你喜歡
        流程圖分支編程
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        巧分支與枝
        一類擬齊次多項(xiàng)式中心的極限環(huán)分支
        專利申請(qǐng)審批流程圖
        河南科技(2016年8期)2016-09-03 08:08:22
        專利申請(qǐng)審批流程圖
        河南科技(2016年6期)2016-08-13 08:18:29
        寧??h村級(jí)權(quán)力清單36條
        生成分支q-矩陣的零流出性
        国产成人久久综合热| 中文字幕亚洲乱码熟女1区| 欧美激情肉欲高潮视频| 亚洲日韩精品欧美一区二区| 亚洲欧洲日产国码久在线观看| 夜色视频在线观看麻豆| 日韩欧美中文字幕公布| 亚洲精品无码成人a片| 亚洲精品乱码久久久久久麻豆不卡| 美腿丝袜一区在线观看| 欧美拍拍视频免费大全| 人妻丰满熟妇av无码片| 成人不卡国产福利电影在线看| 精品国模人妻视频网站| 中文区中文字幕免费看| 人妻少妇被猛烈进入中文字幕| 久久久久成人精品免费播放网站| 日韩亚洲在线观看视频| 日本一二三区视频在线| 97人妻熟女成人免费视频| AV在线毛片| 亚洲中文av中文字幕艳妇| 人妻少妇不满足中文字幕| 草莓视频一区二区精品| 免费在线av一区二区| 天天做天天爱夜夜夜爽毛片| 好大好深好猛好爽视频免费| 亚洲欧美在线视频| 国产91极品身材白皙| 久久婷婷五月综合97色一本一本 | 国产一区二区三区视频免费在线 | 麻豆精品国产精华精华液好用吗 | 夜夜未满十八勿进的爽爽影院| 天天草夜夜草| 粉色蜜桃视频完整版免费观看在线| 无码无套少妇毛多18p| 乱子伦视频在线看| 国产精品国产三级国产av主| 亚洲av手机在线网站| 亚洲av成人中文无码专区| 精品久久久久中文字幕APP|