注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計巧學易用單片機:從零基礎入門到項目實戰(zhàn)

巧學易用單片機:從零基礎入門到項目實戰(zhàn)

巧學易用單片機:從零基礎入門到項目實戰(zhàn)

定 價:¥119.00

作 者: 王良升
出版社: 清華大學出版社
叢編項:
標 簽: 暫缺

ISBN: 9787302626893 出版時間: 2023-02-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字數(shù):  

內(nèi)容簡介

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

作者簡介

  王良升,長沙智能駕駛研究院電氣工程師。主導參與多項整車自動駕駛電子電氣方案設計與改造項目,目前主要從事自動駕駛電子電氣架構(gòu)的研發(fā)。主持研發(fā)工程車整車控制器、非標自動化設備整機電子電氣系統(tǒng)、自動駕駛整車電子電氣架構(gòu),擁有10年以上豐富的單片機與底層軟件項目開發(fā)經(jīng)驗。

圖書目錄


入門篇
第1章經(jīng)典的LED例子
1.18051單片機點亮LED
1.2PIC單片機點亮LED
1.3MSP430單片機點亮LED
1.4STM32單片機點亮LED
1.5Arduino點亮LED
第2章LED點亮例子剖析
2.1LED電路解析
2.2單片機科普
2.2.1計算機主板
2.2.2手機CPU
2.2.3單片機內(nèi)部組成
2.3單片機運行程序解剖
2.3.1CPU運行程序的本質(zhì)
2.3.2點亮一顆LED匯編代碼剖析
第3章初學者搭建電路神器——面包板
3.1初學者使用面包板的好處
3.2面包板使用簡介
3.3面包板在實際項目中的妙用
3.3.1原型電路驗證
3.3.2單片機連接分立元器件或模塊
3.3.3多平臺、多模塊系統(tǒng)驗證
第4章開發(fā)環(huán)境搭建
4.18051單片機Keil開發(fā)環(huán)境搭建
4.1.18051單片機軟件安裝與編譯
4.1.2STC系列8051單片機固件下載
4.2STM32單片機開發(fā)環(huán)境搭建
4.2.1STM32單片機軟件安裝與編譯
4.2.2STM32單片機固件下載
4.3MSP430開發(fā)環(huán)境搭建
4.3.1軟件安裝與編譯
4.3.2代碼下載
4.4PIC開發(fā)環(huán)境搭建
4.4.1軟件安裝與編譯
4.4.2PIC單片機代碼下載
4.5Arduino開發(fā)環(huán)境搭建
4.5.1Arduino IDE開發(fā)環(huán)境搭建
4.5.2Arduino IDE代碼下載
4.5.3MSP430 Arduino開發(fā)環(huán)境搭建
4.6Proteus仿真環(huán)境搭建
第5章I/O端口的基本輸出——多變的輸出控制
5.1I/O基本知識
5.1.1萬物皆有電阻
5.1.2歐姆定律
5.1.3I/O專業(yè)術語
5.2單片機I/O端口輸出電路內(nèi)部剖析
5.2.1STC單片機I/O端口
5.2.2PIC16單片機I/O端口
5.2.3MSP430單片機I/O端口
5.2.4STM32單片機I/O端口
5.3I/O作為輸出使用的幾種方式
5.3.1小電流輸出驅(qū)動
5.3.2電平匹配或小功率驅(qū)動
5.3.3大功率大電壓驅(qū)動 
5.3.4設備工作電壓遠高于安全電壓
第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端口輸入電路內(nèi)部剖析
6.3.18051單片機I/O輸入
6.3.2PIC16單片機I/O輸入
6.3.3MSP430單片機I/O輸入
6.3.4STM32單片機I/O輸入
6.4幾種常用的輸入方式
6.4.1直連單片機I/O端口
6.4.2匹配電平后連接單片機I/O端口
6.4.3超過安全電壓或跨距離信號輸入
第7章單片機引腳不夠用——外掛擴展芯片
7.1使用擴展芯片情形及步驟
7.28051單片機驅(qū)動——8線譯碼器
7.38051單片機實現(xiàn)74HC245收發(fā)器驅(qū)動
7.48051單片機驅(qū)動74HC573鎖存器
第8章中斷——單片機“一心多用”卻不落下重要事情
8.1生活中的中斷場景
8.28051單片機外部中斷
8.3PIC16單片機中斷
8.4MSP430單片機中斷
8.5STM32單片機中斷
8.6Arduino外部中斷
8.7外部中斷總結(jié)
第9章不甘只為定時器——它還有很多妙用
9.18051單片機定時器
9.2PIC16定時器
9.3MSP430定時器
9.4STM32定時器
9.5Arduino定時器
9.6定時器使用總結(jié)
第10章較少引腳多做事——總線
10.1總線的誕生
10.2總線初探
10.2.1手動模擬驅(qū)動74HC595
10.2.28051單片機驅(qū)動74HC595
10.3SPI總線原理與使用
10.3.1SPI總線介紹
10.3.28051單片機驅(qū)動MCP23S08輸出
10.3.38051單片機讀取MCP23S08按鍵值
10.4I2C總線驅(qū)動PCA9554
10.4.1I2C總線簡單介紹
10.4.2輸出控制流水燈
10.4.3讀取I2C輸入數(shù)據(jù)控制LED 
第11章串口通信——單片機與外界溝通常用方式
11.1原始通信方式與基本模式
11.1.1單工通信模式
11.1.2半雙工通信模式
11.1.3全雙工通信模式
11.2串口通信由來
11.3串口通信單片機實現(xiàn)
11.3.18051單片機串口通信
11.3.2PIC16單片機串口通信
11.3.3MSP430單片機串口通信
11.3.4STM32單片機串口通信
11.3.5Arduino單片機串口通信
11.3.6串口通信總結(jié)
11.4同是串口通信,別被接口和協(xié)議弄糊涂
11.4.1串口通信物理接口
11.4.2串口通信協(xié)議
第12章非常重要卻常被忽略的技能——調(diào)試
12.1使用硬件調(diào)試器
12.1.1PIC單片機調(diào)試
12.1.2MSP430單片機調(diào)試
12.1.3STM32調(diào)試
12.1.4單片機調(diào)試器使用總結(jié)
12.2一顆LED能反饋的信息眾多
12.2.1定時器中斷中使用LED調(diào)試
12.2.2串口通信中使用LED調(diào)試
12.2.3LED直接顯示設備狀態(tài)
12.3使用最方便的調(diào)試方式——串口
12.4任何時候要有快速找到解決問題的辦法
12.4.1軟硬件問題確定
12.4.2盡可能用熟悉的東西,找可靠渠道購買
第13章有趣的顯示方式
13.1生活中的LED變形記
13.2單總線全彩燈
第14章A/D——數(shù)字與模擬世界溝通的橋梁
14.1A/D原理
14.2PIC單片機A/D
14.3MSP430單片機A/D
14.4STM32單片機A/D
14.5Arduino A/D
第15章以為只是PWM,沒想到有這么多“魔法”
15.1PWM介紹
15.1.1多種方式實現(xiàn)PWM
15.1.2專用名詞解釋
15.2呼吸燈原理剖析
15.3舵機控制
15.4步進電動機控制
15.4.1步進電動機原理
15.4.2步進電動機控制實現(xiàn)
15.5PWM直流電動機調(diào)速
提高篇
第16章學了很多東西,實際項目中如何用——硬件部分
16.1實際項目電路與單片機入門電路差距
16.2供電電路
16.2.1開發(fā)板供電
16.2.2消費電子產(chǎn)品供電
16.2.3工業(yè)控制器供電
16.2.4車用控制器供電
16.2.5電源電路總結(jié)
16.3輸入電路
16.3.1開發(fā)板輸入電路
16.3.2工業(yè)輸入電路
16.3.3車用輸入電路
16.4輸出電路
16.4.1工業(yè)功率輸出電路
16.4.2車用功率輸出電路
16.5A/D采集電路
16.5.1工業(yè)A/D輸入電路
16.5.2車用A/D輸入電路
16.6通信電路
16.6.1開發(fā)板通信電路
16.6.2車用通信電路
16.7對比分析總結(jié)
第17章別讓單片機學習停留在點亮LED
17.1初學者單片機軟件能力徘徊不前
17.2怎么改變這種現(xiàn)狀
17.2.1項目分解能力
17.2.2程序框架搭建能力
17.2.3算法能力
17.3單片機成長捷徑
17.4站在巨人的肩膀上
17.4.1Arduino平臺
17.4.2開源代碼托管平臺
第18章要想路走得遠,編程規(guī)范少不了
18.1組織結(jié)構(gòu)
18.1.1工程文件組織結(jié)構(gòu)
18.1.2文件夾代碼組織結(jié)構(gòu)
18.1.3程序結(jié)構(gòu)
18.2標識符命名
18.2.1命名基本原則
18.2.2宏與常量命名
18.2.3變量命名
18.2.4函數(shù)命名
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函數(shù)與代碼注釋
18.6變量、結(jié)構(gòu)、常量、宏
18.7函數(shù)規(guī)范
18.7.1函數(shù)命名
18.7.2函數(shù)參數(shù)
18.8變量和結(jié)構(gòu)規(guī)范
18.9宏表達式與常量規(guī)范
18.10表達式規(guī)范
第19章模塊化程序編寫
19.1點亮LED模塊化程序改造
19.1.1.h文件編寫
19.1.2.c文件編寫
19.2模塊化程序編寫進階
19.3打造可重復利用的軟件模塊
第20章多功能電子鐘——項目開發(fā)基本流程
20.1項目需求
20.2項目規(guī)格說明
20.3項目總體方案
20.4項目概要設計
20.4.1硬件概要方案
20.4.2軟件概要設計
20.5項目詳細設計
20.6項目調(diào)試與驗證
20.7項目測試
20.8項目批量階段
第21章網(wǎng)紅樓梯燈
21.1項目需求
21.2項目規(guī)格說明
21.3項目總體方案
21.4項目概要設計
21.4.1硬件概要方案
21.4.2軟件概要方案
21.5項目詳細設計
21.5.1硬件詳細方案
21.5.2軟件詳細方案
21.6項目調(diào)試與驗證
21.7項目測試
第22章狀態(tài)機編程,不止于按鍵
22.1狀態(tài)機實現(xiàn)按鍵功能 
22.2狀態(tài)機基本原理與實現(xiàn)
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構(gòu)造一個簡單的調(diào)度器
23.2.2任務更新與啟動
23.3與市面主流系統(tǒng)對比
第24章算法和程序是兩碼事
24.1程序和算法
24.1.1算法本質(zhì)
24.1.2程序本質(zhì)及與算法之間聯(lián)系
24.2單片機項目中的典型算法
24.2.1濾波算法
24.2.2PID算法
24.2.3校驗算法
24.3別在程序上花太多時間,算法才是值得付出的
第25章Windows和單片機平臺算法對比
25.1貪吃蛇
25.1.1貪吃蛇游戲?qū)崿F(xiàn)要點
25.1.2貪吃蛇原理解析
25.2Windows系統(tǒng)下貪吃蛇代碼解析
25.2.1游戲區(qū)域初始化
25.2.2繪制食物與蛇身
25.2.3檢測蛇碰撞
25.2.4蛇吃食物
25.2.5蛇身移動坐標更新
25.2.6蛇身變換方向
25.3單片機實現(xiàn)貪吃蛇
25.3.1游戲變量與宏定義
25.3.2復位蛇身與游戲開始
25.3.3按鍵檢測與設定蛇運動方向
25.3.4蛇身移動坐標更新
25.3.5吃食物檢測
25.3.6產(chǎn)生新食物
25.3.7碰撞檢測
25.3.8顯示蛇與食物
25.4俄羅斯方塊
25.4.1俄羅斯方塊類型
25.4.2方塊下落顯示區(qū)域
25.4.3預覽方塊和分數(shù)顯示
25.4.4按鍵檢測和移動方塊
25.4.5旋轉(zhuǎn)方塊
25.4.6方塊消除
第26章數(shù)據(jù)結(jié)構(gòu)——感受不到你的存在
26.1鏈表——多任務調(diào)度
26.1.1單向鏈表
26.1.2雙向鏈表
26.2隊列——通信緩沖
26.2.1環(huán)形隊列基本操作
26.2.28051單片機隊列操作示例
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代碼管理軟件打開與使用
27.4Git科普及作用
27.4.1Git簡介
27.4.2Git能夠解決的問題
27.4.3Git實現(xiàn)原理
第28章不用寫一行代碼的開發(fā)方式——基于模型開發(fā)
28.1一個基于模型的簡單例子
28.2當你以寫代碼為榮時,殊不知正在被機器悄悄取代
28.3任意單片機使用基于模型開發(fā)
28.3.18051單片機使用Simulink模型開發(fā)
28.3.2Simulink生成模型代碼簡單剖析
28.3.3其他單片機模型移植
28.4基于模型開發(fā)方式進階思考
第29章打造實用的Arduino平臺
29.1打造個人的Arduino開發(fā)平臺
29.1.1添加Arduino支持的單片機類型
29.1.2添加Arduino軟件庫
29.2Arduino IDE多文件工程建立
29.3多種仿真平臺總有一個適合你
29.3.1使用Proteus仿真Arduino
29.3.2在線TinkerCAD仿真
29.3.3使用在線Wokwi仿真
第30章萬能開發(fā)工具VS Code
30.1VS Code簡介
30.2VS Code開發(fā)環(huán)境搭建
30.3單片機開發(fā)平臺PlatformIO
30.3.1添加PlatformIO擴展插件
30.3.2PlatformIO新建8051單片機工程
30.3.3PlatformIO新建Arduino工程
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號