ProcessorExpert輕松編程詳解:基于MC56F84xxx系列
定 價:49 元
- 作者:常越 著
- 出版時間:2015/9/1
- ISBN:9787512418554
- 出 版 社:北京航空航天大學出版社
- 中圖法分類:TP311.1
- 頁碼:338
- 紙張:膠版紙
- 版次:1
- 開本:16開
《ProcessorExpert輕松編程詳解:基于MC56F84xxx系列》介紹了使用飛思卡爾公司集成開發(fā)環(huán)境CodeWarrior(簡稱CW)中的ProcessorExpert(簡稱PE)完成嵌入式芯片各種功能模塊的操作;并逐次介紹了創(chuàng)建工程文件、通用輸入/輸出口及外部中斷、定時器、ADC和DAC、增強型PWM、異步串行通信模塊、I2C模塊、CAN通信模塊、DMA 模塊、比較器模塊、Flash存儲器和內(nèi)部關(guān)聯(lián)模塊的初始化操作方法以及基本程序的編寫;最后介紹了圖形化人機交互調(diào)試軟件(FreeMASTER).
本書旨在幫助那些具有良好的專業(yè)造詣、需要應(yīng)用嵌入式系統(tǒng)解決實際問題,卻又苦于沒有時間去閱讀、理解嵌入式芯片說明文檔的技術(shù)人員,使他們能夠順利完成嵌入式系統(tǒng)初始化,自己完成嵌入式系統(tǒng)的軟件編程工作.書中各章不僅有詳細的初始化過程講解,還有完整的可正常運行的程序編寫過程,使讀者對如何使用PE、如何完成程序都能準確深入的理解.書中介紹的方法適用于飛思卡爾公司的多數(shù)嵌入式產(chǎn)品.
我一直期待能夠有一種工具,使嵌入式芯片的初始化工作變得輕松、省時、一目了然.
使用智能化控制都需要對嵌入式芯片進行編程,而編程的第一步就是芯片內(nèi)部模塊初始化.首先要對各個模塊的寄存器有清楚的了解,并準確掌握引腳功能復用及寄存器的選擇細節(jié),才能做好初始化工作.在嵌入式芯片發(fā)展到引腳眾多且每個引腳多種功能復用的情況下,仔細閱讀英文文檔后進而完成種類繁多的寄存器的初始化決不是一項輕松的工作.許多需要對嵌入式芯片編程解決實際問題的技術(shù)人員,實在很難有時間和精力去完成這項工作.
從匯編語言到C語言,使得嵌入式編程節(jié)省了大量的時間和精力.那么,現(xiàn)在有沒有可以幫助我們輕松省時地完成初始化的工具呢? ProcessorExpert(PE)就是這樣一個我們期待已久的初始化助手.
2007年,陳結(jié)南先生向我推薦了飛思卡爾嵌入式軟件CodeWarrior中的PE初始化工具,并且介紹了其最突出的特點:多數(shù)情況下可以不去讀英文文檔就可以完成芯片各個模塊的初始化設(shè)置.在鄒勇波先生的指導下,我開始使用PE編寫程序.起初應(yīng)用8位單片機,基本沒有去看英文文檔就完成了許多項目的軟件編寫,切實體會到了PE功能帶來的便捷.后來開設(shè)電機控制綜合實驗課程,學生在沒有使用過飛思卡爾MC56F8257芯片的情況下,使用PE對其進行初始化設(shè)置,在很短時間內(nèi)不僅完成了電機控制工作,并且掌握了PE這一工具.此外,PE功能還對理解引腳的功能提供了
幫助,如設(shè)計一個嵌入式硬件系統(tǒng),可以先對設(shè)計的引腳進行功能的初始化設(shè)置,對有的引腳功能的限制也可以提早發(fā)現(xiàn),以免在硬件完成后才發(fā)現(xiàn)原來設(shè)計中引腳存在的問題,避免了時間和精力的浪費.還可以在CodeWarrior中利用PE添加需要用到的模塊,查看這些模塊可以使用的所有引腳,選擇方便,同時避免了引腳沖突.
從飛思卡爾公司的8位單片機、16位到32位的DSC,到現(xiàn)在越來越廣泛應(yīng)用的ARM 系列芯片,PE都可以幫助編程人員輕松完成初始化工作.
本書逐步介紹PE的應(yīng)用,從第1章的建立工程和PE的基本操作開始,首先敘述通用輸入/輸出口和外部中斷、定時器、模/數(shù)和數(shù)/模轉(zhuǎn)換、PWM 控制、串行通信、I2C通信和局域網(wǎng)通信等基本模塊的應(yīng)用;其次,講解更高層次應(yīng)用的功能,包括DMA、比較器、Flash和XBAR(內(nèi)部模塊關(guān)聯(lián));最后,介紹用于調(diào)試程序的人機交互軟件FreeGMASTER.這些內(nèi)容可以滿足大部分工程應(yīng)用的需要.
本書不僅講解了PE的使用方法,還在各章編寫了經(jīng)過運行測試的基本例程,作為 ProcessorExpert輕松編程詳解———基于MC56F84xxx系列讀者編程的參考;同時,敘述了PE軟件中現(xiàn)存問題的分析和實驗過程,讓讀者了解在使用PE出現(xiàn)錯誤時如何找出并解決問題,以及在解決問題的過程中學習PE中的編程范例.
本書旨在幫助沒有時間閱讀英文文檔、沒有精力逐個進行寄存器設(shè)置卻又迫切需要編寫嵌入式程序的工程師.我們站在初學者的角度敘述初始化的步驟,對常用功能的初始化設(shè)置、程序編寫舉例都做了詳細的說明.本書基本避免了跳躍式的講解,讀者只要一步步按照書中的講解就可以完成初始化設(shè)置和程序編寫.幫助讀者理解PE的思想,自如地使用PE完成飛思卡爾公司各種芯片的初始化工作是我們的初衷.
在本書的寫作過程中,李海國、王達開、張曉斌三位同學從程序編寫到實驗驗證,付出了很多辛勤的汗水,做了大量深入細致的工作;程詩音同學也對文稿提出許多有益的建議.作者在此向他們表示真誠的感謝!
飛思卡爾公司的周序偉對本書給出了許多深入、有益的指導;郭嘉也對本書的內(nèi)容提出了建議和鼓勵;馬莉女士委托編寫此書,并對本書的出版起到了關(guān)鍵的作用.作者向他們表示衷心的感謝!
由于應(yīng)用PE的時間和涉及的技術(shù)領(lǐng)域有限,一定有許多讀者遇到的問題我們沒有講到,歡迎讀者與我們討論及提出批評和建議.作者的聯(lián)系郵箱.
作 者
2015年4月于上海
第1章 CW 和PE的基本操作
1.1 CW 與PE簡述
1.2 軟件環(huán)境
1.2.1 CW10.6的安裝說明
1.2.2 仿真器驅(qū)動安裝
1.3 界面與窗口
1.3.1 運行CW10.6
1.3.2 菜單欄
1.3.3 工具欄
1.3.4 界面切換按鈕
1.3.5 工程文件窗口
1.3.6 工程模塊顯示窗口
1.3.7 命令窗口
1.3.8 PE模塊庫窗口
1.3.9 代碼顯示窗口
1.3.10 控制臺窗口
1.4 工程基本操作
1.4.1 導入工程
1.4.2 導出工程
1.4.3 新建工程
1.4.4 工程文件分析
1.5 PE基本操作
1.5.1 打開PE相關(guān)窗口
1.5.2 顯示工程所包含的PE模塊窗口
1.5.3 模塊庫窗口與模塊的添加
1.5.4 高級模塊與低級模塊
1.5.5 模塊包含的可調(diào)用函數(shù)
1.5.6 模塊屬性窗口
1.6 基本編程操作
1.6.1 嵌入式芯片初始化
1.6.2 main函數(shù)
1.6.3 查詢函數(shù)定義
1.6.4 常用快捷鍵簡介
1.7 編譯與下載
1.7.1 編 譯
1.7.2 錯誤查詢
1.7.3 仿真器選擇與下載
1.8 在線調(diào)試
1.8.1 運行、暫停、停止調(diào)試
1.8.2 全局變量查看
1.8.3 斷 點
1.8.4 寄存器查看
1.8.5 內(nèi)存數(shù)據(jù)查看
1.9 其他說明
第2章 通用輸入/輸出(GPIO)功能與外部中斷
2.1 位(BitIO)模塊
2.1.1 模塊添加
2.1.2 模塊初始化
2.1.3 模塊函數(shù)簡介
2.1.4 位模塊應(yīng)用實例
2.1.5 調(diào)試與結(jié)果
2.2 多位(BitsIO)模塊
2.2.1 模塊添加
2.2.2 模塊初始化
2.2.3 模塊函數(shù)簡介
2.2.4 數(shù)碼管控制應(yīng)用實例
2.2.5 調(diào)試與結(jié)果
2.3 外部中斷(ExtInt)模塊
2.3.1 中斷介紹
2.3.2 模塊添加
2.3.3 模塊初始化
2.3.4 模塊函數(shù)簡介
2.3.5 按鍵中斷應(yīng)用實例
2.3.6 調(diào)試與結(jié)果
2.4 小 結(jié)
第3章 定時器(Timer)
3.1 定時中斷
3.1.1 模塊添加
3.1.2 模塊初始化
3.1.3 模塊函數(shù)簡介
3.1.4 定時采樣應(yīng)用實例
3.1.5 調(diào)試與結(jié)果
3.2 單路PWM
3.2.1 模塊添加
3.2.2 模塊初始化
3.2.3 模塊函數(shù)簡介
3.2.4 調(diào)試與結(jié)果
3.3 計數(shù)器
3.3.1 模塊添加
3.3.2 模塊初始化
3.3.3 模塊函數(shù)簡介
3.3.4 計數(shù)器應(yīng)用實例
3.3.5 調(diào)試與結(jié)果
3.4 正交編碼
3.4.1 模塊添加
3.4.2 模塊初始化
3.4.3 模塊函數(shù)簡介
3.4.4 正交編碼應(yīng)用實例
3.4.5 調(diào)試與結(jié)果
3.5 Capture
3.5.1 模塊添加
3.5.2 模塊初始化
3.5.3 模塊函數(shù)簡介
3.5.4 Capture應(yīng)用實例
3.5.5 調(diào)試與結(jié)果
3.6 看門狗
3.6.1 模塊添加
3.6.2 模塊初始化
3.6.3 模塊函數(shù)簡介
3.6.4 看門狗應(yīng)用實例
3.6.5 調(diào)試與結(jié)果
3.7 小 結(jié)
第4章 ADC模塊與DAC模塊
4.1 ADC模塊
4.1.1 模塊添加
4.1.2 模塊初始化
4.1.3 模塊函數(shù)簡介
4.1.4 單端采樣與差分采樣應(yīng)用實例
4.1.5 PE在差分采樣配置中存在的問題
4.1.6 小 結(jié)
4.2 Init_ADC模塊與DMA
4.2.1 模塊添加
4.2.2 模塊初始化(ADC12)
4.2.3 模塊函數(shù)簡介
4.2.4 基于DMA 的ADC采樣應(yīng)用實例
4.2.5 模塊初始化(ADC16)
4.3 DAC模塊
4.3.1 模塊添加
4.3.2 模塊初始化
4.3.3 模塊函數(shù)簡介
4.3.4 輸出設(shè)定電壓應(yīng)用實例
4.4小 結(jié)
第5章 增強型脈寬調(diào)制模塊(eFlexPWM)
5.1 模塊添加
5.2 模塊初始化
5.2.1 時鐘設(shè)置
5.2.2 通道設(shè)置
5.2.3 通道保護設(shè)置
5.2.4 觸發(fā)設(shè)置
5.2.5 重載設(shè)置
5.2.6 故障保護屬性設(shè)置
5.2.7 引腳設(shè)置
5.2.8 中斷設(shè)置
5.2.9 運行初始化設(shè)置
5.3 PESL———外設(shè)寄存器操作的便捷方法
5.4 eFlexPWM 模塊應(yīng)用實例
5.4.1 實例介紹
5.4.2 模塊配置
5.4.3 實例代碼
5.5 調(diào)試與結(jié)果
5.6 PWMMC模塊
5.6.1 模塊添加
5.6.2 基本屬性配置
5.6.3 中斷設(shè)置
5.6.4 通道設(shè)置
5.6.5 故障保護設(shè)置
5.6.6 eFlexPWM 的變化
5.6.7 仍需在eFlexPWM 中進行配置的地方
5.6.8 基本函數(shù)簡介
5.7 小 結(jié)
第6章 隊列式串行通信接口(UART)
6.1 模塊添加
6.2 模塊初始化
6.2.1 通道選擇與中斷設(shè)置
6.2.2 基本設(shè)置
6.2.3 自動初始化設(shè)置
6.3 模塊常用功能介紹
6.3.1 模塊函數(shù)簡介
6.3.2 模塊常用函數(shù)詳解
6.3.3 模塊的DMA 功能
6.4 串口通信應(yīng)用實例
6.5 小 結(jié)
第7章 I2C模塊
7.1 模塊添加
7.2 模塊初始化
7.3 模塊函數(shù)簡介
7.4 I2C應(yīng)用實例
7.4.1 參數(shù)與程序
7.4.2 調(diào)試與結(jié)果
7.5 Init_I2C模塊
7.5.1 模塊添加
7.5.2 模塊初始化
7.5.3 PESL
7.5.4 Init_I2C模塊應(yīng)用實例
7.6 小 結(jié)
第8章 控制器局域網(wǎng)通信模塊(FreescaleCAN)
8.1 CAN 模塊基礎(chǔ)知識
8.1.1 CAN 模塊硬件電路基礎(chǔ)知識
8.1.2 CAN 協(xié)議基礎(chǔ)知識
8.2 模塊添加
8.3 模塊初始化
8.3.1 中斷設(shè)置
8.3.2 基本設(shè)置
8.3.3 Timing設(shè)置
8.3.4 自動初始化設(shè)置
8.4 模塊函數(shù)簡介
8.4.1 SendFrame()函數(shù)
8.4.2 ReadFrame()函數(shù)
8.5 CAN 通信應(yīng)用實例
8.6 小 結(jié)
第9章 直接內(nèi)存存取控制器模塊(DMA)
第10章 比較器模塊(Comparator)
第11章 程序存儲器(Flash)
第12章 CrossbarSwitch模塊
第13章 圖形化人機交互調(diào)試軟件(FreeMASTER)
參考文獻