本课程是电子科学与技术专业的核心基础课,是电子系统设计和集成电路应用开发的入门课程。本课程主要包括嵌入式系统概述,ARM Cortex处理器架构,软硬件开发环境,基本内部硬件模块GPIO/定时器/PWM/ADC模块,通用外设通信接口UART/I2C/SPI接口,TCP/IP网络协议及其实现,嵌入式操作系统内部机制及其移植,SoPC异构嵌入式设计等内容。通过本课程的学习,让学生掌握嵌入式系统的概念及其开发方法,并且能够利用所学内容进行嵌入式系统的开发设计。本课程覆盖面广,体现电子学科模拟电路、数字电路和软件基础等三四门课程的基础知识及其综合应用,对学生实际动手能力有很高的要求。在教学上,突出理论和实验并重的特点,让学生在理论和实践的不断循环中掌握和消化知识。
1.积极参加课堂讨论,发表自己的观点。
2.完成单元测试题。
考核方式:
平时成绩10%+单元测试10%+实验30%+课程考试50%
1.具备C语言程序设计能力,掌握程序的基本调试方法;
2.学习过计算机和软件技术基础等相关课程;
3.有模拟电路和数字电路技术基础,了解基本电路知识,能读懂电路原理图和框图。
4.具有一定操作系统、网络通信等基础知识。
《嵌入式系统与实验》课程导学(第一周)
《嵌入式系统与实验》课程导学
第一章嵌入式系统概述(第一周)
1.1嵌入式系统概述
Introduction to embedded system (English version)
Introduction to embedded system
1.2嵌入式系统特点和示例(第二周)
嵌入式系统特点和示例1
嵌入式系统特点和示例2
嵌入式系统特点和示例3
1.3 微控制器核心板及扩展板简介(实验部分)(第三周)
微控制器核心板及扩展板简介(实验部分)
1.4软件集成开发环境CCS简介(实验部分)(第三周)
1.4软件集成开发环境CCS简介(实验部分)
嵌入式系统概述单元测验
2.2 ARM Cortex-M3/4微处理器(第四周)
ARM Cortex-M3/4微处理器
2.3存储器空间映射(第四周)
2.3存储器空间映射
第二章微控制器架构(第四周)
2.1嵌入式微处理器指令集架构
2.4中断和异常处理系统(第五周)
中断和异常处理系统
第二章微控制器架构单元测验(第五周)
第三章基本硬件模块(第六周)
3.1通用输入输出接口GPIO(理论部分)
3.2通用输入输出接口GPIO(实验部分)
3.3通用定时器(第六周)
3.3通用定时器(理论部分)
3.4通用定时器(实验部分)
3.5 PWM应用与实验(第七周)
3.5 PWM应用(理论部分)
3.6 PWM应用(实验部分)
3.7TivaWare介绍及单元测验(第七周)
3.7 TivaWare介绍
基本硬件模块单元测验
4.2点阵液晶显示器实验(第八周)
4.2 点阵液晶显示器实验(上)
4.3 点阵液晶显示器实验(下)
第四章通信接口(第八周)
4.1SSI同步串行接口
4.4 I2C接口和实验(第九周)
4.4 I2C接口(原理部分)
4.5 I2C接口(实验部分)
4.6串行接口数模转换器(DAC)实验(第九周)
4.6串行接口数模转换器(实验原理)
4.7串行接口数模转换器(实验内容与操作指导)
第五章 实时数字信号处理(第十周)
5.1 I2S接口及其音频处理(理论部分)
5.2 I2S接口及其音频处理(实验部分)
5.3 CMSIS-DSP库函数(第十周)
5.3 CMSIS-DSP库函数
5.4 综合示例:模拟信号频谱分析(第十一周)
5.4 综合示例:模拟信号频谱分析
第六章 TCP/IP协议及其应用(第十一周)
6.1 TCP/IP协议概述
6.2 TCP/IP协议概述(cont)
6.3 Lightweight IP概述(第十二周)
Lightweight IP概述
6.4 基于lwIP的Web应用开发(第十二周)
6.4 基于lwIP的Web应用开发
6.5 基于lwIP的Web应用开发实验(第十三周)
6.5 基于lwIP的Web应用开发实验
第七章实时操作系统和异构嵌入式系统(第十三周)
7.1 FreeRTOS 嵌入式实时操作系统的应用(上)
7.2 FreeRTOS 嵌入式实时操作系统的应用(下)
7.4基于SoPC的异构嵌入式系统实验(第十四周)
7.4基于SoPC的异构嵌入式系统实验
7.3基于SoPC的异构嵌入式系统(第十四周)
7.3基于SoPC的异构嵌入式系统
7.5 基于SoPC的嵌入式Linux系统实验(第十五周)
7.5 基于SoPC的嵌入式Linux系统实验(上)
7.6 基于SoPC的嵌入式Linux系统实验(下)
1、针对入门级的教材:推荐高等教育出版社的全国计算机等级考试-三级教程(嵌入式系统开发技术),此书对嵌入式系统的整体把握还是很好的,此书的汇编指令介绍得也很不错,尽管这本书较少提及linux方面的知识,也几乎没有u-boot方面的内容,但每个部分简明扼要,全书314页左右,没有太多代码,让没有基础的你,在阅读的时候不至于淹没于代码的海洋,此书强烈建议大一新生直接使用,自学,并参加计算机三级考试,对嵌入式系统有一个轮廓性的认识。
2、与第一本书同时阅读参考的教材:嵌入式系统基础教程(俞建新,王健,宋健健),此书为全国重点大学计算机教材,同样的特点,薄,但是这本书相对于第一本,更精,对比其中介绍DRAM和SRAM的内容,就可以知道此书作者的用心程度,如果不考计算机等级考试,直接看这本入门即可,而且此书图很丰富,在让你不陷入代码的同时,不陷入文字,更精准理解知识点。
3、linux操作系统使用: 《鸟哥的Linux私房菜 》、文东戈老师的《linux操作系统实用教程》、刘忆智《linux从入门到精通》。
4、大名鼎鼎的韦东山教材:《嵌入式linux应用开发完全手册》, 此书必读,不可替代,没有之一,在前两本的熏陶下,你就会开始好奇嵌入式系统的工作原理,这时候你再泡入代码,已经可以开始在代码中遨游,尤其韦老师写书写得很细致,对代码不仅做了详细注释,还对其进行点评,相信结合代码,你对嵌入式系统的硬件体系架构,特殊功能寄存器配置,中断体系架构会有更深刻的理解,全书采取案例教学,并不对某些很细的知识点展开,所以你需要阅读相应知识点更专业的教材,例如makefile,arm汇编,shell编程等等,这些都是体现在案例分析中,没有很全面列出,但是这不影响此书成为嵌入式业界顶级教材的地位。
5、韦老师的教材侧重讲原理,对于软件的操作介绍稍微少了点,如ADS软件的使用,这部分建议结合国嵌的教材,《嵌入式Linux系统工程师标准培训教材》,有两本,一本是基础篇,一本是驱动篇,都是好书,手把手教学,你不一定懂原理,但是一定做得出来,当然做得出来也很重要的,建立自信心。
6、linux程序设计:推荐徐城老师编写的《linux环境C程序设计》、电子科技大学李林老师编著的《linux程序设计实践》和Neil Matthew的《linux程序设计》 。
7、linux内核方面:好的教材有:韩国人写的《arm linux内核源码剖析》和德国人写的《深入linux内核架构》,都是翻译本。
8、linux驱动方面:国内最好的教材:宋宝华老师的《Linux设备驱动开发详解:基于最新的Linux 4.0内核》,美国人写的 Linux设备驱动程序(中文版第三版)也是经典教材。
9、unix环境高级编程 第三版,网上推荐,自己没阅读过。
10、 浙江大学BBS版主俞甲子编著的《程序员的自我修养-链接、装载与库》。
11、《深入浅出嵌入式底层软件开发》
12、《ARM+LINUX入门与实践 》
很多学习者对于嵌入式的概念性问题,认识非常模糊,因此对于嵌入式的初学者来说,扫盲这些问题显得非常关键,这些看似泛泛的概念性知识,对于后续嵌入式课程的学习起着非常重要的引导作用。
嵌入式系统开发学习如何起步、如何深入?
嵌入式系统开发学习需要理论和实验相结合,通过理论课程掌握嵌入式系统的概念和开发流程、步骤,以及所使用的开发工具,包括系统开发的仿真平台和通用的集成开发环境。在实验中结合具体的项目进行开发和设计,实现各自不同的系统应用。这样才能真正理解和掌握嵌入式系统开发。