-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
門市星期日公休
9/28 新書到! 9/23 新書到! 9/14 新書到! 9/7 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

STM32程序設計案例教程

( 簡體 字)
作者:歐啟標類別:1. -> 電腦組織與體系結構 -> 單晶片 -> STM32
譯者:
出版社:電子工業出版社STM32程序設計案例教程 3dWoo書號: 51535
詢問書籍請說出此書號!

有庫存
NT定價: 195
折扣價: 183

出版日:6/1/2019
頁數:216
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121365614
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

STM32是當前單片機應用領域的主流芯片,在國內Cortex-M市場,STM32市場份額約占45.8%,而ST公司也是中國市場上第二大的通用微控制器廠商。盡管STM32的市場占有率已如此之高,但在高等職業教育領域,目前學生學習的主流芯片依然是51單片機。原因有很多,其中之一就是STM32模塊多,功能多,設計復雜,講解起來相對困難,學習起來也有困難。雖然ST公司為了推廣STM32開發了很多易學易用的工具,但學習者很多時候只會應用而不知道其所以然,遇到問題時經常束手無策,所以編寫一本盡量能夠與51單片機的思路接近,讓學生不排斥而又能帶領學生入門的STM32方面的教材很有必要。
基于此,我們與正點原子(廣州市星翼電子科技有限公司,以下稱“正點原子”)聯合編寫了這本書,書中例程都在正點原子的“探索者”開發板(處理器為STM32F407ZGT6)上運行通過。本書盡量從底層寄存器的控制出發引導讀者慢慢進入STM32的學習,且在學習過程中盡量使讀者在沒有單片機基礎而只有C語言、模電、數電基礎的情況下能夠比較流暢地閱讀。
本書主要特點包含以下幾個方面。
1.不需要51單片機基礎即可流暢閱讀
本書編寫的目的之一是代替51單片機的教學,而不是在51單片機的教學基礎上延續,所以書里面雖然有部分內容涉及51單片機知識,但學起來并不依靠這些知識。本書編寫時假設學生只有C語言、模電、數電基礎,故本書盡量從底層的原理開始講解,以便讀者閱讀和掌握。
2.重在讓學習者知道原理和實現過程
在目前使用STM32進行開發的市場中,大部分開發者可能都是使用庫函數進行開發的,但從入門角度看,可能采用寄存器方式更加合適。掌握了寄存器的使用后再回過來閱讀庫函數的代碼并使用庫函數進行開發更容易一些,但反過來則不一定。因此,書中所有的例程都采用寄存器方式書寫,盡量向讀者介紹實現的原理及過程。
3.由易到難,化繁為簡
介紹函數的實現時盡量先介紹原理,再介紹偽代碼,最后介紹函數的定義。同時對工程中使用到的新的模塊的寄存器組織及訪問方式都進行了詳細的介紹。書中所有的例程(除了系統時鐘的初始化)并不照搬目前已經公開的程序,而是采用盡量簡單的形式來實現,然后再向ST公司或者正點原子的例程過渡。
4.編寫形式直觀生動,內容連貫,可讀性強
每個項目都有教學導航,用于說明每個項目學習的是什么、需要使用什么工具以及該如何學習。另外,書中重要的源碼都配有詳細的注釋,方便讀者閱讀。
5.盡量多地介紹各模塊的核心應用
為了在有限的篇幅內使讀者對STM32有更多的認識,書中盡可能多地介紹了一些模塊,然后對這些模塊的核心應用進行詳細的描述,而對模塊中不經常用到的功能則由讀者在使用時在已有知識的基礎上進行探索。
6.兼顧Cortex-M4的指令集的學習
為了讓讀者了解處理器是如何從匯編語言跳轉到C語言執行的,在最后的項目中對啟動文件進行了介紹。而介紹啟動文件則不能不學習匯編語言,為此,我們花了一定的篇幅對ARM處理器的匯編語言進行了介紹,讀者可根據自己的需要有選擇性地對這部分內容進行學習。
本書參考學時數為64學時,在使用時可根據具體教學情況酌情增減。歐啟標對本書的編寫思路與大綱進行了總體策劃,指導了全書的編寫,對全書進行統稿,并編寫了本書的大部分章節。趙振廷編寫了項目14,張檢保編寫了項目15。正點原子的工程師們對本書進行了審校。
最后,感謝我的學生黃灝輝、張榜慶、潘澤寬、郭碧新、鄧江海等,他們對書中的例程進行了反復驗證,并從初學者的角度對書中的內容進行了多次的模擬閱讀,為本書提供了非常好的修改意見。另外,廣東機電職業技術學院的張宇、何威、趙金洪、黎旺星、張永亮、潘必超、李建波、趙靜、陳榕福、高立新、蘭小海等老師對本書的編寫提出了很多中肯的意見和建議。正點原子的工程師們也對本書的編寫提供了很多的支持與幫助,他們提供了大量的源碼和例程,并對書中例程進行了仔細的校對,同時還和編者一起對書中的內容和細節表述進行探討并給出了很多改進意見,在此一并表示感謝。
為了方便教學,本書配有電子教案、C語言源程序文件等資料,請有需要的讀者登錄華信教育資源網免費注冊后下載。也可以聯系作者索要,作者聯系方式。
由于時間緊迫和編者水平有限,書中的錯誤和缺點在所難免,熱忱歡迎各位讀者對本書提出批評與建議。

編 者
內容簡介:

STM32是意法半導體(ST)有限公司推出的基于ARM Cortex-M內核的通用型嵌入式微控制器,具有設計靈活、配置豐富、成本低廉、適用性強、性價比高等特點,廣泛應用于工業控制、通信、物聯網、車聯網等領域。本書系統介紹了STM32程序設計的基礎知識和實戰技巧。本書案例豐富、結構清晰、實用性強。本書可作為高職高專院校電類專業學生的教材使用,也可供相關工程技術人員作為參考用書。
目錄:

項目1 STM32的開發步驟及STM32的GPIO端口的輸出功能 (1)
任務1-1 控制一顆LED發光二極管閃爍 (1)
1.1 初步認識STM32的GPIO端口的輸出功能 (10)
1.2 寄存器及其地址信息 (15)
1.3 volatile修飾符的使用及寄存器定義 (17)
習題1 (18)
項目2 認識模塊化編程 (19)
任務2-1 控制一顆LED發光二極管閃爍 (19)
2.1 模塊化編程 (24)
2.2 其他C語言注意事項 (25)
2.2.1 用#define和typedef定義類型別名 (25)
2.2.2 一些常見的運算符問題 (25)
2.2.3 文件包含 (26)
2.2.4 關于注釋 (27)
習題2 (28)
項目3 認識STM32的存儲器結構 (29)
任務3-1 LED0閃爍控制 (29)
3.1 存儲器基礎知識 (30)
3.2 Cortex-M4內核和STM32的存儲器結構 (31)
3.2.1 Cortex-M4內核的存儲器結構 (31)
3.2.2 STM32的存儲器結構 (33)
3.2.3 位帶(Bit Band)及位帶別名區(Bit Band Alias)的關系 (37)
3.3 結構體在STM32中的應用 (40)
3.4 通用的I/O端口功能設置函數的設計 (42)
任務3-2 跑馬燈的實現 (44)
習題3 (47)
項目4 精確延時的實現—SysTick 定時器的原理及其應用 (48)
任務4-1 蜂鳴器發聲控制 (48)
4.1 SysTick定時器介紹 (52)
4.2 嘀嗒定時器的延時應用 (55)
習題4 (57)
項目5 機械按鍵的識別——初步認識GPIO端口的輸入功能 (58)
任務5-1 識別機械按鍵的按下與彈起 (58)
5.1 STM32的GPIO端口的數據輸入功能 (65)
5.1.1 GPIO端口位的數據輸入通道 (65)
5.1.2 GPIO端口位的輸入配置及上/下拉電阻使能 (66)
5.2 按鍵狀態的判斷 (67)
習題5 (68)
項目6 深入了解STM32F407的時鐘系統 (69)
6.1 STM32F4的時鐘系統簡介 (69)
6.2 STM32F4的時鐘系統 (69)
6.3 STM32F4的系統時鐘和各模塊時鐘 (72)
6.3.1 系統時鐘SYSCLK (72)
6.3.2 由SYSCLK模塊提供時鐘源的時鐘 (73)
6.3.3 RCC模塊的相關寄存器及其作用 (75)
習題6 (77)
項目7 認識STM32的串口結構 (78)
任務7-1 使用STM32的串口向PC端發送字符串 (78)
7.1 串口基礎知識 (83)
7.2 STM32的串口結構 (84)
7.3 引腳復用 (90)
7.4 端口初始化函數的重新組織 (93)
習題7 (95)
項目8 STM32F407的中斷管理 (96)
任務8-1 使用STM32的外部中斷 (96)
8.1 內嵌中斷向量控制器NVIC對中斷的控制 (102)
8.1.1 STM32的中斷源 (102)
8.1.2 STM32的中斷使能控制 (105)
8.1.3 STM32的中斷優先級 (106)
8.1.4 中斷函數接口及中斷函數的實現 (112)
8.2 外部中斷 (113)
8.2.1 外部中斷的中斷源 (113)
8.2.2 外部中斷的設置 (114)
習題8 (116)
項目9 認識STM32的定時器 (118)
任務9-1 使用定時器中斷控制LED0的閃爍 (118)
9.1 STM32的定時器概述 (122)
9.2 TIM3內部結構及其計數原理 (122)
9.2.1 TIM3的內部結構 (122)
9.2.2 STM32定時器的定時原理 (124)
9.3 定時器中斷的實現 (127)
9.4 應用定時器產生PWM調制信號 (128)
9.4.1 TIM14的PWM調制原理 (130)
9.4.2 TIM14產生PWM信號涉及的寄存器 (132)
9.4.3 TIM14產生PWM信號的實現流程 (133)
任務9-2 使用TIM14產生周期為500s、占空比為80%的脈沖信號 (134)
習題9 (136)
項目10 認識STM32的獨立看門狗 (137)
任務10-1 認識STM32的獨立看門狗的工作原理 (137)
10.1 看門狗電路概述 (140)
10.2 STM32F407的看門狗電路 (140)
10.3 獨立看門狗相關的寄存器 (141)
10.4 獨立看門狗的設置、啟動及工作流程 (142)
習題10 (143)
項目11 認識STM32F407的實時時鐘 (144)
任務11-1 認識STM32的RTC (144)
11.1 RTC實時時鐘介紹 (149)
11.2 STM32的RTC的工作原理 (149)
11.3 STM32的RTC的操作步驟 (153)
習題11 (155)
項目12 STM32迷你開發板電路設計 (156)
項目13 認識ARM處理器 (161)
13.1 架構簡介 (161)
13.2 Cortex-M4的操作狀態、工作模式和訪問等級 (161)
13.3 數據長度 (162)
13.4 存儲器大小端 (162)
13.5 Cortex-M4的寄存器 (163)
13.6 堆和棧的概念 (166)
13.7 內存分配 (167)
習題13 (170)
項目14 匯編語言基礎和 Cortex-M4指令集 (172)
14.1 匯編語言基礎 (172)
14.2 Cortex-M4的指令集 (174)
14.3 Cortex-M4的偽操作和偽指令 (180)
14.3.1 偽操作 (180)
14.3.2 偽指令 (186)
習題14 (187)
項目15 認識啟動文件startup_stm32f40_41xxx.s (188)
習題15 (191)
附錄A STM32F407ZGT6的引腳結構與功能 (192)
附錄B STM32F407ZGT6核心電路設計 (203)
附錄C STM32F407ZGT6外圍電路設計 (204)
附錄D 關于編譯信息的解釋 (205)
參考文獻 (207)
序: