




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、寒假(hnji)培訓(xùn) Rx 共二十五頁(yè)介紹(jisho)培訓(xùn)介紹上午 9:3011:00入門培訓(xùn) 地點(diǎn):三號(hào)樓6樓會(huì)議室下午 13:00-制板培訓(xùn) 地點(diǎn):北二基地實(shí)驗(yàn)室(澤武師兄在實(shí)驗(yàn)室,大家吃完飯就可以過(guò)去因?yàn)橐WC培訓(xùn)效果,每次也不能太多人大家先過(guò)去的就先學(xué)啦)培訓(xùn)內(nèi)容光盤內(nèi)容介紹+應(yīng)該如何學(xué)習(xí)簡(jiǎn)單C語(yǔ)言講解Keil和Proteus的使用寒假(hnji)課題交流時(shí)間共二十五頁(yè)光盤(un pn)內(nèi)容介紹+應(yīng)該如何學(xué)習(xí)郭天祥單片機(jī)教學(xué)視頻(shpn)(十天51單片機(jī)C語(yǔ)言)常用軟件Keil和Proteus(部分AVR軟件)電子書、課件、DataSheet共二十五頁(yè)應(yīng)該如何(rh)學(xué)習(xí)看視頻寫程
2、序軟、硬件仿真看Datasheet共二十五頁(yè)簡(jiǎn)單(jindn)C語(yǔ)言講解共二十五頁(yè)什么(shn me)是好的代碼?正確性健壯性可靠性效率(xio l)易用性可讀性可擴(kuò)張性可復(fù)用性兼容性可移植性共二十五頁(yè)因?yàn)闀r(shí)間和本人水平的關(guān)系(gun x)只講幾個(gè)具體問(wèn)題注釋文件組織結(jié)構(gòu)(jigu)變量/函數(shù)名稱與慎用全局變量函數(shù)長(zhǎng)度中斷要短文件名要用英文共二十五頁(yè)程序首先(shuxin)是給人看的,然后才是給機(jī)器看的共二十五頁(yè)文件組織結(jié)構(gòu)(jigu)/ 版權(quán)和版本(bnbn)聲明見示例1-1,此處省略。/*This file is graphics.h*/#ifndef GRAPHICS_H / 防止gra
3、phics.h 被重復(fù)引用#define GRAPHICS_H#include / 引用標(biāo)準(zhǔn)庫(kù)的頭文件#include “myheader.h” / 引用非標(biāo)準(zhǔn)庫(kù)的頭文件void Function1(); / 全局函數(shù)聲明#endif共二十五頁(yè)文件組織結(jié)構(gòu)(jigu)/ 版權(quán)和版本聲明見示例1-1,此處省略(shngl)。/*This file is graphics.c*/#include “graphics.h” / 引用頭文件static char uartBufUART_BUF_LEN;/函數(shù)中要用到的全局變量,僅在該文件中有效 / 全局函數(shù)的實(shí)現(xiàn)體void Function1()共二
4、十五頁(yè)慎用全局變量因?yàn)槿肿兞靠梢员凰泻瘮?shù)訪問(wèn),使用全局變量會(huì)降低函數(shù)之間傳遞數(shù)據(jù)的開銷,但這樣違背了程序結(jié)構(gòu)化和信息隱蔽的原則。若非應(yīng)用程序的執(zhí)行效率至關(guān)重要,不應(yīng)使用全局變量。在單片機(jī)中,全局變量使用的會(huì)比較多。主要用在中斷中,因?yàn)闊o(wú)法向中斷函數(shù)傳遞變量。在其他地方就要慎用!如果可以用指針等方式代替,就不要輕易使用全局變量。程序結(jié)構(gòu)化是為了(wi le)快速開發(fā)、復(fù)用、移植。信息隱蔽是為了安全、復(fù)用和移植方便。共二十五頁(yè)變量(binling)與函數(shù)名稱【規(guī)則3-1-1】標(biāo)識(shí)符應(yīng)當(dāng)直觀且可以拼讀,可望文知意,不必進(jìn)行“解碼”。標(biāo)識(shí)符最好采用英文單詞或其組合,便于記憶和閱讀。切忌使用漢語(yǔ)拼音
5、來(lái)命名。程序中的英文單詞一般不會(huì)太復(fù)雜,用詞應(yīng)當(dāng)準(zhǔn)確。例如(lr)不要把CurrentValue 寫成NowValue?!疽?guī)則3-1-2】標(biāo)識(shí)符的長(zhǎng)度應(yīng)當(dāng)符合“min-length & max-information”原則。幾十年前老ANSI C 規(guī)定名字不準(zhǔn)超過(guò)6 個(gè)字符,現(xiàn)今的C+/C 不再有此限制。一般來(lái)說(shuō),長(zhǎng)名字能更好地表達(dá)含義,所以函數(shù)名、變量名、類名長(zhǎng)達(dá)十幾個(gè)字符不足為怪。那么名字是否越長(zhǎng)約好?不見得! 例如變量名maxval 就比maxValueUntilOverflow好用。單字符的名字也是有用的,常見的如i,j,k,m,n,x,y,z 等,它們通??捎米骱瘮?shù)內(nèi)的局部變量。共二
6、十五頁(yè)【規(guī)則3-1-3】命名規(guī)則盡量與所采用(ciyng)的操作系統(tǒng)或開發(fā)工具的風(fēng)格保持一致。例如 Windows 應(yīng)用程序的標(biāo)識(shí)符通常采用“大小寫”混排的方式,如AddChild。而Unix 應(yīng)用程序的標(biāo)識(shí)符通常采用“小寫加下劃線”的方式,如add_child。別把這兩類風(fēng)格混在一起用。【規(guī)則3-1-4】程序(chngx)中不要出現(xiàn)僅靠大小寫區(qū)分的相似的標(biāo)識(shí)符?!疽?guī)則3-1-5】程序中不要出現(xiàn)標(biāo)識(shí)符完全相同的局部變量和全局變量,盡管兩者的作用域不同而不會(huì)發(fā)生語(yǔ)法錯(cuò)誤,但會(huì)使人誤解。共二十五頁(yè)【規(guī)則3-1-6】變量的名字(mng zi)應(yīng)當(dāng)使用“名詞”或者“形容詞名詞”?!疽?guī)則3-1-7】全局
7、函數(shù)的名字應(yīng)當(dāng)使用(shyng)“動(dòng)詞”或者“動(dòng)詞名詞”(動(dòng)賓詞組)。類的成員函數(shù)應(yīng)當(dāng)只使用“動(dòng)詞”,被省略掉的名詞就是對(duì)象本身。例如:DrawBox(); / 全局函數(shù)box-Draw(); / 類的成員函數(shù)【規(guī)則3-1-8】用正確的反義詞組命名具有互斥意義的變量或相反動(dòng)作的函數(shù)等。例如:int minValue;int maxValue;int SetValue();int GetValue();共二十五頁(yè)【建議3-1-1】盡量避免名字中出現(xiàn)數(shù)字編號(hào),如Value1,Value2 等,除非邏輯上的確需要編號(hào)。這是為了防止程序員偷懶,不肯為命名(mng mng)動(dòng)腦筋而導(dǎo)致產(chǎn)生無(wú)意義的名字(
8、因?yàn)橛脭?shù)字編號(hào)最省事)。常用(chn yn)的命名規(guī)則有Windows和Unix兩種,具體怎么用,百度上有,這里就不講了。共二十五頁(yè)函數(shù)(hnsh)長(zhǎng)度函數(shù)的功能要單一,不要多功能函數(shù)要小巧(xioqio)點(diǎn),最好不超過(guò)50行函數(shù)如果長(zhǎng)了,就肯定可以繼續(xù)抽象,由更多的子函數(shù)去組成他共二十五頁(yè)中斷(zhngdun)要短這里的短不僅僅是長(zhǎng)度的問(wèn)題。還有時(shí)間的問(wèn)題。中斷是要執(zhí)行最緊急的任務(wù),其他任務(wù)都應(yīng)該(ynggi)放在中斷外面。我們來(lái)考慮這樣一個(gè)情況。假如有個(gè)時(shí)間中斷函數(shù),每50MS中斷一次。中斷里干兩件事:如果時(shí)分秒進(jìn)位了處理進(jìn)位;如果時(shí)間與鬧鈴一致了,則打開鬧鈴。前面的功能很簡(jiǎn)單。如果后面一
9、個(gè)功能是放一首歌,這首歌有5S。那會(huì)發(fā)生什么事情?很容易就會(huì)發(fā)現(xiàn),秒鐘會(huì)停止運(yùn)行5S。因?yàn)橹袛嘁恢睕](méi)有結(jié)束,所以就不會(huì)響應(yīng)以后的中斷。知道中斷退出后,時(shí)鐘才會(huì)正確運(yùn)行。那怎么辦呢?void timer_interrupt() interrupt 1.alarm=1;void main(). If(alarm=1) play_music(); alarm=0; 共二十五頁(yè)中斷(zhngdun)要短前面的方法叫標(biāo)志置位法。在中斷處理中很常見。但在處理這個(gè)問(wèn)題時(shí)依舊有問(wèn)題。想的出是什么(shn me)問(wèn)題嗎?前面那個(gè)問(wèn)題可能要再用一個(gè)中斷(處理進(jìn)位)或DMA直接存儲(chǔ)器存取方式(不直接經(jīng)CPU)才能比
10、較好的解決。共二十五頁(yè)文件名要用英文主要原因(yunyn)是希望大家養(yǎng)成這個(gè)習(xí)慣。共二十五頁(yè)怎樣寫優(yōu)質(zhì)(yuzh)的代碼?我不是專家。但我推薦幾本專家的書。這幾本書怎么看呢?華為編程規(guī)范可以當(dāng)字典來(lái)使。高質(zhì)量C+編程指南是入門教材。不過(guò)你們現(xiàn)在學(xué)的是C,里面關(guān)于C+的內(nèi)容,主要是類、對(duì)象、繼承、多態(tài)等,可以不看。代碼大全和人月神話這兩部Bible級(jí)的書,他們關(guān)注的也不僅僅是“代碼”??梢苑旁诖策叄齺?lái)不要指望一口氣看完以上任一一本書。最好是先看一部分,好好想想。然后等你們完成下一個(gè)(y )更大的項(xiàng)目后。再回過(guò)頭看看自己看過(guò)的那部分,你肯定會(huì)有更多的感悟。共二十五頁(yè)Keil和Proteus的使
11、用(shyng)共二十五頁(yè)P(yáng)roteus常用(chn yn)元件AT89C51:單片機(jī)RES、RX8:電阻、8排阻LED:發(fā)光(f un)二極管CAP、CAP-ELEC:電容、電解電容CRYSTAL:晶振開關(guān) button電源 cellRESPACK-8或rx8 排阻共二十五頁(yè)寒假(hnji)課題共二十五頁(yè)交流(jioli)時(shí)間共二十五頁(yè)內(nèi)容摘要寒假培訓(xùn)。交流時(shí)間。郭天祥單片機(jī)教學(xué)視頻(十天51單片機(jī)C語(yǔ)言)。/ 全局函數(shù)聲明(shngmng)。/函數(shù)中要用到的全局變量,僅在該文件中有效。/ 全局函數(shù)的實(shí)現(xiàn)體。因?yàn)槿肿兞靠梢员凰泻瘮?shù)訪問(wèn),使用全局變量會(huì)降低函數(shù)之間傳遞數(shù)據(jù)。主要用在中斷中,因?yàn)闊o(wú)法向中斷。而Unix 應(yīng)用程序的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年廣東省東莞市大灣區(qū)教育研究院中考二模英語(yǔ)試題(含答案)
- 酒店行業(yè)垃圾分類課件
- 人教版歷史與社會(huì)七上1.1《我的家在哪里》教學(xué)設(shè)計(jì)
- 湖南省益陽(yáng)市高中數(shù)學(xué) 第二章 隨機(jī)變量及其分布 2.1 離散型隨機(jī)變量及其分布列教學(xué)設(shè)計(jì) 新人教A版選修2-3
- 任務(wù)一 引導(dǎo)層動(dòng)畫 教學(xué)設(shè)計(jì) -2023-2024學(xué)年桂科版初中信息技術(shù)八年級(jí)上冊(cè)
- 七年級(jí)生物上冊(cè) 3.1.1《藻類、苔蘚和蕨類植物》教學(xué)設(shè)計(jì)2 (新版)新人教版
- 人音版一年級(jí)下冊(cè)杜鵑圓舞曲教案
- 人教部編版一年級(jí)上冊(cè)11 ie üe er教學(xué)設(shè)計(jì)
- 高空車安全培訓(xùn)
- 鼠疫傳染病科普知識(shí)演講
- 幼兒園繪本+《不要隨便親我》
- 2022年水果種植基地項(xiàng)目可行性研究報(bào)告
- 液塑限程序(計(jì)算)
- 管道單線圖繪制與管理軟件入門介紹-V
- DB11_T1030-2021 裝配式混凝土結(jié)構(gòu)工程施工與質(zhì)量驗(yàn)收規(guī)程
- 畢業(yè)設(shè)計(jì)10層框架—剪力墻結(jié)構(gòu)體系設(shè)計(jì)計(jì)算書
- 故事繪本愚公移山PPT
- 第三章延伸孔型設(shè)計(jì)
- 預(yù)拌砂漿與傳統(tǒng)建筑砂漿的對(duì)照表
- 醫(yī)療器械定期檢查記錄表
- 隧道盾構(gòu)法施工技術(shù)
評(píng)論
0/150
提交評(píng)論