版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——單片機(jī)C語(yǔ)言知識(shí)點(diǎn)全攻略單片機(jī)C語(yǔ)言學(xué)識(shí)點(diǎn)全攻略
為了讓有需要的摯友進(jìn)一步了解單片機(jī)C語(yǔ)言學(xué)識(shí),下面的文章將為大家講解單片機(jī)C語(yǔ)言的學(xué)識(shí)內(nèi)容,接待學(xué)習(xí)!
C51運(yùn)算符和表達(dá)式
運(yùn)算符,雙目運(yùn)算符和三目運(yùn)算符。單目就是指需要有一個(gè)運(yùn)算對(duì)象,雙目就要求有兩個(gè)運(yùn)算對(duì)象,三目那么要三個(gè)運(yùn)算對(duì)象。表達(dá)式那么是由運(yùn)算及運(yùn)算對(duì)象所組成的具有特定含義的式子。C是一種表達(dá)式語(yǔ)言,表達(dá)式后面加";'號(hào)就構(gòu)成了一個(gè)表達(dá)式語(yǔ)句。
賦值運(yùn)算符
對(duì)于"='這個(gè)符號(hào)大家不會(huì)目生的,在C中它的功能是給變量賦值,稱(chēng)之為賦值運(yùn)算符。它的作用不用多說(shuō)大家也明白,就是但數(shù)據(jù)賦給變量。如,x=10;由此可見(jiàn)利用賦值運(yùn)算符將一個(gè)變量與一個(gè)表達(dá)式連接起來(lái)的式子為賦值表達(dá)式,在表達(dá)式后面加";'便構(gòu)成了賦值語(yǔ)句。使用"='的賦值語(yǔ)句格式如下:
變量=表達(dá)式;例如如下
a=0xFF;//將常數(shù)十六進(jìn)制數(shù)FF賦于變量a
b=c=33;//同時(shí)賦值給變量b,cd=e;//將變量e的值賦于變量d
f=a+b;//將變量a+b的值賦于變量f由上面的例子能知道賦值語(yǔ)句的意義就是先計(jì)算出"='右邊的表達(dá)式的值,然后將得到的值賦給左邊的變量。而且右邊的表達(dá)式能是一個(gè)賦值表達(dá)式。
在一些摯友的來(lái)信中會(huì)展現(xiàn)"=='與"='這兩個(gè)符號(hào)混淆的錯(cuò)誤原碼,問(wèn)為何編譯報(bào)錯(cuò),一般就是錯(cuò)在ifa=x之類(lèi)的語(yǔ)句中,錯(cuò)將"='用為"=='。"=='符號(hào)是用來(lái)舉行相等關(guān)系運(yùn)算。
算術(shù),增減量運(yùn)算符
對(duì)于a+b,a/b這樣的表達(dá)式大家都很熟諳,用在C語(yǔ)言中,+,/,就是算術(shù)運(yùn)算符。單片機(jī)c語(yǔ)言中的算術(shù)運(yùn)算符有如下幾個(gè),其中只有取正值和取負(fù)值運(yùn)算符是單目運(yùn)算符,其它那么都是雙目運(yùn)算符:
+加或取正值運(yùn)算符
-減或取負(fù)值運(yùn)算符
*乘運(yùn)算符
/除運(yùn)算符
%取余運(yùn)算符算術(shù)表達(dá)式的形式:
表達(dá)式1算術(shù)運(yùn)算符表達(dá)式2如:a+b*10-a,x+9/y-a
除法運(yùn)算符和一般的算術(shù)運(yùn)算規(guī)矩有所不一樣,如是兩浮點(diǎn)數(shù)相除,其結(jié)果為浮點(diǎn)數(shù)。
10.0/20.0所得值為0.5,而兩個(gè)整數(shù)相除時(shí),所得值就是整數(shù),如7/3,值為2。像別的語(yǔ)言一樣C的運(yùn)算符與有優(yōu)先級(jí)和結(jié)合性,同樣可用用括號(hào)"'來(lái)變更優(yōu)先級(jí)。這些和我們小時(shí)候?qū)W的數(shù)學(xué)幾乎是一樣的,也不必過(guò)多的說(shuō)領(lǐng)略。
++增量運(yùn)算符
--減量運(yùn)算符
這兩個(gè)運(yùn)算符是C語(yǔ)言中特有的一種運(yùn)算符。在VB,PASCAL等都是沒(méi)有的。作用就是對(duì)運(yùn)算對(duì)象作加1和減1運(yùn)算。要留神的是運(yùn)算對(duì)象在符號(hào)前或后,其含義都是不一樣的,雖然同是加1或減1。如:I++,++I,I--,--I。
I++或I--是先使用I的值,再執(zhí)行I+1或I-1
++I或--I是先執(zhí)行I+1或I-1,再使用I的值。增減量運(yùn)算符只允許用于變量的運(yùn)算中,不能用于常數(shù)或表達(dá)式。先來(lái)做一個(gè)測(cè)驗(yàn)吧。學(xué)習(xí)運(yùn)算符和另外一些學(xué)識(shí)時(shí),我們還是給我們的測(cè)驗(yàn)板加個(gè)串行
接口吧。借助電腦轉(zhuǎn)件直觀的看單片機(jī)的輸出結(jié)果,假設(shè)你用的是成品測(cè)驗(yàn)板或仿真器,那你就能跳過(guò)這一段了。
在制作電路前我們先來(lái)看看要用的MAX232,這里不去概括議論它,只要知道它是TTL和RS232電平相互轉(zhuǎn)換的芯片和根本的引腳接線(xiàn)功能就行了。通常我會(huì)用兩個(gè)小功率晶體管加少量的電路去替換MAX232,能省一點(diǎn),效果也不錯(cuò)如有興趣能查看網(wǎng)站中的相關(guān)資料。下圖就是MAX232的根本接線(xiàn)圖。
圖6-1MAX232
在上兩課的電路的根基上按圖6-3加上MAX232就能了。串行口座用DB9的母頭,這樣就能用買(mǎi)來(lái)的PC串行口延長(zhǎng)線(xiàn)舉行和電腦相連接,也能直接接到電腦com口上。
圖6-2DB9接頭
圖6-3加上了MAX232的'測(cè)驗(yàn)電路做好后,就先用回前面的"HelloWorld!'程序,用它來(lái)和你的電腦說(shuō)聲Hello!把程序
燒到芯片上,把串行口連接好。嘿嘿,這個(gè)時(shí)候要開(kāi)啟你的串行口調(diào)試軟件,沒(méi)有就趕快到網(wǎng)上DOWN一個(gè)了。你會(huì)用Windows的超級(jí)終端也行,不過(guò)我從不用它。我用的comdebug,它是個(gè)不錯(cuò)的軟件,我熱愛(ài)它是由于它功能好而且還有"線(xiàn)路狀態(tài)'功能,這對(duì)
我制作小玩意時(shí)很有用。串行口號(hào),波特率調(diào)好,開(kāi)啟串行口,單片機(jī)上電,就能在接收區(qū)看到不斷展現(xiàn)的"HelloWorld!'。確定要先開(kāi)啟軟件的串行口,再把單片機(jī)上電,不然可能因字符不對(duì)齊而看到亂碼哦。
運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符
關(guān)系運(yùn)算符,同樣我們也并不目生。單片機(jī)C語(yǔ)言中有六種關(guān)系運(yùn)算符,這些東西同樣是在我們小時(shí)候?qū)W算術(shù)時(shí)就已經(jīng)學(xué)習(xí)過(guò)了的:
大于
小于
=大于等于
=小于等于
==等于
!=等于
或者你是個(gè)非C語(yǔ)言程序員,那么對(duì)前四個(gè)確定是再熟諳不過(guò)的了。而"=='在VB或PASCAL等中是用"=',"!='那么是用"not'。
小學(xué)時(shí)的數(shù)學(xué)課就教授過(guò)運(yùn)算符是有優(yōu)先級(jí)別的,計(jì)算機(jī)的語(yǔ)言也不過(guò)是人類(lèi)語(yǔ)言的一種擴(kuò)展,這里的運(yùn)算符同樣有著優(yōu)先級(jí)別。前四個(gè)具有一致的優(yōu)先級(jí),后兩個(gè)也具有一致的優(yōu)先級(jí),但是前四個(gè)的優(yōu)先級(jí)要高于后2個(gè)的。
當(dāng)兩個(gè)表達(dá)式用關(guān)系運(yùn)算符連接起來(lái)時(shí),這個(gè)時(shí)候就是關(guān)系表達(dá)式。關(guān)系表達(dá)式通常是用來(lái)判別某個(gè)條件是否得志。要留神的是用關(guān)系運(yùn)算符的運(yùn)算結(jié)果只有0和1兩種,也就是規(guī)律的真與假,當(dāng)指定的條件得志時(shí)結(jié)果為1,不得志時(shí)結(jié)果為0。
表達(dá)式1關(guān)系運(yùn)算符表達(dá)式2如:I
借助我們?cè)谏弦徽n做好的電路和學(xué)習(xí)了的相關(guān)操作。我們來(lái)做一個(gè)關(guān)系運(yùn)算符相關(guān)的實(shí)例程序。為了增加學(xué)習(xí)的趣味性和生動(dòng)性,不妨我們來(lái)假設(shè)在做一個(gè)會(huì)做算術(shù)的機(jī)器人,當(dāng)然真正會(huì)斟酌對(duì)話(huà)的機(jī)器,我想我是做不出來(lái)的了,這里的程序只是用來(lái)學(xué)習(xí)關(guān)系運(yùn)算符的根本應(yīng)用。
#include《AT89X51.H》
#include《stdio.h》
voidmainvoid
intx,y;
SCON=0x50;//串行口方式1,允許接收TMOD=0x20;//定時(shí)器1定時(shí)方式2
TH1=0xE8;//11.0592MHz1200波特率TL1=0xE8;
TI=1;
TR1=1;//啟動(dòng)定時(shí)器
while1
printf"您好!我叫Robot!我是一個(gè)會(huì)做算術(shù)的機(jī)器人!';//顯示
printf"請(qǐng)您輸入兩個(gè)int,X和Y';//顯示
scanf"%d%d',x,y;//輸入
ifx《y
printf"X《Y';//當(dāng)X小于Y時(shí)
else//當(dāng)X不小于Y時(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2026學(xué)年第一學(xué)期XX市第七中學(xué)高二年級(jí)生物教學(xué)反思:實(shí)驗(yàn)課與核心概念理解實(shí)踐
- 員工進(jìn)廠(chǎng)安全教育培訓(xùn)
- 倉(cāng)庫(kù)安全培訓(xùn)教材
- 員工自我認(rèn)識(shí)培訓(xùn)
- 好利來(lái)培訓(xùn)教學(xué)課件
- 倉(cāng)庫(kù)6S培訓(xùn)課件
- 員工服務(wù)形象培訓(xùn)
- 員工報(bào)發(fā)票培訓(xùn)
- 員工應(yīng)急能力培訓(xùn)
- 基金從業(yè)培訓(xùn)課件
- GB/T 5076-2025具有兩個(gè)軸向引出端的圓柱體元件的尺寸測(cè)量
- GB/T 46568.1-2025智能儀器儀表可靠性第1部分:可靠性試驗(yàn)與評(píng)估方法
- 幼兒園教育活動(dòng)座位擺放指南
- 水池土建施工方案
- 2025中好建造(安徽)科技有限公司第二次社會(huì)招聘13人筆試考試備考試題及答案解析
- 移動(dòng)支付安全體系架構(gòu)-洞察與解讀
- 水泵維修安全知識(shí)培訓(xùn)課件
- 建筑工程施工安全管理標(biāo)準(zhǔn)及實(shí)施方案
- DB43∕T 1358-2017 地質(zhì)災(zāi)害治理工程質(zhì)量驗(yàn)收規(guī)范
- 軍犬的訓(xùn)練考試題及答案
- 臨床病區(qū)藥品管理試題及答案2025年版
評(píng)論
0/150
提交評(píng)論