版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
手把手教你學(xué)單片機(jī)
--51單片機(jī)C語言開發(fā)金沙灘工作室
作者:宋雪松
第十九課:
實(shí)踐項(xiàng)目開發(fā)——多功能電子鐘類型說明typedeftypedef原類型名新類型名typedefsignedcharint8;//8位有符號(hào)整型數(shù)typedefsignedintint16;//16位有符號(hào)整型數(shù)typedefsignedlongint32;//32位有符號(hào)整型數(shù)typedefunsignedcharuint8;//8位無符號(hào)整型數(shù)typedefunsignedintuint16;//16位無符號(hào)整型數(shù)typedefunsignedlonguint32;//32位無符號(hào)整型數(shù)不推薦的寫法:#defineucharunsignedchartypedef和#define的區(qū)別#define是由預(yù)處理完成的,而typedef則是在編譯時(shí)完成的。#defineucharunsignedchartypedefunsignedcharuint8;對(duì)于#define來說,更多是進(jìn)行程序可讀性、易維護(hù)的替換#defineLCD1602_DBP0#defineSYS_MCLK(11059200/12)typedefunsignedcharuint8;uint8i,j;#defineucharunsignedcharuchari,j;typedefint*int_p;int_pi,j;等價(jià)于int*i;int*j;#defineint_pint*int_pi,j;等價(jià)于int*i;intj;頭文件#include<文件名>:表示預(yù)處理程序直接到系統(tǒng)指定的“包含文件目錄”去查找。#include"文件名":首先在當(dāng)前文件所在的文件目錄中查找被包含文件,如果沒有找到才會(huì)再到系統(tǒng)的“包含文件目錄”去查找。main.h包含內(nèi)容:1、main.c使用的宏;2、其他.c文件要用到的在main.c中定義的全局變量,進(jìn)行extern。3、main.c內(nèi)自定義類型進(jìn)行聲明。4、main.c內(nèi)提供給其他文件使用的全局函數(shù)。1、已經(jīng)定義過此變量的文件不需要進(jìn)行外部聲明語句。2、如果a.h包含main.h文件,b.h也包含了main.h文件,如果Lcd.c文件既包含了a.h,又包含了b.h,那樣就會(huì)出現(xiàn)重復(fù)包含,會(huì)發(fā)生函數(shù)和變量的重復(fù)聲明。條件編譯用法1:#if表達(dá)式程序段1#else程序段2#endif#definePLAN0#if(PLAN==0)程序段1#else程序段2#endif條件編譯表達(dá)式二:#ifdef標(biāo)識(shí)符程序段1#else程序段2#endif
表達(dá)式三:#ifndef標(biāo)識(shí)符程序段1#else程序段2#endif多功能電子鐘--項(xiàng)目需求分析功能需求:日期、時(shí)間、星期、按鍵校時(shí)、鬧鐘、溫度測量、紅外遙控校時(shí)。人性化設(shè)計(jì)需求:時(shí)間顯示:數(shù)碼管(醒目)星期顯示:點(diǎn)陣(醒目+顯示有限)裝飾:來回流水燈日期、溫度和鬧鐘等輔助信息顯示:液晶近距離校時(shí):按鍵遠(yuǎn)距離遙控校時(shí):紅外遙控器
多功能電子鐘--程序結(jié)構(gòu)規(guī)劃功能模塊:時(shí)間走動(dòng):DS1302顯示時(shí)間:點(diǎn)陣、數(shù)碼管、獨(dú)立LED、液晶校對(duì)時(shí)間:板載按鍵、遙控器鬧鐘:蜂鳴器底層劃分:1、DS1302走時(shí)的核心自成一個(gè)模塊2、點(diǎn)陣、數(shù)碼管、獨(dú)立LED都屬于LED,控制方式類似都需要?jiǎng)討B(tài)掃描,作為一個(gè)整體模塊3、液晶顯示有時(shí)序要求,獨(dú)立一個(gè)模塊4、按鍵和遙控器的驅(qū)動(dòng)各自成為一個(gè)模塊5、18B20溫度底層程序應(yīng)用層:Timer.c:調(diào)度各種顯示驅(qū)動(dòng)函數(shù)、決定哪個(gè)數(shù)據(jù)顯示在何處、執(zhí)行按鍵功能動(dòng)作、對(duì)比當(dāng)前時(shí)間和鬧鐘時(shí)間等等上層功能。main.c:執(zhí)行主循環(huán)掃描、系統(tǒng)時(shí)間、個(gè)別零散小功能函數(shù)應(yīng)用層流程圖多功能電子鐘--程序代碼編寫流程1、工程建立和文件存放分配。2、根據(jù)原理圖進(jìn)行全局參數(shù)聲明、引腳聲明、類型說明等頭文件編寫。3、功能模塊調(diào)試:1>1602液晶功能調(diào)試2>LED和蜂鳴器功能調(diào)試:定時(shí)器23>DS1302讀寫調(diào)試4>溫度顯示調(diào)試5>板載按鍵功能調(diào)試:定時(shí)器06>紅外遙控器按鍵功能調(diào)試:定時(shí)器14、應(yīng)用層程序調(diào)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車銷售行為培訓(xùn)課件
- 單梁遙控行車安全培訓(xùn)
- 2.2 大氣受熱過程和大氣運(yùn)動(dòng)(第2課時(shí) 大氣運(yùn)動(dòng))(教學(xué)設(shè)計(jì))高一地理同步高效課堂(人教版2019必修一)
- 【課件】有理數(shù)乘法的運(yùn)算律及運(yùn)用(第2課時(shí))課件人教版數(shù)學(xué)七年級(jí)上冊(cè)
- Windows Server網(wǎng)絡(luò)管理項(xiàng)目教程(Windows Server 2022)(微課版)課件項(xiàng)目7 Web Farm網(wǎng)絡(luò)負(fù)載平衡
- 土木工程力學(xué)12結(jié)構(gòu)的計(jì)算簡圖及分類
- 2024年內(nèi)蒙古赤峰市中考英語試題含解析
- 幼兒園中班寒假安全教育教案18篇
- 牛津譯林版八年級(jí)上冊(cè)英語課外閱讀拓展訓(xùn)練二(時(shí)文無答案)
- 2024年黑龍江省綏化市初中畢業(yè)學(xué)業(yè)考試地理試卷含答案
- 期中試卷(試題)2024-2025學(xué)年人教版數(shù)學(xué)五年級(jí)上冊(cè)
- 2024-2024部編版九年級(jí)語文上冊(cè)期末考試測試卷(附答案)
- 健康科普宣教課件
- 體適能訓(xùn)練對(duì)兒童青少年體質(zhì)影響發(fā)展研究
- 故障模式、影響及危害分析報(bào)告(模板)(共14頁)
- 三無急診病人的接診與處理程序
- 冀教版八年級(jí)上冊(cè)英語課件Lesson 22 I Like My Neighbourhood
- 乙二醇冷卻器設(shè)計(jì)-趙守強(qiáng)
- 混凝土圓管涵計(jì)算書
- 一年級(jí)數(shù)學(xué)《整理房間》聽課心得體會(huì)
- 學(xué)校迎接督導(dǎo)評(píng)估檢查工作方案[推薦五篇]_1
評(píng)論
0/150
提交評(píng)論