999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

試論C語(yǔ)言在單片機(jī)開(kāi)發(fā)中的運(yùn)用

2014-03-29 09:39:14李宛娜
關(guān)鍵詞:單片機(jī)

李宛娜

(哈爾濱遠(yuǎn)東理工學(xué)院,黑龍江 哈爾濱 150025)

試論C語(yǔ)言在單片機(jī)開(kāi)發(fā)中的運(yùn)用

李宛娜

(哈爾濱遠(yuǎn)東理工學(xué)院,黑龍江 哈爾濱 150025)

對(duì)于研究生思想政治教育歷來(lái)受到國(guó)家的高度重視和關(guān)切,以及研究生群體的擴(kuò)大和未來(lái)就業(yè)問(wèn)題.研究生作為高學(xué)歷人群,群體多元化的結(jié)構(gòu),面對(duì)當(dāng)代研究生思想政治教育的現(xiàn)狀,如何有效地解決和正確的分析,成為思想政治教育面臨的重要研究的問(wèn)題.所以面對(duì)研究工作,要全力以赴開(kāi)辟全新的方式和道路對(duì)于當(dāng)代研究生思想政治教育研究是具有重大意義的.

C語(yǔ)言;單片機(jī);開(kāi)發(fā)

單片機(jī)的開(kāi)發(fā)離不開(kāi)大量的編程和算法設(shè)計(jì).而在編程的過(guò)程中我們會(huì)發(fā)現(xiàn),傳統(tǒng)的單片機(jī)編程用的更多的是匯編語(yǔ)言,而諸如C、C++在內(nèi)的高級(jí)編譯語(yǔ)言用的卻很少.面對(duì)單片機(jī)系統(tǒng)日趨復(fù)雜以及功能要求不斷提高的現(xiàn)實(shí),如何在單片機(jī)中引入高級(jí)語(yǔ)言,已經(jīng)成為了一種必然的趨勢(shì).

1 單片機(jī)及單片機(jī)開(kāi)發(fā)的內(nèi)涵與特征

單片機(jī)是以一種智能化工具出現(xiàn)在我們面前的,興起于近代,并且是微電子技術(shù)的一個(gè)鮮明代表.從計(jì)算機(jī)系統(tǒng)來(lái)說(shuō),單片機(jī)有兩種類(lèi)型,即通用系統(tǒng)與嵌入系統(tǒng),這兩種系統(tǒng)作為兩種類(lèi)型共同引領(lǐng)著如今計(jì)算機(jī)系統(tǒng)的發(fā)展.單片機(jī)具有芯片小、性能強(qiáng)等特點(diǎn),被廣泛運(yùn)用于儀器制造、汽車(chē)機(jī)械以及家用電氣等職能設(shè)備之中.

單片機(jī)功能的發(fā)揮有賴(lài)于其背后的開(kāi)發(fā),這種開(kāi)發(fā)并不是雜亂無(wú)序或者任意編碼的,它有著自己的特點(diǎn).首先,外圍擴(kuò)展需要使用串行方式,并需要廣泛使用單片機(jī)的在片程序存儲(chǔ)器技術(shù);其次,它需要在8位機(jī)地位下進(jìn)行全盤(pán)CMOS化.這種特性也就決定了其要借助C語(yǔ)言編程語(yǔ)言.就目前用于單片機(jī)開(kāi)發(fā)的語(yǔ)言來(lái)說(shuō),主要包括匯編語(yǔ)言和以C語(yǔ)言為代表的高級(jí)編程語(yǔ)言.兩種編程語(yǔ)言各有千秋,匯編語(yǔ)言具有很高的可控性和簡(jiǎn)便性,但C語(yǔ)言則有著很好的移植性和繼承性,因此受到單片機(jī)系統(tǒng)研究和開(kāi)發(fā)者的高度重視,C語(yǔ)言在處理器中運(yùn)用的增多就是最好的證明.

2 C語(yǔ)言的優(yōu)勢(shì)及其運(yùn)用到單片機(jī)開(kāi)發(fā)中的可行性

C語(yǔ)言較匯編語(yǔ)言有著自身諸如可移植性強(qiáng)、繼承性強(qiáng)的優(yōu)勢(shì),使C語(yǔ)言運(yùn)用于單片機(jī)開(kāi)成為可能.C語(yǔ)言作為一種高級(jí)的編譯語(yǔ)言,有著匯編帶有的那種操作簡(jiǎn)便、性能強(qiáng)等特點(diǎn)及強(qiáng)大的可移植性,極大地增加了單片機(jī)開(kāi)發(fā)的便捷性.因?yàn)镃語(yǔ)言倡導(dǎo)使用結(jié)構(gòu)化的設(shè)計(jì)方式,并且依照自上而下的形式展開(kāi),這就使得相關(guān)單片機(jī)開(kāi)發(fā)人員可以在不了解單片機(jī)內(nèi)部硬件結(jié)構(gòu)信息的情況下對(duì)整個(gè)存儲(chǔ)單位進(jìn)行有效、合理的分配,使得單片機(jī)程序的運(yùn)行十分可靠、便捷.

除其可移植性強(qiáng)外,C語(yǔ)言作為一種結(jié)構(gòu)化的編譯程序在程序開(kāi)發(fā)上也有自身的優(yōu)點(diǎn).一方面,它功能性強(qiáng),結(jié)構(gòu)性很好,可以在不同的機(jī)型上運(yùn)行,并且憑借自身強(qiáng)大庫(kù)函數(shù)以及編譯運(yùn)算能力而具有很強(qiáng)的可讀性;另一方面,相關(guān)程序人員在使用C語(yǔ)言進(jìn)行編程時(shí),可以專(zhuān)心地進(jìn)行編程,不需要擔(dān)心硬件的不兼容,而且C語(yǔ)言的簡(jiǎn)單好記、邏輯性強(qiáng)等特點(diǎn)也減輕了編程人員的壓力.另外,C語(yǔ)言也可以憑借著其修改和擴(kuò)充簡(jiǎn)單的優(yōu)點(diǎn)而使得在進(jìn)行模塊化程序設(shè)計(jì)時(shí),因?yàn)槠涿總€(gè)模塊都有很好的分工和任務(wù),從而變得尤為簡(jiǎn)便.

3 C 語(yǔ)言在單片機(jī)開(kāi)發(fā)中的運(yùn)用實(shí)例

在單片機(jī)開(kāi)發(fā)中運(yùn)用C語(yǔ)言時(shí),需要依據(jù)專(zhuān)門(mén)的運(yùn)用步驟.首先,我們需要對(duì)目標(biāo)源程序進(jìn)行編譯,并將目標(biāo)代碼進(jìn)行連接和替換;其次,在程序設(shè)計(jì)完成之后還需要將源程序轉(zhuǎn)換為單片機(jī)所能識(shí)別和運(yùn)行的代碼形式.整個(gè)C語(yǔ)言的單片機(jī)開(kāi)發(fā)過(guò)程可以簡(jiǎn)要地概括為軟件安裝、創(chuàng)建C源文件、編譯并調(diào)試以及生成HEX文件等幾個(gè)步驟環(huán)節(jié).

C語(yǔ)言能夠?qū)纹瑱C(jī)的系統(tǒng)資源進(jìn)行合理、有效的分配,而這種分配實(shí)際上是以指針結(jié)構(gòu)的合理配置、指針數(shù)組和關(guān)系理清等方面為前提的.也就是說(shuō),要將C語(yǔ)言運(yùn)用到單片機(jī)開(kāi)發(fā)當(dāng)中,就需要加強(qiáng)對(duì)這幾方面的認(rèn)識(shí)和控制.為了更好地說(shuō)明C語(yǔ)言在單片機(jī)中的運(yùn)用,本文從指針結(jié)構(gòu)、指針尋址這兩個(gè)方面進(jìn)行介紹和說(shuō)明.

首先,是指針結(jié)構(gòu).一般來(lái)說(shuō),C語(yǔ)言中關(guān)于指針的聲明一般都是采用類(lèi)型標(biāo)識(shí)符*指針變量名的形式,而就單片機(jī)的存儲(chǔ)結(jié)構(gòu)來(lái)說(shuō),C語(yǔ)言指針的定義,與普通的C語(yǔ)言定義,有著格式上的不同點(diǎn),需要設(shè)立存儲(chǔ)指針變量的數(shù)據(jù)存儲(chǔ)區(qū)以及存儲(chǔ)指針變量指向數(shù)據(jù)的存儲(chǔ)區(qū).因此我們?cè)谶M(jìn)行指針結(jié)構(gòu)的聲明時(shí),采用不一樣的聲明格式,即:類(lèi)型標(biāo)識(shí)符[存儲(chǔ)區(qū)類(lèi)型];指針變量名[指針變量存儲(chǔ)區(qū)類(lèi)型].其中,在對(duì)數(shù)據(jù)格式的設(shè)定上,主要包括data等幾種,并且在進(jìn)行指針變量控制時(shí),采用如下的應(yīng)用格式:

unsigned char xdata indata[6];

unsigned char xdata*data yc;

yc=indata.

在將其進(jìn)行匯編語(yǔ)言轉(zhuǎn)換過(guò)后,我們發(fā)現(xiàn)其編譯結(jié)果對(duì)應(yīng)為:

MOV 08H,#00H;

其中0x08與0x09分別是指針變量地地址空間的所在.

其次,是對(duì)指針進(jìn)行尋址.通常來(lái)說(shuō),在單片機(jī)系統(tǒng)中的C語(yǔ)言數(shù)組尋址方式與一般系統(tǒng)上的尋址方式是一樣的.由于數(shù)組存儲(chǔ)在單片機(jī)片內(nèi),而片內(nèi)的RAM資源空間相對(duì)來(lái)說(shuō)比較有限,因此我們?cè)谶M(jìn)行數(shù)組使用時(shí),盡量避開(kāi)過(guò)大的數(shù)組,從而簡(jiǎn)化其數(shù)據(jù)結(jié)構(gòu).實(shí)際上,我們?cè)谶M(jìn)行指針尋址時(shí),需要實(shí)現(xiàn)data區(qū)的指針尋址,通過(guò)A/D轉(zhuǎn)換的模式將外部數(shù)據(jù)轉(zhuǎn)進(jìn)單片機(jī)之中.比如,在進(jìn)行十次數(shù)據(jù)求和時(shí),我們編寫(xiě)了以下的程序代碼:

unsigned char data inputdata[10];

unsigned int data sum,i;

unsigned char data*data yc;

void main()

{sum=0;

collectdata();

yc=inputdata;

sum+=*yc;

}

當(dāng)然,在實(shí)現(xiàn)指向data區(qū)的指針尋址之后,我們還需要實(shí)現(xiàn)其指向程序存儲(chǔ)區(qū)的指針尋址.然而,就指針指向數(shù)據(jù)存儲(chǔ)而言,它可以利用指針來(lái)實(shí)現(xiàn)對(duì)函數(shù)的調(diào)用,而這種調(diào)用一般來(lái)說(shuō)需要依照特定的調(diào)用格式,即:類(lèi)型標(biāo)識(shí)符(*指針變量名)([參數(shù)1],[參數(shù)2]……).在對(duì)數(shù)據(jù)定義完整之后,我們?cè)诤罄m(xù)的代碼程序中,就可以使用(*指針變量名)([參數(shù)],[參數(shù)]……)的代碼對(duì)之前編寫(xiě)好的函數(shù)進(jìn)行調(diào)用,例如,我們事先編寫(xiě)了一個(gè)查詢函數(shù)scan(),想在之后通過(guò)一個(gè)鍵盤(pán)對(duì)其進(jìn)行調(diào)用,其可以用以下代碼實(shí)現(xiàn):

Void scan()

Void main()

{void(*yc)();

Yc=scan;

高校思政實(shí)踐課旨在實(shí)踐中服務(wù)學(xué)生的成長(zhǎng)與成才。大致流程如下:以實(shí)踐教學(xué)班級(jí)為主要目標(biāo),以一個(gè)完整學(xué)期作為朋輩導(dǎo)師的服務(wù)期限,在高年級(jí)學(xué)生中精心選拔出一批優(yōu)秀分子作為儲(chǔ)備導(dǎo)師,并在實(shí)踐課前給予針對(duì)性的培訓(xùn),而后將其以“課程導(dǎo)師”的身份配備給每個(gè)教學(xué)班級(jí),從思路拓展、實(shí)踐規(guī)劃、資源整合、團(tuán)隊(duì)建設(shè)、條件保障、技能學(xué)習(xí)和提升、實(shí)踐過(guò)程監(jiān)控和調(diào)整、實(shí)踐總結(jié)與展望等方面進(jìn)行引導(dǎo)和幫扶,從而實(shí)現(xiàn)共同成長(zhǎng)的目的。

For(;;)

{(*yc)();}

}

4 從C51 熱啟動(dòng)代碼的編制看C語(yǔ)言在單片機(jī)開(kāi)發(fā)中的運(yùn)用

就目前的工業(yè)控制計(jì)算機(jī)來(lái)說(shuō),其由于缺乏看門(mén)狗電路,而在使計(jì)算機(jī)復(fù)位時(shí),讓看門(mén)狗發(fā)生動(dòng)作,這也就是習(xí)慣上的熱啟動(dòng).而在熱啟動(dòng)的實(shí)際過(guò)程中,卻因?yàn)椴辉试S從頭開(kāi)始,而使得已有的測(cè)量值或計(jì)算值復(fù)位,并最終導(dǎo)致系統(tǒng)異常.為了應(yīng)對(duì)這一問(wèn)題,我們通常需要利用程序?qū)崿F(xiàn)對(duì)其冷熱啟動(dòng)進(jìn)行判別.一般來(lái)說(shuō),我們要確立其標(biāo)志位(通常以某內(nèi)存單位為準(zhǔn)),并讓計(jì)算機(jī)啟動(dòng)時(shí)首先讀取這些帶有標(biāo)志位的內(nèi)容,如果該內(nèi)容與預(yù)先設(shè)定的值相同,則稱(chēng)其為熱啟動(dòng),否則為冷啟動(dòng).為了實(shí)現(xiàn)這一功能,我們?cè)O(shè)置了一個(gè)指針,并且使其指向特定的內(nèi)存單元0x7f,編制了以下C語(yǔ)言程序:

void main()

{char data*HotPoint=(char*)0x7f;

if((*HotPoint==0xaa)&&(*(--HotPoi-nt)==0xaa))

{/*熱啟動(dòng)的處理*/}

else

{HotPoint=0x7e;*HotPoint=0xaa;

*(++HotPoint)=0xaa;}

}

然而,我們?cè)趯?duì)其進(jìn)行編譯和運(yùn)行過(guò)后發(fā)現(xiàn),無(wú)論是熱啟動(dòng)還是冷啟動(dòng),開(kāi)機(jī)后的內(nèi)存單元復(fù)位均為0,這顯然無(wú)法滿足熱啟動(dòng)的要求,因?yàn)橛肅語(yǔ)言編程時(shí),開(kāi)機(jī)時(shí)執(zhí)行的代碼并非是從main()函數(shù)的第一句語(yǔ)句開(kāi)始的.在main()函數(shù)的第一句語(yǔ)句執(zhí)行前要先執(zhí)行一段“起始代碼”,正是這段代碼執(zhí)行了清零的工作.為此,我們需要對(duì)在編譯過(guò)后形成的startup.a51源文件進(jìn)行修改,然后用編譯程序所附帶的a51.exe程序?qū)tartup.a51編譯,得到startup.obj文件,然后用這段代碼代替原來(lái)的起始代碼.

〔1〕孫靜.C語(yǔ)言在單片機(jī)開(kāi)發(fā)中的應(yīng)用[J].電子世界,2012(7).

TP368.1

A

1673-260X(2014)09-0026-02

黑龍江省科學(xué)技術(shù)研究指導(dǎo)項(xiàng)目:實(shí)踐教學(xué)中機(jī)器人技術(shù)的應(yīng)用(12533044)

猜你喜歡
單片機(jī)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機(jī)在仿真中要注意的幾點(diǎn)問(wèn)題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機(jī)的三維LED點(diǎn)陣設(shè)計(jì)
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個(gè)全新PIC單片機(jī)系列
基于Proteus的單片機(jī)控制系統(tǒng)的仿真設(shè)計(jì)
主站蜘蛛池模板: 青青青视频91在线 | 亚洲精品在线观看91| 美女扒开下面流白浆在线试听| 无码免费视频| 欧美精品不卡| 国产成人在线无码免费视频| 欧美中文字幕第一页线路一| 日本免费精品| 日本免费福利视频| 亚洲综合一区国产精品| 国产精品免费入口视频| 日韩123欧美字幕| 成人字幕网视频在线观看| 2020国产精品视频| 亚洲91精品视频| 亚洲国产日韩欧美在线| 欧美成人午夜影院| 一本大道无码日韩精品影视| 九九久久精品免费观看| 妇女自拍偷自拍亚洲精品| 精品丝袜美腿国产一区| 色偷偷男人的天堂亚洲av| 最新国产在线| 免费Aⅴ片在线观看蜜芽Tⅴ | 精品国产三级在线观看| 亚洲娇小与黑人巨大交| 国产在线观看第二页| 波多野结衣国产精品| 欧美视频在线播放观看免费福利资源| 欧美成人aⅴ| 亚洲小视频网站| 99伊人精品| 欧美69视频在线| 免费午夜无码18禁无码影院| 国产美女无遮挡免费视频网站| 欧美精品成人一区二区在线观看| 欧美高清国产| 欧美一区二区福利视频| 国产麻豆va精品视频| 91久久国产成人免费观看| 亚洲天堂网在线视频| 91在线视频福利| 啦啦啦网站在线观看a毛片| 欧美日本在线一区二区三区| 婷婷色婷婷| 国内精自线i品一区202| 不卡无码h在线观看| 日韩在线视频网站| 在线欧美一区| 久久五月天国产自| 国产成人综合欧美精品久久| 日韩精品成人网页视频在线| 亚洲精品在线影院| 免费在线看黄网址| 国产真实乱子伦视频播放| 国产欧美日韩91| 欧美日韩亚洲国产| 在线色综合| 国产丝袜无码精品| 91麻豆国产在线| 波多野结衣中文字幕一区| 国产二级毛片| 美女无遮挡拍拍拍免费视频| 国产综合色在线视频播放线视| 久久精品视频一| 777午夜精品电影免费看| 丝袜无码一区二区三区| 精品国产污污免费网站| 欧美特黄一级大黄录像| 日本黄网在线观看| 日韩无码视频专区| 久久久久久久久久国产精品| 午夜免费视频网站| 国产人成乱码视频免费观看| 丁香亚洲综合五月天婷婷| 久久精品66| 亚洲熟女偷拍| 国产精品13页| 欧美一级高清片久久99| 婷婷激情亚洲| 色悠久久久久久久综合网伊人| 国产主播一区二区三区|