資料介紹
第一節(jié):吳堅鴻談初學(xué)單片機(jī)的誤區(qū)。
第二節(jié):delay()延時實現(xiàn)LED燈的閃爍。
第三節(jié):累計主循環(huán)次數(shù)使LED燈閃爍。
第四節(jié):累計定時中斷次數(shù)使LED燈閃爍。
第五節(jié):蜂鳴器的驅(qū)動程序。
第六節(jié):在主函數(shù)中利用累計主循環(huán)次數(shù)來實現(xiàn)獨立按鍵的檢測。
第七節(jié):在主函數(shù)中利用累計定時中斷的次數(shù)來實現(xiàn)獨立按鍵的檢測。
第八節(jié):在定時中斷函數(shù)里執(zhí)行獨立按鍵的掃描程序。
第九節(jié):獨立按鍵的雙擊按鍵觸發(fā)。
第十節(jié):兩個獨立按鍵的組合按鍵觸發(fā)。
第十一節(jié):同一個按鍵短按與長按的區(qū)別觸發(fā)。
第十二節(jié):按住一個獨立按鍵不松手的連續(xù)步進(jìn)觸發(fā)。
第十三節(jié):按住一個獨立按鍵不松手的加速勻速觸發(fā)。
第十四節(jié):矩陣鍵盤的單個觸發(fā)。
第十五節(jié):矩陣鍵盤單個觸發(fā)的壓縮代碼編程。
第十六節(jié):矩陣鍵盤的組合按鍵觸發(fā)。
第十七節(jié):兩片聯(lián)級74HC595驅(qū)動16個LED燈的基本驅(qū)動程序。
。第十八節(jié):把74HC595驅(qū)動程序翻譯成類似單片機(jī)IO口直接驅(qū)動的方式。
第十九節(jié):依次逐個點亮LED之后,再依次逐個熄滅LED的跑馬燈程序。
第二十節(jié):依次逐個亮燈并且每次只能亮一個燈的跑馬燈程序。
第二十一節(jié):多任務(wù)并行處理兩路跑馬燈。
第二十二節(jié):獨立按鍵控制跑馬燈的方向。
第二十三節(jié):獨立按鍵控制跑馬燈的速度。
第二十四節(jié):獨立按鍵控制跑馬燈的啟動和暫停。
第二十五節(jié):用LED燈和按鍵來模擬工業(yè)自動化設(shè)備的運(yùn)動控制。
第二十六節(jié):在主函數(shù)while循環(huán)中驅(qū)動數(shù)碼管的動態(tài)掃描程序。
第二十七節(jié):在定時中斷里動態(tài)掃描數(shù)碼管的程序。
第二十八節(jié):數(shù)碼管通過切換窗口來設(shè)置參數(shù)。
第二十九節(jié):數(shù)碼管通過切換窗口來設(shè)置參數(shù),并且不顯示為0的高位。
第三十節(jié):數(shù)碼管通過閃爍來設(shè)置數(shù)據(jù)。
第三十一節(jié):數(shù)碼管通過一二級菜單來設(shè)置數(shù)據(jù)的綜合程序。
第三十二節(jié):數(shù)碼管中的倒計時程序。
第三十三節(jié):能設(shè)置速度檔位的數(shù)碼管倒計時程序。
第三十四節(jié):在數(shù)碼管中實現(xiàn)iphone4S開機(jī)密碼鎖的程序。
第三十五節(jié):帶數(shù)碼管顯示的象棋比賽專用計時器。
第三十六節(jié):帶數(shù)碼管顯示的加法簡易計算器。
第三十七節(jié):數(shù)碼管作為儀表盤顯示跑馬燈的方向,速度和運(yùn)行狀態(tài)。
第三十八節(jié):判斷數(shù)據(jù)尾來接收一串?dāng)?shù)據(jù)的串口通用程序框架。
第三十九節(jié):判斷數(shù)據(jù)頭來接收一串?dāng)?shù)據(jù)的串口通用程序框架。
第四十節(jié):常用的自定義串口通訊協(xié)議。
第四十一節(jié):在串口接收中斷里即時解析數(shù)據(jù)頭的特殊程序框架。
第四十二節(jié):通過串口用delay延時方式發(fā)送一串?dāng)?shù)據(jù)。
第四十三節(jié):通過串口用計數(shù)延時方式發(fā)送一串?dāng)?shù)據(jù)。
第四十四節(jié):從機(jī)的串口收發(fā)綜合程序框架
第四十五節(jié):主機(jī)的串口收發(fā)綜合程序框架
第四十六節(jié):利用AT24C02進(jìn)行掉電后的數(shù)據(jù)保存。
第四十七節(jié):操作AT24C02時,利用“一氣呵成的定時器延時”改善數(shù)碼管的閃爍現(xiàn)象。
第四十八節(jié):利用DS1302做一個實時時鐘 。
第四十九節(jié):利用DS18B20做一個溫控器 。
第五十節(jié):利用ADC0832采集電壓信號,用平均法和區(qū)間法進(jìn)行軟件濾波處理。
第五十一節(jié):利用ADC0832采集電壓信號,用連續(xù)N次一致性的方法進(jìn)行濾波處理。
第五十二節(jié):程序后續(xù)升級修改的利器,return語句鮮為人知的用法。
第五十三節(jié):指針的第一大好處,讓一個函數(shù)可以封裝多個相當(dāng)于return語句返回的參數(shù)。
第五十四節(jié):指針的第二大好處,指針作為數(shù)組在函數(shù)中的輸入接口。
第五十五節(jié):指針的第三大好處,指針作為數(shù)組在函數(shù)中的輸出接口。
第五十六節(jié):指針的第四大好處,指針作為數(shù)組在函數(shù)中的輸入輸出接口。
第五十七節(jié):為指針加上緊箍咒const,避免意外修改了只做輸入接口的數(shù)據(jù)。
第五十八節(jié):指針的第五大好處,指針在眾多數(shù)組中的中轉(zhuǎn)站作用。
第五十九節(jié):串口程序第40,44,45節(jié)中存在一個bug,特此緊急公告。
第六十節(jié):用關(guān)中斷和互斥量來保護(hù)多線程共享的全局變量。
第六十一節(jié):組合BCD碼,非組合BCD碼,以及數(shù)值三者之間的相互轉(zhuǎn)換和關(guān)系。
第六十二節(jié):大數(shù)據(jù)的加法運(yùn)算。
第六十三節(jié):大數(shù)據(jù)的減法運(yùn)算。
第六十四節(jié):大數(shù)據(jù)的乘法運(yùn)算。
第六十五節(jié):大數(shù)據(jù)的除法運(yùn)算。
第六十六節(jié):單片機(jī)外部中斷的基礎(chǔ)。
第六十七節(jié):利用外部中斷實現(xiàn)模擬串口數(shù)據(jù)的收發(fā)。
第六十八節(jié):單片機(jī)C語言的多文件編程技巧。
第六十九節(jié):使用static關(guān)鍵字可以減少全局變量的使用。
第七十節(jié):深入講解液晶屏的構(gòu)字過程。
第七十一節(jié):液晶屏的字符,16點陣,24點陣和32點陣的顯示程序。
第七十二節(jié):在液晶屏中把字體順時針旋轉(zhuǎn)90度顯示的算法程序。
第七十三節(jié):在液晶屏中把字體鏡像顯示的算法程序。
第七十四節(jié):在液晶屏中讓字體可以跨區(qū)域無縫對接顯示的算法程序。
第七十五節(jié):在12864液晶屏中讓字體以1個點陣為單位進(jìn)行移動顯示的算法程序。
第七十六節(jié):如何把一個任意數(shù)值的變量顯示在液晶屏上。
第七十七節(jié):在1個窗口里通過移動光標(biāo)來設(shè)置不同參數(shù)的液晶屏菜單程序。
第七十八節(jié):在多個窗口里通過移動光標(biāo)來設(shè)置不同參數(shù)的液晶屏菜單程序。
第七十九節(jié):通過主菜單移動光標(biāo)來進(jìn)入子菜單窗口的液晶屏程序。
第八十節(jié):調(diào)用液晶屏內(nèi)部字庫來顯示漢字或字符的坐標(biāo)體系和本質(zhì)。
第八十一節(jié):液晶屏顯示串口發(fā)送過來的任意漢字和字符。
第八十二節(jié):如何通過調(diào)用液晶屏內(nèi)部字庫把一個任意數(shù)值的變量顯示出來。
第八十三節(jié):矩陣鍵盤輸入任意數(shù)字或小數(shù)點的液晶屏顯示程序。
第八十四節(jié):實時同步把鍵盤輸入的BCD碼數(shù)組轉(zhuǎn)換成數(shù)值的液晶屏顯示程序。
第八十五節(jié):實時同步把加減按鍵輸入的數(shù)值轉(zhuǎn)換成BCD碼數(shù)組的液晶屏顯示程序。
第八十六節(jié):數(shù)字鍵盤與液晶菜單的綜合程序。
第八十七節(jié):鄭文顯捐贈的工控項目源代碼。
第八十八節(jié):電子稱連續(xù)不斷從串口對外發(fā)送數(shù)據(jù),單片機(jī)靠關(guān)鍵字快速截取有效數(shù)據(jù)串。
第八十九節(jié):用單片機(jī)內(nèi)部定時器做一個時鐘。
第九十節(jié):針對行程開關(guān)感應(yīng)器,分享一種既能及時響應(yīng),又能抗干擾處理的識別思路。
第一節(jié):吳堅鴻談初學(xué)單片機(jī)的誤區(qū)。
?。?)很難記住繁雜的寄存器?寄存器不用死記硬背,鴻哥我行走江湖多年,連一個寄存器都記不住。需要配置寄存器的時候,直接在網(wǎng)上或者書本上參考別人現(xiàn)成的配置程序是上策,查找芯片數(shù)據(jù)手冊是中策,死記硬背寄存器是最最下策。
?。?)很難記住繁雜的匯編語言指令?除非是在校學(xué)生要應(yīng)付考試或者少數(shù)工作中繞不開匯編,否則學(xué)匯編就是浪費時間。鴻哥我行走江湖多年,從來就沒有用匯編幫客戶做過一個項目。
(3)C 語言很難學(xué)?你不用學(xué)指針,你不用學(xué)帶形參的函數(shù),你不用學(xué)結(jié)構(gòu)體,你不用學(xué)宏定義,你不用學(xué)文件操作,你也不用死記繁瑣的數(shù)據(jù)類型。你只要會:
5 條指令語句 switch 語句,if else 語句,while 語句,for 語句,=賦值語句。
7 個運(yùn)算符+,-,*,/,|,&,!。
4 個邏輯關(guān)系符||,&&,!=,==。
3 個數(shù)據(jù)類型 unsigned char, unsigned int, unsigned long。
3 個進(jìn)制相互轉(zhuǎn)化,二進(jìn)制,十六進(jìn)制,十進(jìn)制。
1 個 void 函數(shù)。
1 個一維數(shù)組 code(或 const) unsigned char array[]。
那么世界上任何一種邏輯功能的單片機(jī)軟件你都能做出來。
鴻哥我當(dāng)年剛畢業(yè)出來工作的時候才知道可以用 C語言開發(fā)單片機(jī),一開始只用 if 語句就把項目做出來了,沒有用指針,沒有用帶形參的函數(shù)等復(fù)雜的功能。再到后來才慢慢開始用 C 語言其他的高級功能,但是我發(fā)現(xiàn) C 語言其他的高級功能,本質(zhì)上都是用我前面列舉出來的最基本功能集合而成,只是書寫更加簡單方便了一點,編譯后的機(jī)器碼都大同小異。所以不會指針等高級功能你不用自卑,恰恰相反,當(dāng)你會最簡單的幾個語句,就把這些高級功能的程序都做出來了,你才發(fā)現(xiàn)你對底層了解得更加透切,再學(xué)那些高級功能輕而易舉。當(dāng)你裸機(jī)跑的程序都能夠協(xié)調(diào)得很好的時候,你才發(fā)現(xiàn)所謂高深的操作系統(tǒng)也不過如此,只要給你時間和金錢你也可以寫個操作系統(tǒng)來玩玩。
?。?)很難記住精確時間的計算公式?經(jīng)常看到時間公式等于晶振,時鐘周期,執(zhí)行指令次數(shù)他們之間的乘除關(guān)系式。鴻哥我認(rèn)為這些都是浮云,不用糾結(jié)也不用去記,大概了解一下就可以了。不管你對公式掌握得有多精確,你都不可能做出非常精確的時間。想用單片機(jī)做一個非常精確的時間這種想法一開始就是錯的,不可能的。真想做一個比較精確的時間,應(yīng)該用外圍時鐘芯片或者 FPGA 和 CPLD,而不是單片機(jī)。
?。?)很難記住繁雜的各種通信協(xié)議?什么 IIC,SPI,232 串口通訊,CAN,USB 等等。這些都是浮云,你不用記那么多,你只要理解兩種通訊方式就夠了,那就是串行通訊方式和并行通訊方式。不管世界上有多少種通訊協(xié)議,物理世界上只有這兩種通訊方式,其他各種名稱的通訊協(xié)議都基于此兩種方式演變而來。
?。?)很難寫短小精悍的程序?初學(xué)者不要糾結(jié)于此。做項目開發(fā),程序容量不是刻意追求的目標(biāo),程序多一點少一點沒關(guān)系,現(xiàn)在大容量的單片機(jī)品種非常多,容量不會是寸土寸金的事情,我們更加要關(guān)注程序的運(yùn)行效率,可讀性和可修改性。
- 手把手教你開發(fā)基于單片機(jī)的wifi通信的物聯(lián)網(wǎng)項目(遠(yuǎn)程燈控制)
- 手把手教你學(xué)會AVR單片機(jī)pdf.05 0次下載
- 手把手教你學(xué)會AVR單片機(jī)pdf.04 0次下載
- 手把手教你學(xué)會AVR單片機(jī)pdf.03 0次下載
- 手把手教你學(xué)會AVR單片機(jī)pdf.02 0次下載
- 手把手教你學(xué)會AVR單片機(jī)pdf.01 0次下載
- 手把手教你學(xué)CAN總線PDF電子書免費下載 125次下載
- 手把手教你單片機(jī)程序框架的PDF電子書免費下載 278次下載
- 8051系列單片機(jī)C程序設(shè)計完全手冊PDF電子書免費下載 263次下載
- 51單片機(jī)100實例源碼的注釋詳細(xì)PDF電子書免費下載 213次下載
- 51單片機(jī)C語言程序100例電子書免費下載 314次下載
- 手把手教你學(xué)電子書制作 0次下載
- 手把手教你學(xué)習(xí)FPGA—LED篇 0次下載
- 從業(yè)將近十年!手把手教你單片機(jī)程序框架 109次下載
- 從業(yè)將近十年!手把手教你單片機(jī)程序框架_【吳堅鴻】 350次下載
- 51單片機(jī)燒寫程序的方法 4929次閱讀
- 單片機(jī)里的程序是如何運(yùn)行? 3908次閱讀
- 單片機(jī)的主程序是如何執(zhí)行的 1w次閱讀
- HD44780讀寫單片機(jī)C51程序免費下載 4146次閱讀
- 學(xué)習(xí)單片機(jī)一定要先學(xué)好C語言再去學(xué)單片機(jī)嗎 1.3w次閱讀
- 51單片機(jī)的學(xué)習(xí)步驟 8220次閱讀
- 如何學(xué)習(xí)STC單片機(jī)詳細(xì)STC單片機(jī)資料說明 1.1w次閱讀
- 單片機(jī)最小系統(tǒng)板制作方法 2.3w次閱讀
- 新手學(xué)習(xí)單片機(jī)的首選:51單片機(jī) 8536次閱讀
- 怎么讀取單片機(jī)程序_單片機(jī)程序是如何執(zhí)行的_如何讀懂單片機(jī)程序 7.4w次閱讀
- 分享學(xué)習(xí)單片機(jī)的四個階段 5481次閱讀
- 單片機(jī)初學(xué)者必看:這些單片機(jī)學(xué)習(xí)心得要牢記 1.4w次閱讀
- 單片機(jī)與程序設(shè)計(上) 3786次閱讀
- 單片機(jī)外圍功能電路控制的基礎(chǔ)知識 9595次閱讀
- 單片機(jī)編程之匯編語言基礎(chǔ)-常用指令和程序模式 1.5w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 651單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 751單片機(jī)大棚環(huán)境控制器仿真程序
- 1.10 MB | 2次下載 | 免費
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多