編輯推薦
由於半導體技術的飛速發展,數字電路係統的技術不斷更新,器件頻頻換代,嵌入式軟硬件日新月異,從事MCU類應用開發的課程教師、在校學生、應用工程師等都需要不斷補充新知識,跟上新技術的發展。
近年來,眾多學校轉入以Freescale(飛思卡爾)單片機為藍本的教學,卻麵臨可選教材較少的狀況,並且沒有適閤的基於通用軟件、硬件工具的基礎教材。
本書主要以Freescale(飛思卡爾)半導體公司的獲得廣泛應用的S12(X)係列16位單片機為藍本,講述單片機的基礎知識、接口方法和應用技術,其中的軟件開發環境采用通用的CodeWarrior,硬件教學平颱采用“飛思卡爾大學計劃”配備的S12XDT512SLK開發闆或者國內相關單位的S12XS128開發闆。
本書兼顧S12係列和S12X係列單片機,涉及的單片機型號即為目前主流的S12XD、S12XE係列和S12XS係列,它們均嚮前兼容S12係列。其中,MC9S12XD512單片機是通用型,並且是“飛思卡爾大學計劃”配備開發闆所使用的核心芯片; MC9S12XS128單片機是低成本的,並且是“全國大學生智能車大賽”指定使用的核心芯片。Freescale 16位單片機的子係列眾多,但各型號間的基本結構特性、硬件接口有較大的相通性,並且軟件程序也是基本兼容的。
本書在編排上按照教學特點分模塊展開,由淺入深、循序漸進;在講述上力求簡明扼要、淺顯易懂,並力求理論與實際的平衡、通用與具體的平衡;在內容上以入門為主、追求實用,輕於內部原理性描述,重於資源性描述及其應用方法。
書中各章節配有一些硬件電路實例和軟件程序實例,單片機與常用外設的接口方法貫穿在全書之中,所給齣的匯編語言程序或C語言程序均已在CodeWarrior集成開發環境與S12XDT512單片機開發闆或S12XS128單片機開發闆上調試通過。
本書主要以Freescale(飛思卡爾)半導體公司的獲得廣泛應用的S12(X)係列16位單片機為藍本,講述單片機的基礎知識、接口方法和應用技術,其中的軟件開發環境采用通用的CodeWarrior,硬件教學平颱采用“飛思卡爾大學計劃”配備的S12XDT512SLK開發闆或者國內相關單位的S12XS128開發闆。
本書在編排上按照教學特點分模塊展開,由淺入深、循序漸進;在講述上力求簡明扼要、淺顯易懂,並力求理論與實際的平衡、通用與具體的平衡;在內容上以入門為主、追求實用,輕於內部原理性描述,重於資源性描述及其應用方法。
書中各章節配有一些硬件電路實例和軟件程序實例,單片機與常用外設的接口方法貫穿在全書之中,所給齣的匯編語言程序或C語言程序均已在CodeWarrior集成開發環境與S12XDT512單片機開發闆或S12XS128單片機開發闆上調試通過。
內容簡介
本書講述單片機(Micro Control Unit,MCU)的基礎知識、接口方法和應用技術,全書共14章。第1章介紹國內外單片機的發展、現狀與應用,同時簡要描述瞭傳統MCS-51係列單片機的基礎知識以及Freescale係列單片機的分類、特點。第2~12章以Freescale S12X係列16位單片機為藍本,分彆講述S12X單片機的結構與組成、指令係統與匯編語言程序設計、仿真調試及C語言編程、並行輸入/輸齣接口、定時器、A/D模/數轉換、SCI/SPI串行通信、PWM脈寬調製、CAN/LIN/I2C總綫、XGATE外設協處理器、μC/OS-Ⅱ嵌入式操作係統應用等,並從應用的角度列齣瞭相關模塊的使用和配置方法。第13章給齣瞭使用S12X單片機實現兩個綜閤應用的嵌入式係統實例。第14章描述瞭S12XS128開發平颱的DIY設計製作及其參考資源。
書中各章節配有一些硬件電路實例和軟件程序實例,單片機與常用外設的接口方法貫穿在全書之中,所給齣的匯編語言程序或C語言程序均已在CodeWarrior集成開發環境與MC9S12XDT512開發闆或MC9S12XS128開發闆上調試通過。
本書假定讀者具有基本的數字電路知識和一定的微機原理概念。本書可作為高等院校電子信息工程、通信工程、工業測控、汽車電子、醫學電子、計算機應用等電類相關專業學生的課程教材,同時也可作為單片機係統(嵌入式係統)開發與研究人員的參考書籍。
作者簡介
任勇,1988年大學本科畢業於西安交通大學信息與通信工程專業,1991年研究生畢業於西安交通大學電子與信息工程學院,獲通信與電子係統專業工學碩士學位。1991年7月至今在重慶大學通信工程學院從事教學與科研工作,現為重慶大學副教授、碩士生導師。
教學方麵,先後承擔瞭本科生 “電視原理”、“C語言程序設計”、“單片機原理及應用”、“電子綜閤設計”等課程主講任務,承擔瞭本科畢業設計指導、研究生指導、學生創新實踐指導任務。主編《單片機原理及應用---使用Freescale S12(X)構建嵌入式係統》教材一部。
科研方麵,多年來一直從事電子信息、數據采集與處理、嵌入式係統、圖像處理與分析、醫學成像、生物醫學信息處理等方麵的科研與開發,在係統構建、硬件設計、軟件開發等方麵具有豐富的實踐經驗和資源積纍。主研或參研國傢軍工、橫嚮研發等科研項目二十餘項,個人負責經費300餘萬元,已發錶各類科研學術論文40餘篇,發明專利獲權4項。作為項目主研人員參與《XXXXXX工程》成像子係統,獲得瞭2008年國傢科學技術進步奬特等奬。
近年來,圍繞本專業和研究方嚮,采用科學級CCD數字攝像機的高分辨、高灰度等級、高動態範圍成像技術用於機器視覺及圖像定量檢測等高性能指標的研究與開發;針對航空航天、核工業、軍事、工業測量、醫學影像等領域對X射綫、中子、紅外與可見光的光電成像及光能量檢測的特種要求,開展瞭高分辨、高清晰光電探測(傳感)成像技術、三維重建技術與圖像處理分析技術等的研究工作;針對地礦、石油、氣井勘探領域的高精度測量要求,開展瞭基於慣性傳感器技術的定位/導航/姿態測量的嵌入式係統應用與開發。
內頁插圖
目錄
第1章 概述
1.1 單片機的定義、發展、特點及應用
1.2 MCS-51單片機概況
1.2.1 MCS-51單片機功能特性
1.2.2 MCS-51單片機引腳說明
1.2.3 MCS-51單片機的最小係統
1.3 Freescale單片機
1.3.1 Freescale種類繁多的個性化單片機係列
1.3.2 FreescaleS12(X)係列單片機簡介
1.3.3 FreescaleS12(X)係列單片機的
命名規則
第2章 S12X單片機的結構與組成
2.1 S12X單片機的主要功能與結構
2.1.1 功能特性
2.1.2 內部結構
2.1.3 MC9S12XS單片機的封裝與引腳
2.2 運行模式
2.3 振蕩器和時鍾電路
2.4 MC9S12XS128單片機的最小係統設計
2.5 係統復位、運行監視與時鍾選擇
2.6 存儲器
2.6.1 存儲器地址空間分配
2.6.2 存儲器映射管理控製
2.7 中斷係統
2.7.1 中斷源
2.7.2 中斷嚮量
2.7.3 中斷處理過程、優先級與嵌套
2.7.4 中斷的使用和配置
第3章 指令係統與匯編語言程序設計
3.1 CPU寄存器
3.2 尋址方式
3.3 指令概覽
3.3.1 數據傳送類指令
3.3.2 算術運算類指令
3.3.3 邏輯運算類指令
3.3.4 程序控製類指令
3.3.5 中斷類指令
3.3.6 CPU控製類指令
3.3.7 全局讀寫類指令
3.3.8 其他指令
3.4 使用匯編語言的程序設計
3.4.1 匯編語言的指令格式與僞指令
3.4.2 匯編語言編程舉例
3.4.3 匯編語言編程小提示
第4章 仿真、調試及C語言編程
4.1 S12X單片機開發闆
4.2 集成開發環境Code Warrior IDE
4.2.1 CodeWarrior開發入門
4.2.2 完全軟件仿真調試
4.2.3 使用BDM的程序下載與在綫調試
4.2.4 prm文件內容的簡要說明
4.3 使用C語言的S12X單片機編程開發
4.3.1 常用的C語句操作示例
4.3.2 基本變量類型和定義
4.3.3 位域變量的定義和使用
4.3.4 變量的特殊定義
4.3.5 #pragma程序管理
4.3.6 C語言結閤匯編語言編程
4.3.7 C語言中斷服務程序的編寫
4.4 基於CodeWarrior的S12X單片機編程開發實踐
4.4.1 應用實例:使用匯編語言的LED跑馬燈控製程序
4.4.2 應用實例:使用匯編語言的IRQ中斷控製程序
4.4.3 應用實例:使用C語言的LED燈控製程序
4.4.4 應用實例:使用C語言的定時器中斷控製程序
第5章 並行輸入/輸齣接口
5.1 並行I/O接口功能描述
5.1.1 並行I/O接口簡介
5.1.2 並行I/O接口功能
……
第6章 定時器
第7章 ATD模/數轉換
第8章 SCI/SPI串行通信
第9章 PWM脈寬調製
第10章 CAN總綫、LIN總綫與I2C總綫
第11章 XGATE外設協處理器
第12章 μC/OS-II嵌入式操作係統應用
第13章 S12X單片機綜閤應用係統實例
第14章 S12XS128開發平颱的DIY設計與使用
附錄A S12X匯編指令索引錶
附錄B CQUS12X開發闆全電路原理圖
附錄C ASCH碼錶
參考文獻
前言/序言
本書的編寫背景
MCU技術、FPGA(Field�睵rogrammable Gate Array,現場可編程門陣列)技術和DSP(Digital Signal Processing,數字信號處理)技術,是目前數字電路係統設計領域公認的三大基礎性技術,以這三類技術為基礎的電子應用係統是目前嵌入式係統的主要錶現形式。其中MCU技術最為經典、應用成熟、受眾麵廣。近年來,單片機技術發展迅速,已從傳統設計技術走嚮現代設計技術,其功能、速度、資源正在不斷加強,更加易於解決電子係統的嵌入性、低功耗、高可靠性和低價格等問題。單片機技術已經成為廣大電子工程師和電類專業大學生必備的技能之一,其重要性是不言而喻的。
由於半導體技術的飛速發展,數字電路係統的技術不斷更新,器件頻頻換代,嵌入式軟硬件日新月異,從事MCU類應用開發的課程教師、在校學生、應用工程師等都需要不斷補充新知識,跟上新技術的發展。現代單片機係統設計有三個比較明顯的變化: ①原來的單片機技術是圍繞某個基本芯片如MCS��51係列,在其基礎上設計各種外圍接口、加擴各種擴展電路; 而現代單片機技術的趨勢是選擇功能符閤、內部資源適用、接口方便的某個單片機型號為核心,配以盡量少的外圍元器件來構成目標應用係統,努力形成片上係統(System on a Chip,SoC),這樣做的好處是係統更可靠、性價比更高、更能體現單片機的“單”性或者微控製器的“微”性。②因為現代單片機應用係統往往控製更加復雜、功能更為強大、效率更加重要等,導緻對單片機應用係統的軟件要求更高,這就不單要學會匯編語言編程,還要掌握C語言編程開發方法,甚至還可能引入嵌入式實時操作係統。③傳統的單片機硬件調試往往采用價格高、非標準的第三方仿真器係統、並且是藉用仿真器的MCU實現並不完全的仿真,最後纔擦寫芯片固化程序; 而如今的單片機都已采用瞭內置的可以反復擦寫10萬次以上的Flash存儲區,支持在綫調試係統、在綫下載程序,使得單片機的開發調試更為方便快捷。
在教學方麵,現在國內各個大專院校都開設有“單片機”課程,原先大多以MCS��51係列8位單片機為藍本,MCS��51單片機在2000年以前的教學中幾乎一統天下,至今也還有許多學校在使用。但在近幾年,這種情況逐漸有所變化,如清華大學、上海交通大學、北京航空航天大學、蘇州大學、天津大學等眾多學校早在多年前就轉入以Freescale(飛思卡爾)單片機為藍本的教學,目前加入這個行列的學校越來越多。當然還有講述以ARM為核的32位單片機技術的學校。單片機教學的變化、更新應是大勢所趨。
緣於應用發展和教學需求,又希望站在一個較高的起點上,但卻麵臨目前可選教材較少的狀況,並且沒有適閤的基於通用軟件、硬件工具的基礎教材,所以本書編者在收集整理最新中外資料的基礎上著手編寫本書。為瞭幫助讀者理解和掌握現代單片機應用技術,本書主要以Freescale(飛思卡爾)半導體公司的獲得廣泛應用的S12(X)S12(X)泛指S12係列或S12X係列。係列16位單片機為藍本,講述單片機的基礎知識、接口方法和應用技術,其中的軟件開發環境采用通用的CodeWarrior,硬件教學平颱采用“飛思卡爾大學計劃”配備的S12XDT512SLK開發闆或者國內相關單位的S12XS128開發闆。本書在編排上按照教學特點分模塊展開,由淺入深、循序漸進; 在講述上力求簡明扼要、淺顯易懂,並力求理論與實際的平衡、通用與具體的平衡; 在內容上以入門為主、追求實用,輕於內部原理性描述,重於資源性描述及其應用方法。
關於Freescale(飛思卡爾)
Freescale(飛思卡爾)半導體公司是全球最大的半導體公司之一,其前身為Motorola(摩托羅拉)半導體部,2004年從摩托羅拉公司分拆上市。它從1953年開始從事半導體業務,是世界半導體産業與技術的開拓者,為汽車電子、消費電子、工業控製、網絡和無綫市場設計並製造瞭眾多的嵌入式半導體産品, 在微控製器領域長期居於全球市場領先地位,如公司的MC68HC05是世界産量第一的8位單片機(産量排名第二的是8051單片機),又如在2007年7月推齣業內第一的針腳兼容的8位與16位微控製器——QE128係列。公司的微控製器産品係列齊全,根據位數(8位、16位、32位等)不同、封裝形式(DIP、SOIC、QFP等)不同、溫度範圍不同、所含模塊不同等構成瞭龐大的飛思卡爾微控製器産品係列,應用於嵌入式係統的各個領域,以可靠性高、性價比高和應用方便引導著微控製器的發展。
Freescale(飛思卡爾)半導體公司一貫重視與學界的閤作。目前已與中國教育部閤作,在清華大學、上海交通大學、東北大學、北京航空航天大學、蘇州大學、天津大學等20餘所大學建立瞭示範教學實驗室,在同濟大學、河南工業大學、山東大學、重慶大學等50多所大學建立瞭嵌入式處理器(MCU/DSP)開發應用中心或實驗室。公司推廣的大學計劃成員越來越多,持續舉辦的全國性應用設計大奬賽和“飛思卡爾”杯全國大學生智能車競賽也已成為教育部倡導的全國性重點賽事。各相關學校在嵌入式係統科研和人纔培養方麵都取得瞭許多可喜的成績,包括各種應用設計,有的已經産業化。相信會有更多的大學加入到飛思卡爾公司的大學計劃中來,也相信會有更多的科技工作者加入到飛思卡爾公司的産品應用行列中來,以進一步推動中國微處理器應用技術的教學與研發工作,促進嵌入式産業發展和人纔培養。
Freescale 單片機産品綫齊全,涵蓋瞭從8位(HC08、HCS08、RS08係列)、16位(S12、S12X係列)到32位的全係列MCU産品,選擇餘地大、新産品多。Freescale各係列單片機又分化齣各種子係列,多達幾百個型號,個性化十足,目的是為用戶提供芯片級的嵌入式解決方案。例如針對汽車電子,Freescale就提供瞭全麵、清晰的産品選型指南; 又如,麵嚮可再生能源和高能效傢用電器應用領域的MC56F8006,麵嚮樓宇控製和高端醫療的MCF5225x和MCF51CN128/64以及麵嚮測量和醫療應用的 LH/LL和MCF51EM256産品,這些産品都具有獨特的性能,非常適閤各細分市場的需求。Freescale近年來在新興領域也頗有建樹,如在智能電網、醫療電子、LED照明、綠色節能等領域推齣多個適用産品。2011年又新推齣瞭基於ARM Cortex�睲的業界速度最快的kinetis係列微控製器。
S12和S12X係列單片機是Freescale 16位單片機中的主流産品,它們基於廣泛使用的增強的HCS12內核。而S12X係列是S12係列的增強型産品,通常,S12(X)是泛指S12係列或S12X係列。S12X係列是高性能的16位單片機,總綫頻率進一步提高到最高50MHz,其性能達到瞭原HCS12器件5倍。特彆地,S12X係列還提供瞭業界首個外設協處理器XGATE模塊,形成雙核處理。這類多用途、高效處理器實現瞭高達80MIPS的附加處理能力,這種並行處理器模塊利用增強DMA功能,通過提供外圍模塊、RAM 和 I/O 端口之間的高速數據處理與傳輸,將一些諸如基本網關活動和相關外設處理的任務從主CPU上卸載,其並行架構實現瞭對於中斷可進行更多的無需CPU介入的處理並使設計工程師可以避免核心功能與中斷處理間的衝突。實際上,S12X 擁有一般隻能在32位MCU上找到的高效能力以及多核處理能力。此外,S12X還增加瞭一個新型的通信協議——FlexRay模塊,它能為高級控製應用提供高達10Mbps的數據速率。
本書的具體內容
本書兼顧S12係列和S12X係列單片機,涉及的單片機型號即為目前主流的S12XD、S12XE係列和S12XS係列,它們均嚮前兼容S12係列。其中,MC9S12XD512單片機是通用型,並且是“飛思卡爾大學計劃”配備開發闆所使用的核心芯片; MC9S12XS128單片機是低成本的,並且是“全國大學生智能車大賽”指定使用的核心芯片。Freescale 16位單片機的子係列眾多,但各型號間的基本結構特性、硬件接口有較大的相通性,並且軟件程序也是基本兼容的。
本書共14章。第1章介紹國內外單片機的發展、現狀與應用,同時簡要描述瞭傳統MCS��51係列單片機的基礎知識以及Freescale係列單片機的分類、特點。第2~12章以Freescale S12X係列16位單片機為藍本,分彆講述S12X單片機的結構與組成、指令係統與匯編語言程序設計、仿真調試及C語言編程、並行輸入/輸齣接口、定時器、A/D模/數轉換、SCI/SPI串行通信、PWM脈寬調製、CAN/LIN/I2C總綫、XGATE外設協處理器、μC/OS�並蚯度朧講僮饗低秤τ玫齲�並以應用的角度列齣瞭相關模塊的使用和配置方法。第13章給齣瞭使用S12X單片機實現兩個綜閤應用的嵌入式係統實例。第14章描述瞭S12XS128開發平颱的DIY設計製作及其參考資源。
書中各章節配有一些硬件電路實例和軟件程序實例,單片機與常用外設的接口方法貫穿在全書之中,所給齣的匯編語言程序或C語言程序均已在CodeWarrior集成開發環境與S12XDT512單片機開發闆或S12XS128單片機開發闆上調試通過。
單片機技術的學習
本書在內容編排上雖然是按照Freescale S12X係列16位單片機的組成原理和功能模塊逐項展開的,但其中體現的技術和方法並不唯一針對某具體型號的芯片,大部分方法其實是通用的,需要讀者在學習和應用的過程中融會貫通; 而且,基於Freescale單片機的硬件或軟件設計單元在其各係列單片機之間可以很容易地進行移植,有的甚至可以直接沿用。另外,如果作為較少學時的課程教材,本書最後4章可以安排為自學內容。
單片機技術的學習方法首先是模仿驗證、吸收消化,然後纔是結閤應用、自主創新。在這個學習過程中,需要領會單片機的結構原理、單元部件功能、常規接口方法、特殊應用方案等,要讓單片機“動起來”解決實際問題,還要掌握匯編語言編程、C語言編程、調試係統、下載程序等方法,至於應用對象的行業知識可通過交流、查詢得到補充。
單片機應用係統設計涉及的相關技術很多,包括MCU結構原理、數字邏輯電路、模擬電子電路、硬件設計與製作、匯編語言編程、C語言編程、仿真調試、低功耗、抗乾擾以及各種互聯接口等技術,在短時間內全麵掌握這些技術對於初學者來說是非常睏難的。如果學習者具有深厚的基本功自然更好,假設有所欠缺也無妨,可以在單片機技術學習和應用的過程中重新迴顧理解。實際上,有些知識或技術可以邊用邊學甚至用通瞭再反學,在應用中提高並積纍,有
單片機原理及應用:使用Freescale S12X構建嵌入式係統 下載 mobi epub pdf txt 電子書