单片机原理实验讲义(电信)30课时
- 格式:doc
- 大小:2.29 MB
- 文档页数:34
单片机原理及应用电子教案课件第一章:单片机概述1.1 单片机的定义和发展历程1.2 单片机的特点和应用领域1.3 单片机的分类和主要性能指标1.4 单片机的发展趋势和前景第二章:单片机的基本组成原理2.1 单片机的硬件组成2.2 单片机的软件组成2.3 单片机的工作原理2.4 单片机的时序和工作状态第三章:单片机的指令系统3.1 单片机的指令格式和分类3.2 单片机的寻址方式3.3 单片机的常用指令及其功能3.4 单片机的特殊指令及其功能第四章:单片机的编程技术和应用4.1 单片机的编程语言和工具4.2 单片机的编程步骤和技巧4.3 单片机的程序调试和优化4.4 单片机的应用领域及实例第五章:单片机的接口技术和扩展应用5.1 单片机接口技术的基本概念5.2 单片机的并行接口和串行接口5.3 单片机的外设接口及驱动电路5.4 单片机的扩展应用及实例第六章:单片机的中断系统6.1 中断系统的概念和分类6.2 单片机中断系统的工作原理6.3 单片机中断系统的编程和应用6.4 外部中断源的识别和应用实例第七章:单片机的定时器和计数器7.1 定时器和计数器的基本概念7.2 单片机定时器和计数器的工作原理7.3 单片机定时器和计数器的编程和应用7.4 定时器和计数器应用实例第八章:单片机的串行通信接口8.1 串行通信的基本概念和标准8.2 单片机串行通信接口的工作原理8.3 单片机串行通信的编程和应用8.4 串行通信接口应用实例第九章:单片机的人机交互接口9.1 人机交互接口的基本概念9.2 单片机与显示器接口的编程和应用9.3 单片机与键盘接口的编程和应用9.4 单片机与鼠标和触摸屏接口的编程和应用第十章:单片机的开发工具和环境10.1 单片机开发工具的分类和功能10.2 单片机编程软件的使用和操作10.3 单片机仿真器和调试器的工作原理和使用方法10.4 单片机开发环境和项目的创建与管理第十一章:单片机在工业控制中的应用11.1 工业控制中的单片机概述11.2 单片机在工业现场的作用与地位11.3 工业控制中单片机的典型应用案例11.4 工业控制中单片机的选型与设计要点第十二章:单片机在嵌入式系统中的应用12.1 嵌入式系统的基本概念12.2 单片机在嵌入式系统中的应用12.3 嵌入式系统设计的基本原则与步骤12.4 嵌入式系统应用实例分析第十三章:单片机在物联网中的应用13.1 物联网的基本概念与发展趋势13.2 单片机在物联网中的作用与地位13.3 物联网中单片机的应用案例分析13.4 物联网中单片机的选型与设计要点第十四章:单片机在消费电子中的应用14.1 消费电子中的单片机概述14.2 单片机在常见消费电子产品中的应用14.3 消费电子中单片机的选型与设计要点14.4 消费电子中单片机的最新发展趋势第十五章:单片机实验与实践15.1 单片机实验的重要性与目的15.2 单片机实验设备与材料15.3 单片机实验项目与步骤15.4 单片机实验结果分析与总结重点和难点解析本教案主要介绍了单片机原理及应用,内容涵盖了单片机的基本概念、硬件组成、指令系统、编程技术、接口技术、中断系统、定时器和计数器、串行通信接口、人机交互接口、开发工具和环境、工业控制应用、嵌入式系统应用、物联网应用、消费电子应用以及实验与实践等方面。
《单片机原理及应用》讲义课件 (一)《单片机原理及应用》讲义课件,是一份涵盖多个方面的教学资料。
以下是对该讲义课件的概述及评价:一、概述1. 课程简介:该讲义课件旨在通过对单片机原理及应用的学习,使学生能够掌握单片机的基本结构及应用,以及能够实现基本的单片机编程。
2. 课程内容:该讲义课件主要分为三个方面的内容。
第一部分介绍了单片机的基本原理及应用;第二部分阐述了单片机的编程方法及应用场景;第三部分则是通过实际例子来进行单片机控制系统的设计及调试。
3. 课程目标:通过该讲义课件的学习,学生应该能够掌握单片机的基本结构及应用,掌握单片机编程的方法及应用场景,了解单片机控制系统的设计及调试流程,具备一定的单片机开发能力。
二、评价1. 优点:(1)结构清晰:该讲义课件将内容分得十分清晰,不仅有全面的理论基础,还有实践案例及教学试验,以及必要的实验及编程指导,既考虑到了理论与实践的结合,又使得学生能够逐渐建立自己的单片机应用体系。
(2)难度适中:该讲义课件难度适中,既不会太过简单,又不会让学生无从下手。
对于初学者而言,该讲义课件能够起到很好的指导作用。
(3)实用性强:该讲义课件重点强调单片机的应用场景和实践案例,使得学生能够更好地了解单片机的实际应用价值。
同时,还提供了相关的实验指导,使得学生能够通过实践掌握单片机的相关技能。
2. 不足:(1)缺少创新性:该讲义课件虽然结构清晰、难度适中,但很多内容较为基础,相对缺乏独有的新思路和新颖的实践案例,难以激发学生的学习兴趣。
(2)缺少足够的案例:该讲义课件虽然涵盖多个方面,但相对来说案例过于单一,对于学习者而言,可能会产生一定的疏漏或误解。
三、总结《单片机原理及应用》讲义课件,既具有清晰的结构、适度的难度,又重点突出了单片机的应用场景以及实践和编程指导,具有实用性强等优点。
但同时,其缺乏足够的创新性和案例,对于学习者而言难以激发更深层次的思考与学习热情。
因此,在今后的教学实践中,需要更多地思考创新性和多样性的教学策略,注重案例选取和实践指导,以便让学生真正掌握单片机相关知识和技能,为未来就业中的实际操作提供实际的帮助。
《单片机原理实验》讲义CDIO版前言 (1)实验 KEIL编译器实验 (2)实验二 LED数码管动态扫描实验 (11)实验三汇编语言程序设计(一) (13)实验四汇编语言程序设计(二)............................................ 错误!未定义书签。
实验五中断优先级实验.. (17)实验六定时/计数器实验 (18)实验七串行通信实验 (20)实验八 D/A转换实验 X5045实验(二选一) (22)实验九 A/D转换实验 DS18B20实验(二选一)................ 错误!未定义书签。
实验十简易温度控制系统实验.. (26)演示实验说明 (31)实验资料说明 (32)实验报告撰写要求 (33)近年来,CDIO(构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate))工程教育模式改革由美国麻省理工学院为首的世界几十所大学开展。
CDIO大纲将学生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力4个层面,倡导“做中学”和“基于项目教育和学习”的新型教学模式,让学生以主动的、实践的、课程之间有机联系的学习方式接受工程教育。
CDIO教育模式是近年来符合国际工程教育共识的, 对学生在工程乃至社会大系统中进行训练的一整套工程教育改革体系。
国外经验表明,CDIO的理念和方法先进可行,适合工科教学过程各个环节的改革。
我国从2005年由汕头大学工学院率先开始学习研讨 CDIO 工程教育模式并加以实施,国家教育部2008年发起成立《中国CDIO工程教育模式研究与实践》课题组,确定了试点高校和专业,已经取得了积极的教学效果。
浙江省内有浙江工业大学、宁波工程学院、万里学院、浙江大学城市学院四所高校被确定为试点高校,绍兴市目前还没有高校列入试点范围。
高校中传统电子类专业实验以验证性实验为主,学生参与实验的自由度和原创空间非常受限,实验教学效果不佳,迫切需要改进实验教学模式,科学培养创新人才。
《单片机原理与应用》实验讲义实验要求及注意事项一.预习实验内容1. 明确本次实验目的及任务,了解和掌握实验所需的理论知识。
2. 通过课上老师讲解,掌握编程方法及相关技巧。
3. 对每次实验,选择一个题目自己试着独立设计编写整个程序。
二.实验过程1. 在实验箱上实验时,连接实验导线一定要关闭实验箱电源,连接好后,在检查一遍是否有误,连接正确后,再依次打开实验箱电源开关及实验底板上电源开关,进行实验。
严禁带电操作。
2. 实验箱底板上的所有芯片出厂时经过严格测试和老化,实验时切忌插拔。
3. 带上理论课教材、实验指导书及准备的实验程序。
4. 调试实验程序,记录实验结果。
5. 实验结束后,关闭实验底板上的电源开关及实验箱电源开关,确认关闭后,整理好自己的实验导线,摆放老师交代的地方。
三.编写实验报告1. 实验题目。
2. 分析设计思想,绘制实验原理图、流程图。
3. 程序清单及相关注释。
4. 分析实验结果。
5. 说明在实验过程中遇到了哪些问题,是如何处理的。
6. 收获体会,不足之处和今后应注意的问题等。
实验目录实验一、单片机P1口实验(02 广告流水灯控制实验)实验二、外部中断实验(12单一外部中断实验)实验三、单片机定时/计数器实验(14 定时器实验)实验四、单片机与与矩阵键盘接口(32 PS/2 键盘实验)实验五、单片机与A/D转换器实验(31 模/数转换器(ADC0809)实验)实验六、单片机串行口实验(16 串行通信RS232 实验)实验一、单片机P1口实验(02 广告流水灯控制实验)一.实验目的1.以P1 口为例,学会使用51 系列单片机I/O 口的基本输出功能;2.学习循环指令的用法和软件延时的编程方法;3. 掌握RR.RL 指令的用法;二.实验内容编写程序,利用单LED 灯有条件的左右扫描,八个LED 发光二极管L0-L7 分别接在单片机的P1.0-P1.7 接口上,输出“0”时,发光二极管点亮,输出”1”时,发光二极管灭,先由右至左P1.0→P1.1→P1.2→P1.3→┅→P1.7 ,再由左往右P1.7→P1.6→┅→P1.0 亮,重复循环下去。
《微机应用实验》课程教学所做的基本实验前言需要说明的是,设置本实验课程的目的完全是为了培养读者的“计算机工程概念”,即学习如何用最短的时间和最少的花费,将实际问题转化成使计算机能够“做到并完成”的方法。
故读者在做每个实验之前,必须对所做实验的理论依据做出“形式化”的说明,只有在完全理解了这些依据的情况下,再进行实验才有意义。
以下是每个合格的计算机工程人员在工作时都必须遵守的五个基本步骤(或称为五条原则)。
步骤一.对所希望解决的问题做出“形式化”的描述(用术语说就是“无二义性”,因为早在微型计算机出现之前,就有人证明过“计算机无法解决‘二义性’的问题”这个定理);若别人已经对该问题做出了这样的描述,则应确实理解它。
步骤二.根据所解决的问题的特性与规模,建立该问题与计算机所能处理的对象(即数据)之间的相互对应关系,用术语说就是进行问题的“数据设计”。
需要特别说明的是,前两个步骤基本上与所使用的计算机系统(包括硬件和软件)无关。
步骤三.选择某一种(或几种)相应的程序设计语言(必要时还要选择或设计相应的机器硬件),将步骤一中“人对问题的形式化描述”,转化成“计算机对问题的快速处理”,而计算机的“处理对象”则由步骤二所确定。
用术语说就是进行问题的“程序代码设计”。
另外需要说明的是在动手编写具体的程序代码之前,应先做“确定设计目标”的工作。
即若编写的是子程序,就必须确定该子程序所处理的各种参数的形式和该子程序的“引用条件”;若编写的是程序,就必须确定该程序执行时所产生的现象、用户所做的操作和执行后所产生的结果等等。
步骤四.在各种特定的环境下,调试步骤三所编写的程序代码以保证其正确性。
步骤五.书写相应的“软件(或软件+硬件)使用说明”,注意这其实是步骤三中“确定设计目标”的简述。
值得注意的是,后三个步骤的“正确性”是建立在前两个步骤的“正确性”的基础之上的,没有前两个步骤,后面所做的全部工作都毫无意义(因为你的“出发点”就不对,即犯了“南辕北辙”的错误)。
单片机原理实验讲义郭海燕周小方编漳州师范学院物理与电子信息工程系2010年11月前言随着微电子技术的发展,当前各种电子设备中几乎都能见到微控制器的身影,《单片机原理》课程是电子信息科学与技术、电子信息工程、电气工程及其自动化等本科专业学生的重要专业课,是这些专业学生首次学习与微控制器有关的课程,学好本课程内容,掌握单片机应用系统程序设计方法,养成良好的设计规范,对学生进一步学习其它功能更强、复杂性更高的微控制器(或微处理器)有重要意义。
课程主要讲述51系列单片机的内部结构、指令系统和编程设计方法,是一门实践性很强的课程。
本实验讲义共安排六个实验,分别为:实验一、单片机集成开发环境入门;实验二、I/O口输入输出实验――循环灯程序设计;实验三、I/O口输入输出实验――LED数码管动态显示与按键去抖程序设计;实验四、定时器应用实验――LED数码动态显示与矩阵键盘赋值程序设计;实验五、计数器应用实验――基于热敏电阻和555电路的简易温度报警系统设计;实验六、中断实验――简易温度控制器设计。
其中实验一是入门实验,为基础性实验,另五个实验为设计性、综合性实验。
围绕“简易温度控制器”这个实际应用系统的设计的各个环节展开,每个实验完成最终系统的一个或二个子模块的设计,最终将各模块集成为一个完整系统。
本实验采用自制实验板,三名学生领用1套实验板和1条下载线,组成讨论小组,以个人电脑为设计平台,利用课外时间完成设计、仿真和调试等前期工作,在利用课内2课时时间集中进行点评和设计总结。
五个设计性、综合性实验均采用“W A VE 3.2”集成开发环境完成程序设计、仿真,并最终下载到自制的系统板中运行,其设计、仿真、调试过程与真实的工程设计无异,全方位实践CDIO工程教育理念,突出“构思(Conceive)、设计(design)、实现(implement)”三个重要环节,对提高学生工程创新能力、综合应用所学知识解决实际工程问题的能力有重要作用。
《单片机原理实验》讲义目录实验一 KEIL编译器实验 (1)实验二清零、拆字、拼字程序设计 (10)实验三数据区传送、数据排序程序设计 (13)实验四无符号双字节快速乘法、查找相同数个数 (15)实验五软件延时实验 (18)实验六 LED数码管动态扫描实验 (20)实验七定时/计数器实验 (22)实验八中断实验 (23)实验九 D/A转换实验 X5045实验(二选一) (25)实验十 A/D转换实验 (28)实验资料说明 (31)实验报告撰写要求 (32)实验一 KEIL编译器实验一、实验预习1、掌握51单片机的硬件结构。
(包括CPU、存储器体系结构、I/O口等)2、掌握51单片机的指令系统,熟悉使用汇编语言设计程序。
3、熟悉课堂讲授的使用keil软件开发环境的方法。
实验预习问题:1、Keil编译器适用的单片机类型。
(实验课堂提问)二、实验目的掌握在keil编译器下建立自己的工程,并进行调试。
三、演示实验1、典型51单片机开发系统2、51单片机应用实例4个:计算器、温度计、智能风扇、密码系统。
演示实验关注点:1、掌握51单片机单片机的典型开发流程。
2、学会使用仿真器、烧写器。
3、了解单片机开发过程的关键技术点。
四、Keil C51简介:Keil C51是Keil software公司开发的用于51系列单片机的C51语言开发软件。
Keil C51在兼容ANSI C的基础上,又增加很多与51单片机硬件相关的编译特性,使得开发51系列单片机程序更为方便和快捷,程序代码运行速度快,所需存储器空间小,完全可以和汇编语言相媲美。
它支持众多的51单片机架构的芯片,同时集编辑、编译、仿真等功能于一体,具有强大的软件调试功能,是众多的单片机应用开发软件中最优秀的软件之一。
经常用到Keil C51和Keil µVision这两个术语。
Keil C51一般简写为C51,指的是51单片机编程所用的C语言;而Keil µVision,可简写为µVision,指的是用于51单片机的C51程序编写、调试的集成开发环境(IDE)。
五、keil编译器的简单应用1、在任意路径下建议项目文件夹,文件夹的名字任意(一般做到见名知意)。
2、单击图标(此图标为Keil µVision2),启动Keil,如下图:3、选择菜单Project->New Project,新建一个工程,如下图:4、输入工程名“流水灯”,然后保存,如下图:5、选择器件型号为Atmel的AT89S51,然后确定,如下图:如下图:7、选择菜单File->New新建一个文件,如下图:为.C文件)然后保存,如下图:选择,Add Files To Group 'Source Group 1',如下图:10、选择All files,找到刚才的“流水灯.asm”,然后点Add,然后就Close,如下图:11、可以看到工程里多了一个“流水灯.asm”文件,双击在里面输入下面程序,如下图:ORG 0X0000LJMP STARTSTART: MOV A,#0XFELOOP: RL AMOV P1,ALCALL DELAYSJMP LOOP ;延时程序DELAY: MOV R5,#200OUT: MOV R6,#250OUT1: MOV R7,#250IN: DJNZ R7,$DJNZ R6,OUT1DJNZ R5,OUTRETEND12、选择Project->Build target,或点击图标进行编译。
13、编译结果可以,看到错误(语法错误)和警告(情况较多,须具体分析)情况,如下图:14、如果没有错误,选择生成目标文件(机器码)。
15、选择菜单Debug->Start/Stop Debug Session,进入调试状态(此状态为默认的模拟调试,还可选择仿真器调试,proteus联机调试等),如下图:16、进入到调试状态后,选择菜单Perihperals->I/O-Ports->Port 1,打开端口1,下图为打开后的画面。
17、选择菜单Debug->Run,运行,就可以看到端口1的变化。
如下图:18、如果端口变化缓慢,可以加长延时程序,如果变化快,可以缩短延时程序。
注意:Keil编译器的使用细节可参考\电信单片机原理实验\实验参考资料\keil 编译器的使用下的4个文档。
六、实验内容1、熟悉keil编译器的安装,设置。
2、熟悉keil编译器各菜单的功能。
3、在keil编译环境下。
调试一个自行编写的程序。
(程序可以参考教科书)七、思考题如何建立一个用户自己的汇编程序文件,并进行编译、连接、运行,写出详细步骤。
实验二清零、拆字、拼字程序设计一、实验预习1、熟练掌握51单片机汇编语言。
2、熟练掌握采用循环结构编写程序。
3、熟悉软件开发环境的调试手段。
实验预习问题:1、叙述51单片机的程序、数据存储器体系结构。
(书面预习,写在实验报告上)二、实验目的1、掌握汇编语言设计和调试方法,重点掌握单片机对外部RAM的操作。
2、掌握汇编语言设计和调试方法。
3、能够编写简单的循环程序。
三、实验内容1、清零:把外部RAM2000H~20FFH的内容清零。
2、拆字:把外部RAM2000H的内容拆开,高位送外部RAM2001H低位,低位送外部RAM2002H低位,外部RAM2001H、外部RAM2002H高位清零。
3、拼字:把外部RAM2000H、外部RAM2001H的低位分别送入外部RAM2002H高低位。
四、实验步骤1、参考如下程序流程图编写程序。
清零:拆字:拼字:2、调试,验证程序清零:用连续或单步方式运行程序,检查2000H~20FFH中执行程序前后的内容变化。
拆字:用连续或单步方式运行程序,检查2000H~2002H中内容变化情况。
拼字:用单步或断点方式运行程序,检查2002H内容变化情况。
五、注意事项1、建议一个keil工程只编译一个asm汇编程序。
2、外部RAM的验证需要进入调试状态——打开memory windows窗口——输入X:0000H(代表外部RAM0000H空间)。
3、此单元的内容可以手工改变,如下图所示。
4、程序运行后,观察这些单元的改变情况。
五、思考题如要求把2000H~20FFH中的内容改成FFH,如何修改程序。
使用断点方式调试本程序。
实验三数据区传送、数据排序程序设计一、实验预习1、熟练掌握51单片机汇编语言。
2、熟练掌握采用循环结构编写程序。
3、熟悉软件开发环境的调试手段。
4、熟练掌握51单片机的数据区、程序区的数据查找,搬移操作。
实验预习问题:1、用C语言完成一个数组(数组长度可由参数输入)的由小到大或者由大到小排序。
(书面预习,写在实验报告上)二、实验目的1、进一步掌握单片机对内部RAM和外部RAM的数据操作。
2、熟悉51指令系统,掌握较为复杂的程序设计方法。
三、演示实验SOC单片机演示实验演示实验关注点:了解片上系统单片机(SOC)与基本51单片机的异同点。
四、实验内容1、将外部RAM中R2、R3为源地址的N个字节数据传送到R4、R5为目的地址的外部RAM区中,字节个数存放在R6、R7中。
数据区传送举例:在R2、R3中输入源地址(例如0000H),R4、R5中输入目的地址(例如2000H),R6、R7中输入字节数(例如2000H),运行程序,检查0000~1FFFH中内容是否和2000H~3FFFH中内容完全—致。
2、编写并调试一个排序子程序,其功能为用冒泡法将内部RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。
数据排序举例:把RAM空间50H~5AH中放入不等的数据,运行本实验程序后检查50H~5AH中数据是否按从小到大排列。
五、实验步骤1、按举例的要求编写程序。
2、调试,验证程序六、思考题修改程序把50H~5AH中的内容从大到小排列。
实验四无符号双字节快速乘法、查找相同数个数一、实验预习1、熟练掌握51单片机汇编语言。
2、熟练掌握采用循环结构编写程序。
3、熟悉软件开发环境的调试手段。
4、掌握编写较为复杂程序的能力。
实验预习问题:双字节无符号乘法程序的难点在什么方面。
(书面预习,写在实验报告上)二、实验目的1、掌握乘法运算指令。
2、掌握较为复杂程序的实现方法。
三、演示实验AVR单片机演示实验演示实验关注点:了解其他类型(以AVR为例)与基本51单片机的异同点。
四、实验预备知识无符号双字节快速乘法利用单字节的乘法指令,根据下面的公式进行乘法运算的:(R2 R3)×(R6 R7)= ((R2)×28+(R3))×((R6)×28+(R7))= (R2)×(R6)×216+((R2)×(R7)+(R3)×(R6))×28+(R3)*(R7)五、实验内容1、将(R2 R3)和(R6 R7)中双字节无符号整数相乘,积送R4 R5 R6 R7中。
2、在外部RAM的2000~200FH中查出有几个字节是零,把个数放在外部RAM2100H 中。
六、实验步骤1、参考如下程序流程图编写程序。
无符号双字节快速乘法:查找相同数个数:2、调试,验证程序无符号双字节快速乘法:在R2 R3和R6 R7中输入无符号整数,连续或单步运行本实验程序后检查R4 R5 R6 R7中内容。
查找相同数个数:在外部RAM2000~200FH的几个单元中填入零,运行本程序后检查外部RAM2100H中是零的个数。
实验五软件延时实验一、实验预习1、熟练掌握51单片机汇编语言。
2、熟悉keil软件开发环境的调试手段。
3、掌握51汇编语言的指令周期查找及程序运行时间计算。
实验预习问题:叙述51单片机延时可采用的方法。
(实验课堂提问)一、实验目的1、学习实验参考资料中《Keil与proteus完美结合教程》中P6-P7页的keil 与proteus联机部分知识。
(实验室电脑已经完成联机)2、熟悉proteus软件的基本操作。
3、掌握51汇编语言的指令周期查找及程序运行时间的调试方法。
三、演示实验定时器延时和软件延时的比较。
演示实验关注点:明确软件延时和定时器延时的不同特点和适用范围。
四、实验内容采用软件延时方法,在单片机的P1.0口产生0.5HZ的方波。
五、实验步骤1、编写程序。
2、进入调试模式,应用断点等手段,借助sec观察窗,观察程序运行时间。
(时间越接近0.5HZ操作分越高)如下图所示。
3、在proteus软件中,应用示波器观察方波。
3、采用联机调试,通过虚拟示波器观察,完成调试。
仿真电路如下图所示。
六、注意事项Proteus仿真图允许在没有电源、晶振、复位电路、EA悬空的情况下工作,但实际电路允许。