



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
51單片機C語言程序設(shè)計經(jīng)典案例51單片機C語言程序設(shè)計經(jīng)典案例51單片機C語言程序設(shè)計經(jīng)典案例資料僅供參考文件編號:2022年4月51單片機C語言程序設(shè)計經(jīng)典案例版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:項目三C51程序設(shè)計語言基礎(chǔ)任務(wù)1C51程序的識讀C51程序結(jié)構(gòu)例3-1P_test/*********************,標(biāo)準(zhǔn)的MCS-51單片機頭文件為””,STC89系列單片機頭文件為””#defineunitunsignedint.while循環(huán)結(jié)構(gòu)double數(shù)據(jù)類型說明雙精度浮點數(shù)else程序語句構(gòu)成if...else選擇結(jié)構(gòu)enum數(shù)據(jù)類型說明枚舉extern存儲類型說明在其他程序模塊中聲明了的全局變量float數(shù)據(jù)類型說明單精度浮點型for程序語句構(gòu)成for循環(huán)結(jié)構(gòu)goto程序語句構(gòu)成goto循環(huán)結(jié)構(gòu)idata存儲器類型說明間接尋址的內(nèi)部數(shù)據(jù)存儲器if程序語句構(gòu)成do...while循環(huán)結(jié)構(gòu)int數(shù)據(jù)類型說明基本整數(shù)型interrupt中斷聲明定義一個中斷函數(shù)long數(shù)據(jù)類型說明長整數(shù)型pdata存儲器類型說明分頁尋址的內(nèi)部數(shù)據(jù)存儲器register存儲類型說明使用CPU內(nèi)部的寄存器變量reentrant再入函數(shù)說明定義一個再入函數(shù)return程序語句函數(shù)返回sbit位變量聲明聲明一個可位尋址的變量short數(shù)據(jù)類型說明短整數(shù)型signed數(shù)據(jù)類型說明有符號數(shù),二進(jìn)制的最高位位符號位sizeof運算符計算表達(dá)式或數(shù)據(jù)類型的字節(jié)數(shù)Sfr特殊功能寄存器聲明聲明一個特殊功能寄存器Sfr16特殊功能寄存器聲明聲明一個16位的特殊功能寄存器static存儲類型說明靜態(tài)變量struct數(shù)據(jù)類型說明結(jié)構(gòu)類型數(shù)據(jù)switch程序語句構(gòu)成switch選擇語句typedef數(shù)據(jù)類型說明重新進(jìn)行數(shù)據(jù)類型定義union數(shù)據(jù)類型說明聯(lián)合數(shù)據(jù)類型unsigned數(shù)據(jù)類型說明無符號數(shù)據(jù)using寄存器組定義定義芯片的工作寄存器void數(shù)據(jù)類型說明無符號數(shù)據(jù)volatile數(shù)據(jù)類型說明聲明該變量在程序執(zhí)行中可被隱含改變while程序語句構(gòu)成while和do...while循環(huán)語句xdata存儲器類型說明外部數(shù)據(jù)存儲器C51的常量和變量常量常量就是在程序運行過程中,其值不能改變的數(shù)據(jù),包括整型常量、字符常量、字符串常量、實數(shù)常量、位標(biāo)量等。整型常量:可以用二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制表示。無符號整數(shù)常量在一個數(shù)字后面加上“u”或“U”表示。長整數(shù)型常量在后面加上“l(fā)”或“L”,無符號長整數(shù)型常量在數(shù)字后面加上“ul”或“UL”,實數(shù)型常量在后面加“f”或“F”。字符常量:單引號內(nèi)的字符,不可以顯示的控制字符在前加“\”組成專用轉(zhuǎn)義字符。字符串常量:雙引號內(nèi)的字符,當(dāng)雙引號內(nèi)沒有字符時是空字符串。在C語言中,字符串常量是作為字符類型數(shù)組來處理的,在存儲字符串時,系統(tǒng)在字符串尾部加上轉(zhuǎn)義字符“\o”,作為該字符串的結(jié)束符。實數(shù)常量:有十進(jìn)制和指數(shù)兩種表示形式。指數(shù)表示的實數(shù)為“[±]數(shù)字[.數(shù)字]e[±]數(shù)字”,[]中的內(nèi)容為可選項位標(biāo)量:位標(biāo)量的值是一個二進(jìn)制數(shù)。變量變量就是在程序運行過程中,其值可以被改變的數(shù)據(jù)。必須先用標(biāo)識符作為變量名,并指出所用的數(shù)據(jù)類型和存儲模式,這樣編譯系統(tǒng)才能為變量分配相應(yīng)的存儲空間。定義變量的格式:[<存儲模式>]<類型定義>[存儲器類型]<標(biāo)識符>;類型定義和標(biāo)識符是必要的。存儲模式有四種,自動(auto)、外部(extern)、靜態(tài)(static)和寄存器(register),默認(rèn)類型為自動(auto)。表3-3C51存儲類型與MCS-51單片機存儲空間的對應(yīng)關(guān)系及其大小存儲類型與存儲空間的對應(yīng)關(guān)系長度/bit長度/byte存儲范圍data直接尋址片內(nèi)數(shù)據(jù)存儲區(qū),訪問速度快(128B)810-255bdata可位尋址片內(nèi)數(shù)據(jù)存儲區(qū),允許位與字節(jié)混合訪問(16B)810-255idata間接尋址片內(nèi)數(shù)據(jù)存儲區(qū),可訪問片內(nèi)全部RAM地址空間(256B)810-255pdata分頁尋址片外數(shù)據(jù)存儲區(qū),由MOVX@Ri訪問810-255xdata尋址片外數(shù)據(jù)存儲區(qū)(64KB),由MOVX@DPTR訪問1620-65535code尋址代碼存儲區(qū)(64KB),由MOVC@DPTR訪問1620-65535如果在變量定義時省略了存儲類型標(biāo)識符,則編譯器會自動選擇默認(rèn)的存儲類型。默認(rèn)的存儲類型進(jìn)一步由SMALL、COMPACT、和LARGE存儲模式指令限制。存儲模式?jīng)Q定了變量的默認(rèn)存儲類型、參數(shù)傳遞區(qū)和無明確存儲類型說明變量的存儲類型。在SMALL模式下,參數(shù)傳遞是在片內(nèi)數(shù)據(jù)存儲區(qū)中完成的。COMPACT和LARGE模式允許參數(shù)在外部存儲器中傳遞。表3-4存儲模式及說明存儲模式說明SMALL參數(shù)及局部變量放入可直接尋址的片內(nèi)存儲器(最大為128B,默認(rèn)存儲類型為data),因此訪問十分方便。另外,所有對象(包括棧)都必須嵌入片內(nèi)RAM,棧長由函數(shù)的嵌套導(dǎo)數(shù)決定。COMPACT參數(shù)及局部變量放入分頁片外存儲區(qū)(最大為256B,默認(rèn)的存儲類型為pdata),通過寄存器R0和R1(@R0、@R1)間接尋址,??臻g位于MCS-51系統(tǒng)內(nèi)部數(shù)據(jù)存儲區(qū)中。LARGE參數(shù)及局部變量直接放入片外數(shù)據(jù)存儲區(qū)(最大為64KB,默認(rèn)存
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 日喀則地區(qū)2024-2025學(xué)年四年級數(shù)學(xué)第二學(xué)期期末統(tǒng)考試題含解析
- 2024-2025學(xué)年河南省許昌市數(shù)學(xué)三下期末檢測模擬試題含解析
- 2025屆定西地區(qū)通渭縣五下數(shù)學(xué)期末綜合測試模擬試題含答案
- 2024-2025學(xué)年溫州市泰順縣四年級數(shù)學(xué)第二學(xué)期期末達(dá)標(biāo)檢測試題含解析
- 課題開題報告:初中學(xué)生跨學(xué)科實踐能力測評與培養(yǎng)路徑研究
- 課題開題報告:產(chǎn)學(xué)研用協(xié)同發(fā)展研究
- 床上用品制造企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 定制家具運營管理協(xié)議
- 鎳催化劑企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 分子診斷云服務(wù)系統(tǒng)企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 生產(chǎn)車間管理制度辦法
- 機電企業(yè)管理導(dǎo)論第1章課件
- 水平一足球全冊教案
- 蘇教版科學(xué)二年級下冊全冊教案
- 約束評分標(biāo)準(zhǔn)
- GB/T 28799.2-2020冷熱水用耐熱聚乙烯(PE-RT)管道系統(tǒng)第2部分:管材
- 法律和道德的關(guān)系 課件
- GB 16780-2021水泥單位產(chǎn)品能源消耗限額
- 全面推進(jìn)依法行政課件
- 政務(wù)服務(wù)一網(wǎng)通辦平臺解決方案-最新
- 第十四屆全國交通運輸行業(yè)職業(yè)技能競賽(公路收費及監(jiān)控員)賽項題庫-上(單選題匯總-共3部分-1)
評論
0/150
提交評論