微控制器原理課程教學大綱
課程代碼:
課程類別:專業必修課程
授課對象:物聯網工程專業
開課學期:3上
學 分:3.5學分(3+1)
主講教師:王宜懷、王林、曹國平、劉曉升、曹金華等
指定教材:王宜懷等,嵌入式技術基礎與實踐(第5版)—基于ARM -M4F內核的系列微控制器,清華大學出版社,2017年5月第4版,-7-302-46757-1。(普通高等教育“十二五”國家級規劃教材,“十三五”江蘇省高等學校重點教材)。
一、教學目的
嵌入式計算機系統簡稱為嵌入式系統,在后PC時代,嵌入式系統的廣闊應用將是計算機發展的重要特征。本課程教學目的在于以32位-M0+ L系列微控制器為藍本,通過“通用知識—芯片編程結構概要—基本編程方法—底層驅動構件封裝—應用方法與舉例”的線條,使學生逐步掌握嵌入式系統的基本概念、基本原理與設計方法c程序設計基礎試卷,獲得嵌入式系統的基本脈絡,打好嵌入式系統軟硬設計的基礎,逐步學會電子系統智能化嵌入式應用的軟件與硬件設計,強化實踐訓練。
二、課程內容
第1章 概述
【目的和要求】理解嵌入式系統的基本概念和發展脈絡是第一課的學習目的。
【重點和難點】重點理解嵌入式產品的一般構成與開發方法。
【教學內容】微控制器與嵌入式系統的含義與發展歷史、常用術語、開發方法導引、的特點與學習建議。對微控制器(單片機)的一般組成、嵌入式系統與微控制器的關系的理解有助于認識嵌入式系統。同時,本章作為導引,介紹微控制器與嵌入式系統的基本概念、發展歷史;微控制器與嵌入式系統中的一些常用術語;嵌入式產品的一般構成及開發方法;還對如何學習微控制器與嵌入式應用技術提出了一些建議。
第2章 ARM -M0+處理器
【目的和要求】引腳功能、硬件最小系統及的存儲器。硬件最小系統是芯片運行的基本條件,應該對此有清晰的理解。
【重點和難點】內核結構、存儲器映像及內部寄存器等。
【教學內容】
(1)ARM概述,介紹ARM發展歷程,給出目前ARM處理器類型、特點及應用范圍;
(2)ARM -M0+處理器概述,包括特點、內核結構、存儲器映像及內部寄存器等;
(3)ARM -M0+處理器的指令系統,給出指令簡表、尋址方式及指令的分類介紹;
(4)ARM -M0+匯編語言的基本語法。
第3章 存儲映像、中斷源與硬件最小系統
【目的和要求】本章通過介紹 L 系列MCU與最小硬件系統c程序設計基礎試卷,結合開發板,對基于AMR -M0+內核的微控制器有更進一步了解,更快速入門學習嵌入式開發技術。
【重點和難點】存儲器映像結構、引腳功能、硬件最小系統電路
【教學內容】
(1) 全系列微控制器產品分類及應用領域;
(2)KL系列MCU的型號標識、共性及體系結構;
(3)KL25微控制器的存儲器映像結構、引腳功能、硬件最小系統電路。
第4章 GPIO及程序框架
【目的和要求】通過實例完成第一個工程的入門,學會下載程序與調試程序的基本方法,主要目的是理解程序框架和工作過程。
【重點和難點】底層驅動、程序框架和程序的調試方法。
【教學內容】本章是全書的重點和難點之一。主要內容有:
(1)通用I/O基本概念及連接方法;
(2)KL25的端口控制模塊與GPIO模塊的編程結構,直接映像寄存器地址賦值的方法,點亮一盞小燈的編程步驟,以便理解底層驅動的含義與編程方法;
(3)制作構件的必要性及基本方法,第一個構件化編程框架、GPIO構件、Light構件編程實例。
第5章 構件化開發方法與底層驅動構件封裝規范
【目的和要求】通過這一章的學習,能夠規范設計嵌入式系統的軟硬件,提高嵌入式軟硬件設計的可重用性和可移植性。
【重點和難點】底層軟件構件的編程方法及編程框架。
【教學內容】本章是全書的靈魂,主要內容有:
(1)嵌入式構件化必要性,構件化的定義;
(2)KL25的硬件構件化設計的規則,及注意要點;
(3)基于硬件構件的嵌入式底層軟件構件的編程方法及編程框架;
(4)軟硬件構件的重用和移植的方法;
(5)底層驅動構件封裝規范,公共要素文件編寫技巧。
第6章 串行通信模塊及第一個中斷程序結構
【目的和要求】本章闡述KL25的串行通信模塊構件化編程,并且闡述ARM -M0+的中斷編程框架,通過這一章的學習,掌握嵌入式系統中斷程序的設計。
【重點和難點】中斷的產生,中斷處理函數的作用,學會處理其他中斷的方法。
【教學內容】。
(1)串口相關的基礎知識;
(2)KL25串口模塊的功能概要;
(3)串口模塊驅動構件編程時涉及的相關寄存器。
(4)設計并封裝了串行通信的驅動構件;
(5)KL25中斷機制,中斷的編程步驟和實例。
第7章 定時器相關模塊
【目的和要求】理理解定時接口模塊的輸入捕捉功能、輸出比較功能、脈寬調制輸出功能并了解其基本原理。掌握定時器的各種不同的使用方法,并學會將這些方法運用到具體的應用中。
【重點和難點】定時器的各種不同的使用方法,脈寬調制輸出的編程方法。
【教學內容】對給出具體的例子,要仔細體會各種不同的使用方法,并將這些方法運用到具體的應用中。本章內容有:
(1)ARM -M0+內核時鐘;
(2)定時器/PWM模塊(TPM);
(3)周期性中斷定時器(PIT);
(4)低功耗定時器(LPTMR);
(5)實時時鐘模塊(RTC)。
第8章 GPIO應用—鍵盤、LED與LCD
【目的和要求】對于鍵盤,主要掌握查詢法、定時掃描法與中斷法,掌握鍵值轉為定義值的編程方法。對于LED編程,掌握掃描法的基本工作原理、接口方法和編程要點。對于LCD編程,了解LCD驅動程序的編寫以及LCD顯示的原理。同時,通過對構件封裝過程的學習加深對構件思想的理解。
【重點和難點】運用I/O口控制外設的編程方法。
【教學內容】把嵌入式系統中常用的輸入/輸出設備,鍵盤、LED數碼管和LCD液晶顯示,作為GPIO的應用實例來看待,分析它們的工作原理和編程方法。主要內容有:
(1)鍵盤掃描基本原理與編程方法;
(2)LED掃描基本原理與編程方法;
(3)字符型LCD的基本原理與編程方法;
(4)GPIO整合在一起的測試用例。
第9章 Flash在線編程
【目的和要求】掌握Flash存儲器在線編程的基本概念,熟悉Flash存儲器的在線編程擦出和寫入的步驟,了解Flash存儲器的基本特點及編程模式,理解的Flash存儲器編程的基本操作以及匯編語言和C語言的在線編程實例。
【重點和難點】Flash存儲器編程的基本操作,Flash編程方法。
【教學內容】主要內容有:
(1)KL25芯片Flash存儲器的特性;
(2)KL25芯片Flash存儲器的在線編程方法;
(3)KL25芯片Flash 模塊驅動構件設計及測試實例;
(4)KL25芯片的加密與保護特性。
第10章 ADC、DAC與CMP模塊
【目的和要求】了解模/數轉換(ADC)、數/模轉換(DAC)以及比較器(CMP)模塊的工作原理和編程方法。
【重點和難點】ADC轉換模塊的相關寄存器,模塊編程方法。
【教學內容】主要內容有:
(1)ADC轉換的基礎知識;
(2)KL25模/數轉換ADC模塊的功能概要;
(3)ADC轉換模塊編程時涉及的相關寄存器;
(4)ADC轉換模塊編程方法,設計并封裝了驅動構件;
(5)DAC模塊編程結構,設計并封裝了驅動構件;
(6)CMP模塊的結構特點、寄存器的定義以及CMP的編程方法和驅動構件的封裝。
第11章 SPI、I2C與TSI模塊
【目的和要求】串行外設接口SPI、集成電路互聯總線I2C和觸摸感應輸入(TSI)模塊的工作原理和編程方法。
【重點和難點】SPI的基本原理及編程方法,SPI的全雙工通信以及時序。
【教學內容】主要內容有:
(1)SPI接口的基本原理及編程模型;
(2)I2C接口的基本原理及編程模型;
(3)TSI模塊的基本知識及一般編程模型。
第12章 USB2.0編程
【目的和要求】了解USB通信接口的優點、工作原理和編程方法。
【重點和難點】USB設備上電的枚舉過程。
【教學內容】主要內容有:
(1)USB協議基本概念、歷史和發展,提供了典型的USB主從連接;
(2)USB通信協議,USB設備上電的枚舉過程;
(3)KL25芯片的USB模塊的基本特征和硬件連接電路;
(4)PC方USB設備驅動程序的選擇和基本原理;
(5)USB模塊基本編程要點和驅動構件設計方法。
第13章 系統時鐘與其他功能模塊
【目的和要求】了解基本功能模塊外的其他功能模塊。
【重點和難點】看門狗定時器模塊。
【教學內容】主要內容有:
(1)系統時鐘的概述與設置;
(2)電源模塊;
(3)低漏喚醒單元;
(4)位帶操作;
(5)看門狗模塊;
(6)復位與啟動模塊。
三、各章課時分配表
章序號
章內容
學時數
1
第1章 概述
3
2
第2章 ARM -M0+處理器
3
3
第3章 存儲映像、中斷源與硬件最小系統
3
4
第4章 GPIO及程序框架
9
5
第5章 構件化開發方法與底層驅動構件封裝規范
3
6
第6章 串行通信模塊及第一個中斷程序結構
9
7
第7章 定時器相關模塊
3
8
第8章 GPIO應用—鍵盤、LED與LCD
3
9
第9章 Flash在線編程
3
10
第10章 ADC、DAC與CMP模塊
3
11
第11章 SPI、I2C與TSI模塊
3
12
第12章 USB2.0編程
3
13
第13章 系統時鐘與其他功能模塊
3
備用(如期中考)
3
總 計
54
三、指定教材
掃碼,優惠購書
提供PPT課件,軟件,答案,教學大綱,視頻等資源。本書以德州儀器(TI)的ARM -M4F內核的系列微控制器為藍本、以知識要素為核心、以構件化為基
礎闡述嵌入式技術基礎與實踐。