最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

技術生涯中的第一本書

2023-04-17 23:11 作者:想啥_做啥  | 我要投稿

? 這本書不一定是入門的最佳首選,但是它能帶你站在一定高度來學習單片機知識,書中內容寫作倉促,歡迎大家批評指證,這本書僅僅只是個開始,后期將給大家?guī)砀鄤疟瑑?yōu)質內容 作者郵箱:wangls121@163.com



內容簡介

單片機是一門對綜合性知識要求非常高的課程,單片機的入門一直以來對初學者來說是個老大難題,而入門后如何將這些知識運用到實際項目中,進一步提升單片機開發(fā)使用技能又是一個難題。一般來說,實戰(zhàn)項目帶有很多技巧性,需要大量的知識和經驗積累。針對這些情況,本書將從入門和實用的角度出發(fā),全面系統(tǒng)的介紹單片機從入門到進階以及實戰(zhàn)的技巧。全書包含兩大部分,第一部分以單片機入門為主,通過對比8051、PIC16、MSP430、STM32多種單片機和Arduino開發(fā)平臺下I/O、中斷、定時器、擴展芯片、I2C總線、SPI總線以及串口等外設模塊的使用方式,通過總結介紹了一套適用于通用單片機外設的開發(fā)方法;第二部分結合實際單片機項目中的方法與技巧,從工程的角度出發(fā),圍繞讀者將會面對的工程領域電路以及軟件開發(fā)方法、代碼規(guī)范、模塊化程序編寫、項目基本開發(fā)流程、實用狀態(tài)機編程、單片機操作系統(tǒng)思維方式編程、算法的本質以及常用算法原理與應用場景、單片機中的數據結構、代碼版本管理、基于模型開發(fā)方式實例分析與移植、Arduino開發(fā)平臺介紹與基本使用方法、Vscode開發(fā)工具在單片機中的應用,讓入門讀者近距離感受工程項目中的開發(fā)方式。

本書適合作為電子信息類本、專科學生入門與進階單片機知識的參考書,也可作為電子愛好者實戰(zhàn)參考書,對于單片機或嵌入式工程師來說也是一本不錯的參考書籍。


本身旨在為初學者打造一本全方位介紹單片機入門與進階的書籍,幫助初學者入門,并梳理單片機學習過程中的整個脈絡??赡苡凶x者朋友會問,市面上有這么多單片機入門書籍和視頻,本書在內容上有什么優(yōu)勢?這里簡單的談談自己的看法,作者雖然談不上是這個行業(yè)的名家,但是曾經帶過很多初學者,也經常與剛踏入單片機行業(yè)或放棄該行業(yè)的從業(yè)者進行交流,加上作者本身是通過一步步自學過來的,也長期混跡于各大論壇和行業(yè)技術群,對單片機學習過程中的“坑”深有體會,這里所說的“坑”倒也不是學習單片機本身面臨的知識點難度,而是適合初學者的一套學習方法。所以在本書中,讀者也將看到貫穿全書都是介紹方法與思路。其實各行各業(yè)都一樣,入門這一步非常困難,困難在剛開始讀者對很多東西(以單片機為例:C語言、單片機原理、模擬電路基礎知識、數字電路基礎知識、計算機原理、I2C總線、SPI總線、寄存器)都不懂,不知道從何學起,但是一旦入門了之后,很多讀者經常會感慨“這個玩意原來就這么回事??!”,脈絡清晰了,怎么去補充知識,怎么去學,自然而然也就清晰了。本書內容僅僅只是幫助初學者如何去學習,限于篇幅,許多知識點沒有進一步展開介紹,俗話說的好“師傅領進門,修行靠個人”,單片機和嵌入式開發(fā)也一樣,入門之后,根據每個人的職業(yè)規(guī)劃或愛好可以朝著自己的方向不斷的去補充新的知識和技能。

許多初學者以為單片機開發(fā)就是寫代碼,在作者看來,寫代碼應該放到最后一步。首先讀者需要將整個單片機項目分解、細化,看下哪些知識點是自己熟悉的,哪些是自己不熟悉的,不熟悉知識點再進一步分解成哪些是要花時間與精力解決的,整個項目要使用什么樣的軟件框架,把關鍵問題解決之后再去寫代碼,會起到事半功倍的效果。

掌握模塊化設計思路,其實各行各業(yè)都有這種模塊化思想,例如一輛機動車自上往下看包括發(fā)動機、變速箱、底盤、外觀、內飾等,如果再進一步分解發(fā)動機則包括排氣系統(tǒng)、進氣系統(tǒng)、冷卻系統(tǒng)、燃油系統(tǒng)、配氣機構、曲軸連桿等模塊組成。單片機系統(tǒng)里面這種模塊化思想也體現的淋漓盡致,一個單片機包括CPU、RAM、FLASH、時鐘系統(tǒng)、輸入輸出I/O、I2C、SPI、串口、定時器、RTC模塊;一個單片機項目包含的程序模塊通常有數字輸入模塊、數字輸出模塊、通信模塊、系統(tǒng)調度模塊等,掌握這種模塊化設計思想會讓你在各行各業(yè)中獲益良多。

作者是個物理愛好者,大學期間學的也是物理學專業(yè),出于對電子技術的熱愛,從大二開始,不斷參加各種科技、電子協(xié)會,幫助班上和在校同學解決各種電器問題,小到吹風、音響,大到電視機、電腦、空調、洗衣機,還多次積極協(xié)助組織參與三下鄉(xiāng)活動,將科技知識帶進農村,為老百姓切切實實答疑解惑并解決實際電器問題。此外,作者也多次參加各層級舉辦的電子類競賽,盡管有的比賽成績不是很理想,但是在競賽過程中都能學有所獲、受益良多。正是這些實戰(zhàn)經歷,使得作者在很多方面對單片機和嵌入式的理解比較獨特,也希望這些獨特的理解能幫到各位讀者。

本書內容安排從每個階段實用的角度出發(fā),秉持著通俗易懂的原則,第一部分主要為介紹單片機入門知識,與眾多介紹單片機入門的方式不同,作者特地選擇了市面上常用的四種單片機(STC89C52RC,PIC16,MSP430和STM32)與開源界非常流行的Arduino開發(fā)平臺進行對比,一方面通過對比為了幫助讀者了解不同單片機的開發(fā)方式,另外也可以總結這些單片機開發(fā)方式的共同點,以便讀者以后碰到新單片機時可以將這種技巧快速應用其中。

一直以來,單片機進階是很多單片機初學者面臨的老大難問題,一方面市面上系統(tǒng)性的書籍比較少,另外一方面單片機進階學習需要結合實際項目,單純通過理論方式很難將這些經驗描述到位,作者花了很多心思梳理了單片機進階的整個知識框架,從第16章的實際工程應用中的電路著手到第17章的軟件痛點分析,其中參考了網上大量文章以及初具規(guī)模公司中實用的一些規(guī)范,在第18章介紹了基礎版的代碼規(guī)范,旨在幫助讀者養(yǎng)成一個良好的代碼編寫習慣。實際項目中的程序往往是復雜但又有跡可循的,第19章中特地介紹了如何編寫模塊化程序,以便讀者更好讀懂和編寫一定代碼量的單片機程序。而要做好一個單片機項目,特別是在多個人協(xié)同開發(fā)時,一個好的研發(fā)流程顯得尤為重要,很多技術公司發(fā)展到一定規(guī)模都面臨流程上的問題,第20章中作者以一個實際的案例介紹了一個完整項目的基本開發(fā)流程,為了更進一步的讓讀者對這種開發(fā)方式有所理解,在第21章中特地補充了一個實際做好的項目,來進一步幫助讀者鞏固研發(fā)流程。從第22章開始主要介紹一些實際項目中的技巧,例如第22章中的狀態(tài)機原理以及實際項目中哪些地方用到狀態(tài)機,并進一步延伸出狀態(tài)機更廣泛的用途。而在第23章中則使用通俗易懂的方式介紹操作系統(tǒng)方式編程和如何打造一個基礎版的操作系統(tǒng),通過與市面上非常流行的實時系統(tǒng)uCOSII做對比,讀者會發(fā)現其實開發(fā)操作系統(tǒng)也沒有想象中的那么難。在校期間,很多計算機與電子類專業(yè)學生經常會聽到老師說算法才是程序的靈魂,但是算法到底是什么以及單片機中算法該如何使用,在第24章中進行了詳細的介紹,而為了讓讀者進一步認識算法,在第25章和第26章中加入了兩個非常熟悉的游戲--貪吃蛇與俄羅斯方塊在Windows中和單片機上的實現方式,讓讀者可以更進一步的理解算法的本質。單片機軟件本身是抽象的,單片機能實現相應功能,其實主要是程序編寫者的功勞,為了將這些單片機資源利用好,數據結構在這其中起到了重要作用,第26章中詳細介紹了單片機中常用的幾種數據結構。許多單片機入門者包括從業(yè)多年的工程師對于如何維護代碼一直比較模糊,特別是多人協(xié)作開發(fā)同一個項目時,這種問題顯得尤為突出,第27章針對當前流行的分布式代碼版本管理作了基礎和實用的介紹,這種管理方式無論是對于寫代碼還是文檔管理都是非常不錯的一個選擇。作者認為技術從業(yè)者要勇于探索和擁抱新的技術、新的開發(fā)方式,人類社會的進步就是機器不斷取代人力的過程,單片機開發(fā)也一樣,特別是長期從事單片機開發(fā)行業(yè)的工程師應該有感觸,絕大部分時間都是在做一些普通人都能做得事情,對于一款單片機來說它的資源、開發(fā)方式基本上是固定的,所以第28章中介紹了一種基于模型的開發(fā)方式,這種開發(fā)方式在未來一定會得到全面普及,只是以何種方式、時間出現的問題。一個好的工具、平臺同樣也能加速項目開發(fā)效率,第29章介紹的Arduino開發(fā)平臺,盡管許多讀者非常熟悉,但是也希望通過本書這種介紹方式讀者能對開源平臺有一個全新的理解。而第30章的Vscode也算是微軟近年來的大作,幾乎橫跨整個代碼界面,其便捷性和可擴展性給工程師帶來了極大的便利性。

最后感謝周圍關心與支持作者的親人與朋友,本書寫作過程比較倉促,有些內容表達上有所欠缺,希望讀者朋友能夠諒解,也真心希望讀者朋友能通過本書學到或悟到一些對您有用的東西。

目?錄

第一部分 入門篇

第1章 經典的LED例子

1.1 8051單片機點亮LED

1.2 STM32單片機點亮LED

1.3 MSP430單片機點亮LED

1.4 PIC單片機點亮LED

1.5 Arduino點亮LED

思考與拓展

第2章 LED點亮例子剖析

2.1 LED電路解析

2.2 單片機對比介紹

2.2.1 電腦主板

2.2.2 手機“CPU”

2.2.3 單片機內部組成

2.3 單片機運行程序簡介

2.3.1 CPU運行程序本質

1. 加法運算

2. 減法運算

3. 乘法運算

4. 除法運算

2.3.2 CPU執(zhí)行程序匯編分析

2.4 單片機與Arduino的關聯(lián)與區(qū)別

第3章 初學者搭建電路的神器——面包板

3.1初學者使用面包板的好處

3.2 面包板使用簡介

3.3 面包板在實際項目中的妙用

3.3.1 原型電路驗證

3.3.2 單片機連接分立元器件或模塊

3.3.3 多平臺、多模塊系統(tǒng)驗證

思考與拓展

第4章 開發(fā)環(huán)境搭建

4.1 8051單片機Keil開發(fā)環(huán)境搭建

4.1.1 8051單片機軟件安裝與編譯

4.1.2 STC系列8051單片機代碼下載

4.2 STM32單片機開發(fā)環(huán)境搭建

4.2.1 STM32單片機軟件安裝與編譯

4.2.2 STM32單片機代碼下載

1.SWD方式下載

2.串口下載

4.3 MSP430開發(fā)環(huán)境搭建

4.3.1 軟件安裝與編譯

4.3.2 代碼下載

4.4 PIC開發(fā)環(huán)境搭建

4.4.1 軟件安裝與編譯

4.4.2 PIC單片機代碼下載

4.5 Arduino開發(fā)環(huán)境搭建

4.5.1 ArduinoIDE開發(fā)環(huán)境搭建

4.5.2 ArduinoIDE代碼下載

4.5.3 MSP430 Arduino開發(fā)環(huán)境搭建

4.6 Proteus仿真環(huán)境搭建

思考與拓展

第5章 基本輸出IO口——多變的輸出控制

5.1 I/O基本知識

5.1.1 萬物皆有電阻

5.1.2 歐姆定律

5.1.2 I/O專業(yè)術語

1.開漏輸出

2.上拉輸出

3.推挽輸出

4.高邊開關

5.低邊開關

5.2 單片機I/O口輸出電路內部剖析

5.2.1 STC單片機I/O口

5.2.2 PIC16單片機I/O口

5.2.3 MSP430單片機I/O口

5.2.4 STM32單片機I/O口

5.3 I/O作為輸出用的幾種方式

5.3.1 小電流輸出驅動

5.3.2 電平或功率匹配

5.3.3 大功率大電壓驅動

5.3.3 設備工作電壓遠高于安全電壓

思考與拓展

第6章 基本輸入I/O口——不限于按鍵輸入

6.1 開關基礎知識普及

6.1.1 微動開關

6.1.2 感應開關

6.1.3 電容觸摸開關

6.1.4 人體感應模塊

6.1.5 普通6*6按鍵

6.2 單片機I/O輸入模式

6.2.1 上拉輸入

6.2.2 下拉輸入

6.2.3 浮空輸入

6.3 單片機I/O口輸入電路內部剖析

6.3.1 8051單片機I/O輸入

6.3.2 PIC16單片機I/O輸入

6.3.3 MSP430單片機I/O輸入

6.3.4 STM32單片機I/O輸入

6.4 幾種常用的輸入方式

6.4.1 直連單片機I/O口

6.4.2 匹配電平后連接單片機I/O口

6.4.3 超過安全電壓或跨距離信號輸入

思考與拓展

第7章 單片機引腳不夠用怎么辦——外掛擴展芯片

7.1 使用擴展芯片情形及基本步驟

7.2 8051單片機實現3-8線譯碼器驅動

7.3 8051單片機實現74HC245收發(fā)器驅動

7.4 8051單片機實現74HC573鎖存器驅動

思考與拓展

第8章 中斷——單片機“一心多用”卻不落下重要事情

8.1 生活中場景與外部中斷對比

8.2 8051單片機外部中斷

8.3 PIC16單片機中斷

8.4 MSP430單片機中斷

8.5 STM32單片機中斷

8.6 Arduino外部中斷

8.7?外部中斷總結

思考與拓展

第9章 不甘只做定時器-它還有很多其它妙用

9.1 8051單片機定時器

9.2 PIC16定時器

9.3 MSP430定時器

9.4 STM32定時器

9.5 Arduino定時器

9.6 定時器使用總結

思考與拓展

第10章 少引腳做多事情——總線

10.1 總線由來簡介

10.2 總線初探

10.2.1 手動模擬驅動74HC595

10.2.2 8051單片機驅動74HC595

10.3 SPI總線原理與使用

10.3.1 SPI總線介紹

10.3.2 51單片機驅動MCP23S08輸出

10.3.3?51單片機讀取MCP23S08按鍵值

10.4 I2C總線驅動PCA9554

10.4.1 I2C總線簡單介紹

1. 起始位

2. 停止位

3. 數據位

10.4.2 輸出控制流水燈

10.4.3 讀取I2C輸入數據控制LED

思考與拓展

第11章 串口通信——單片機與外界溝通常用方式

11.1 原始通信方式與基本概念

11.1.1?單工通信模式

11.1.2?半雙工通信模式

11.1.3?全雙工通信模式

11.2 串口通信基本原理

11.3 串口通信單片機實現

11.3.1 8051單片機串口通信

11.3.2 PIC16單片機串口通信

11.3.3 MSP430單片機串口通信

11.3.4 STM32單片機串口通信

11.3.5 Arduino單片機串口通信

11.3.6 串口通信總結

11.4 同是串口通信,別被接口和協(xié)議弄糊涂

11.4.1 串口通信物理接口

1.RS232接口

2.RS485接口

11.4.2 串口通信協(xié)議

思考與拓展

第12章 非常重要卻常被忽略的技能——調試

12.1 使用硬件調試器dbug

12.1.1 PIC單片機調試

1. MPLAB代碼調試步驟

2.MPLAB變量監(jiān)測

12.1.2 MSP430單片機調試

1.IAR軟件調試步驟

2.IAR軟件變量監(jiān)測

12.1.3 STM32調試

1.Keil軟件調試步驟

2.Keil軟件變量監(jiān)測

12.1.4?單片機調試器使用總結

12.2 一顆LED燈能反饋的信息眾多

12.2.1 定時器中斷中使用LED調試

12.2.2 串口通信中使用LED調試

12.2.3 LED直接顯示設備狀態(tài)

12.3 單片機調試使用最多的方式-串口

12.4 任何時候要有快速找到問題的辦法

12.4.1 軟硬件問題確定

12.4.2 盡可能用熟悉的東西,找可靠渠道購買

思考與拓展

第13章 有趣的顯示方式

13.1 生活中的LED變形記

13.2 單總線全彩燈

思考與拓展

第14章 A/D-打開單片機與模擬世界溝通的橋梁

14.1 A/D原理

14.2 PIC單片機A/D

14.3 MSP430單片機A/D

14.4 STM32單片機A/D

14.5 Arduino A/D

思考與拓展

第15章 以為只是個PWM,沒想到你有這么多“魔法”

15.1 PWM介紹

15.1.1 多種方式實現PWM

15.1.2 專用名詞解釋

1.頻率

2.占空比

15.2 呼吸燈原理剖析

15.3 舵機控制

15.4 步進電機控制

15.4.1 步進電機原理

15.4.2?步進電機控制

15.5 PWM直流電機調速

思考與拓展

第二部分 提高篇

第16章 學了很多東西,實際項目中如何用——硬件部分

16.1 實際項目電路與單片機入門電路差距

16.2 供電電路

16.2.1?開發(fā)板供電

16.2.2?消費電子產品供電

16.2.3?工業(yè)控制器供電

16.2.4?車用控制器供電

16.2.5電源電路總結

16.3 輸入電路

16.3.1 開發(fā)板輸入電路

16.3.2 工業(yè)輸入電路

16.3.3 車用輸入電路

16.4 輸出電路

16.4.1 工業(yè)功率輸出電路

16.4.2 車用功率輸出電路

16.5 A/D采集電路

16.5.1 工業(yè)A/D輸入電路

16.5.1 工業(yè)A/D輸入電路

16.6 通信電路

16.6.1 開發(fā)板通信電路

16.6.2 CAN總線通信電路

16.7 對比分析總結

思考與拓展

第17章 別讓單片機學習停留在點亮LED——軟件部分

17.1 初學者單片機軟件能力徘徊不前

17.2?怎么改變這種現狀

17.2.1 項目分解能力

17.2.2 程序框架搭建能力

17.2.3 算法能力

17.3 學習單片機成長捷徑

17.3.1 多做項目

17.3.2 明確目標

17.3.3 執(zhí)行力,拒絕拖延

17.4 站在巨人的肩膀上

17.4.1 Arduino平臺

17.4.2開源代碼托管平臺

思考與拓展

第18章 要想路兒走的遠,編程規(guī)范少不了

18.1 組織結構

18.1.1 工程文件組織結構

18.1.2 文件夾代碼組織結構

18.1.3 程序結構

18.2 標識符命名

18.2.1 命名基本原則

18.2.2 宏與常量命名

18.2.3 變量命名

18.2.4 函數命名

18.2.5 文件命名

18.3?代碼排版

18.3.1 代碼縮進

18.3.2 代碼分行

18.3.3 頭文件

18.3.4 注釋排版

18.3.5?代碼可讀性

18.4 注釋

18.4.1 注釋基本原則

18.4.2 文件注釋

18.4.3 函數與代碼注釋

1.?函數注釋

2. 代碼注釋

3.變量、常量、宏的注釋

18.6 變量、結構、常量、宏

18.6.1 變量定義

18.6.2 類型前綴定義

18.6.3 變量作用域

18.6.4 結構體與枚舉命名

18.6.5 常量、宏、模版命名規(guī)則

18.6.6 位域

18.7 函數規(guī)范

18.7.1 函數命名

18.7.2 函數參數

18.8 變量和結構規(guī)范

18.9 宏表達式與常量規(guī)范

18.10 表達式規(guī)范

思考與拓展

第19章 模塊化程序編寫

19.1 點亮一顆LED模塊化程序改造

19.1.1 xxx.h文件編寫

19.1.2 xxx.c文件編寫

19.2 模塊化程序編寫進階

19.3?打造可重復利用的軟件模塊

思考與拓展

第20章 多功能電子鐘——項目開發(fā)基本流程

20.1 項目需求

20.1.1 客戶描述

20.1.2 需求整理

20.2 項目規(guī)格說明

20.3 項目總體方案

20.4 項目概要設計

20.4.1 硬件概要方案

20.4.2 軟件概要設計

20.5 項目詳細設計

20.5.1 硬件詳細方案

20.5.2 軟件詳細方案

20.6 項目調試與驗證

20.6.1 硬件調試

20.6.2 軟件部分

20.7 項目測試

20.7.1 功能測試

20.7.2 壓力測試

20.7.3 外界環(huán)境測試

20.8 項目批量階段

思考與拓展

第21章 網紅樓梯燈

21.1 項目需求

21.2 項目規(guī)格說明

21.3 項目總體方案

21.4 項目概要設計

21.4.1 硬件概要方案

21.5 項目詳細設計

21.5.1 硬件詳細方案

21.5.2 軟件詳細方案

21.6 項目調試與驗證

21.6.1 控制器調試

21.6.2 LED驅動板調試

21.6.3 軟件驗證

21.7 項目測試

21.7.1 硬件測試

21.7.2 軟件測試

1. 正常功能測試

2.?異常功能測試

第22章 狀態(tài)機編程,不止于按鍵

22.1 狀態(tài)機實現按鍵功能

22.2 狀態(tài)機基本原理與實現

22.2.1 狀態(tài)機原理

22.2.2 狀態(tài)機實現

22.3 狀態(tài)機串口接收協(xié)議

22.3.1 簡單版串口協(xié)議

22.3.2 實用串口協(xié)議

思考與拓展

第23章 可以不用操作系統(tǒng),但是要會操作系統(tǒng)方式編程

23.1 不要被操作系統(tǒng)嚇到,其實它也可以很簡單

23.2 動手寫一個簡單操作系統(tǒng)

23.2.1 構造一個簡單的調度器

1. 定義一個任務結構體

2. 構造任務添加函數

3. 構造調度執(zhí)行函數

4. 任務更新函數

5. 任務啟動

23.3 與市面主流系統(tǒng)對比

思考與拓展

第24章 算法和程序是兩碼事

24.1 程序和算法

24.1.1 算法本質

24.1.2?程序本質以及與算法之間聯(lián)系

24.2 單片機項目中的典型算法

24.2.1 濾波算法

1. 限幅濾波

2. 中位值濾波法

24.2.2 PID算法

1.只有比例系數P的情況

2.微分系數D

3.積分系數I

24.2.3 校驗算法

1.校驗和

2.異或校驗

3.CRC校驗

4.MD5算法

5.查表算法

24.3別花太多時間在程序,算法才是值得付出的

思考與拓展

第25章 Windows和單片機平臺算法對比

25.1 貪吃蛇

25.1.1 貪吃蛇游戲實現要點

25.1.2 貪吃蛇原理解析

1.繪制貪吃蛇游戲區(qū)域

2.蛇身移動

3.繪制食物

4.游戲結束判斷

5.蛇“吃”食物

6.難度自動增加功能

25.2 Windows下貪吃蛇代碼解析

25.2.1游戲區(qū)域初始化

25.2.2 繪制食物與蛇身

1.繪制食物

2.蛇身繪制

25.2.3 檢測蛇碰撞

25.2.4 蛇吃食物

25.2.5 蛇身移動坐標更新

25.2.6 蛇身變換方向

25.3 單片機實現貪吃蛇

25.3.1 游戲變量與宏定義

25.3.2 復位蛇身與游戲開始

25.3.3 按鍵檢測與設定蛇運動方向

25.3.4 蛇身移動坐標更新

25.3.5 吃食物檢測

25.3.6 產生新食物

25.3.7 碰撞檢測

25.3.8 顯示蛇與食物

25.4 俄羅斯方塊

25.4.1 俄羅斯方塊類型

25.4.2 方塊下落顯示區(qū)域

25.4.3 預覽方塊和分數顯示

25.4.4 按鍵檢測和移動方塊

1.按鍵檢測

2.移動方塊

3.正常下落

4.向左向右移動方塊

5.向下移動方塊

25.4.5 旋轉方塊

25.4.6 方塊消除

思考與拓展

第26章 數據結構-怎么感受不到你的存在

26.1 鏈表-多任務調度

26.1.1單向鏈表

1.單向鏈表結構體定義

2.創(chuàng)建單向鏈表

3.單鏈表插入節(jié)點

4.單鏈表刪除操作

5.判斷單鏈表是否為空

6.獲取單鏈表中節(jié)點個數

26.1.2 雙向鏈表

1.雙向鏈表和單向鏈表的區(qū)別

2. 雙鏈表結構體定義

3. 初始化雙向鏈表

4.尾部插入一個節(jié)點

5.指定節(jié)點前面插入

6.刪除指定節(jié)點

7.檢查鏈表是否為空

26.2 隊列-通信緩沖

26.2.1 環(huán)形隊列基本操作

1.隊列結構體

2.隊列初始化

3.清空隊列

4.入隊

5.出隊

26.2.2 8051單片機隊列操作示例

1.隊列大小及緩存定義

2.隊列初始化

3.隊列入隊操作

26.2.3 隊列操作在實時系統(tǒng)中的應用

思考與拓展

第27章 代碼版本管理-讓你的代碼管理更規(guī)范

27.1 混亂的代碼管理方式

27.1.1 復制粘貼-標題命名法

27.1.2 復制粘貼-日期管理法

27.3 使用工具科學管理代碼,讓重復的代碼不重復

27.3.1 代碼管理軟件介紹

27.3.2 代碼管理軟件安裝

27.3.3 代碼管理軟件打開與使用

1.?Git Extensions打開

2. Git Extensions新建倉庫與文件推送

3. Git Extensions 文件變更

27.4 Git基本原理介紹

27.4.1 Git簡介

27.4.2 Git能夠解決的問題

27.4.3 Git實現原理

思考與拓展

第28章 不用寫一行代碼的開發(fā)方式——基于模型開發(fā)

28.1 一個基于模型的簡單例子

28.2 當你以寫代碼為榮時,殊不知正在被機器悄悄取代

28.3 任意單片機使用基于模型開發(fā)

28.3.1 8051單片機使用Simulink模型開發(fā)

28.2.2 simulink生成模型代碼簡單剖析

28.2.3 其它單片機模型移植

28.4 基于模型開發(fā)方式進階思考

思考與拓展

第29章 打造實用的Arduino平臺

29.1 打造個人的Arduino開發(fā)平臺

29.1.1 添加Arduino支持的單片機類型

1.在線方式安裝Arduino硬件支持包

29.1.2 添加Arduino軟件庫

1.在線添加庫

2.離線添加庫

29.2 Arduino IDE多文件工程建立

29.3 多種仿真平臺總有一個適合你

29.3.1 使用Proteus仿真Arduino

29.3.2 在線TinkerCAD仿真

29.3.3 使用在線wokwi仿真

思考與拓展

第30章 萬能開發(fā)工具Vscode

30.1 Vscode簡介

30.2 Vscode開發(fā)環(huán)境搭建

30.3 單片機開發(fā)平臺PlatformIO

30.3.1 添加PlatformIO擴展插件

30.3.2 PlatformIO新建8051單片機工程

30.3.3 PlatformIO新建Arduino工程

思考與拓展



技術生涯中的第一本書的評論 (共 條)

分享到微博請遵守國家法律
丹东市| 连州市| 武义县| 聂拉木县| 同心县| 乌兰县| 石楼县| 依兰县| 东乡县| 中宁县| 义乌市| 清水河县| 万盛区| 海安县| 同心县| 六枝特区| 陆川县| 康乐县| 循化| 永济市| 建阳市| 惠水县| 黄冈市| 塔城市| 白玉县| 晋州市| 剑阁县| 边坝县| 钟祥市| 吴川市| 邹城市| 法库县| 桑植县| 三穗县| 信阳市| 通山县| 蓝山县| 五常市| 长垣县| 伊金霍洛旗| 冀州市|