嵌入式系统实训教程

合集下载

嵌入式Linux 系统实训教程_嵌入式Linux系统实训教程_[共11页]

嵌入式Linux 系统实训教程_嵌入式Linux系统实训教程_[共11页]

嵌入式系统系列教材嵌入式Linux系统实训教程 徐成 谭曼琼 徐署华 刘豪朱雪庆编著李仁发主审人民邮电出版社北京内容提要本书首先对嵌入式系统的开发做了简单的概述,然后介绍Super-ARM开发平台及如何在该平台上安装开发环境,接下来结合开发平台上丰富的资源及接口重点介绍一些典型案例,包括LED、键盘、UART、A/D、GPS、GPRS等。

在这些案例中,深入解析Linux操作系统的移植与驱动程序的设计,同时介绍QT嵌入式图形界面工具,在本书的最后介绍了一个大型的综合型实验。

这个实验是在前面的基础上衍生出来的,融合了已经介绍的技术,贯穿整个嵌入式开发的流程。

通过前面各案例的学习及该大型实验的训练,读者将具备基本的嵌入式开发能力。

本书适合计算机应用技术、通信工程、软件工程等相关专业的大专(高职)学生阅读,也可作为社会办学机构中面向企业嵌入式应用开发的定向培养、培训课程的学员的参考教材。

嵌入式系统系列教材嵌入式Linux系统实训教程♦编著徐成 谭曼琼 徐署华刘豪朱雪庆主审李仁发责任编辑王建军执行编辑李静♦人民邮电出版社出版发行北京市崇文区夕照寺街14号邮编 100061 电子函件 315@网址 北京昌平百善印刷厂印刷♦开本:787×1092 1/16印张:19字数:470千字2010年4月第1版印数:1 – 3 000册2010年4月北京第1次印刷ISBN 978-7-115-22377-7定价:39.00元(附光盘)读者服务热线:(010)67119329 印装质量热线:(010)67129223反盗版热线:(010)67171154。

嵌入式系统工程训练方案

嵌入式系统工程训练方案

嵌入式系统工程训练方案一、培养方案概述嵌入式系统工程是应用于各种现代设备中的计算机系统。

它们通常用于控制设备的功能,并且对于今天的技术世界至关重要。

因此,培养嵌入式系统工程师是十分重要的。

本培养方案旨在培养学生全面掌握嵌入式系统工程理论和实践技能,能够灵活运用嵌入式系统工程知识解决工程技术问题。

二、培养目标1. 系统的项目管理能力:学生能够使用嵌入式系统项目管理工具,进行项目计划和实施。

2. 专业知识:学生能够掌握嵌入式系统设计、开发、测试和维护的基本理论和方法。

3. 软件设计能力:学生能够使用常见的嵌入式系统开发工具,进行软件设计、测试和调试。

4. 硬件设计能力:学生能够使用常见的嵌入式系统开发工具,进行硬件设计、测试和调试。

5. 系统集成能力:学生能够熟练掌握嵌入式系统的集成和调试技术,进行系统级测试和评估。

6. 创新能力:学生能够运用创新思维和技术知识,独立解决实际工程问题。

三、培养方案实施1. 专业基础课程学习学生必须先通过嵌入式系统工程的专业基础课程学习,包括计算机组成原理、嵌入式系统设计原理、C语言程序设计、数字电路设计、嵌入式系统开发技术等课程。

这些课程将为学生建立嵌入式系统工程的理论基础和实践技能。

2. 实践能力培养学生需要参与实际的嵌入式系统项目开发,通过参与团队项目或者独立项目的实践活动,提高自己的实际操作能力。

这样的实践能力培养可以在学生毕业之后,更好地适应实际工作中的需要。

3. 多元化评价体系为了更好地评价学生的培养效果,采用多元化的评价体系。

包括课程考试、课程项目成果评价、实习实践评价、综合能力评价等,综合反映学生的专业基础、实践能力和综合素质。

4. 毕业设计/论文学生需要在毕业设计/论文环节进行综合考核,不仅考察学生的专业知识掌握程度,更重要的是考察学生在嵌入式系统工程实践中的创新能力。

四、培养方案课程设置1. 计算机原理与体系结构通过学习计算机的基本原理和体系结构,帮助学生理解计算机硬件和软件之间的关系,掌握计算机的运行原理和指令系统等基本知识,为学生后续的专业课程学习打下基础。

嵌入式实验设计实训报告

嵌入式实验设计实训报告

一、实验背景随着信息技术的飞速发展,嵌入式系统在各个领域得到了广泛的应用。

为了让学生更好地掌握嵌入式系统设计的相关知识,提高学生的动手能力和实际操作能力,我们开展了嵌入式实验设计实训。

本次实训以ARM处理器为平台,通过实际操作,让学生了解嵌入式系统的基本原理和设计方法。

二、实验目的1. 熟悉ARM处理器的基本架构和编程环境。

2. 掌握嵌入式系统设计的基本流程和方法。

3. 培养学生的动手能力和实际操作能力。

4. 提高学生对嵌入式系统的认知和应用能力。

三、实验内容1. 实验环境(1)硬件平台:ARM处理器开发板(2)软件平台:Keil uVision5、GNU ARM Embedded Toolchain2. 实验步骤(1)搭建实验环境首先,将开发板连接到计算机,并安装Keil uVision5和GNU ARM Embedded Toolchain软件。

接着,配置开发板,使其能够正常运行。

(2)编写程序根据实验要求,编写嵌入式系统程序。

程序主要包括以下几个方面:1)初始化:设置时钟、GPIO、中断等。

2)主循环:实现程序的主要功能。

3)中断处理:处理外部中断。

4)延时函数:实现延时功能。

(3)编译程序将编写好的程序编译成可执行文件。

(4)下载程序将编译好的程序下载到开发板上。

(5)调试程序在开发板上运行程序,通过串口调试软件观察程序运行情况,并对程序进行调试。

(6)实验报告根据实验内容,撰写实验报告。

3. 实验项目(1)点亮LED灯通过控制GPIO端口,实现LED灯的点亮和熄灭。

(2)按键控制LED灯通过检测按键状态,控制LED灯的点亮和熄灭。

(3)定时器实现定时功能使用定时器实现定时功能,例如定时关闭LED灯。

(4)串口通信实现串口通信,发送和接收数据。

四、实验结果与分析1. 点亮LED灯实验成功实现了通过控制GPIO端口点亮LED灯的功能。

2. 按键控制LED灯实验成功实现了通过检测按键状态控制LED灯的功能。

嵌入式系统实验指导书(6个实验)

嵌入式系统实验指导书(6个实验)

嵌入式系统实验指导书襄樊学院物理与电子信息学院实验要求1.进入实验室前完成的部分1)认真阅读实验指导书,弄懂实验原理和实验内容。

2)编写实验所要用到的程序,将其放在U盘上。

3)写出预习报告。

2. 进入实验室后完成的部分1)建立工程,加入已准备好的程序文件。

2)对程序进行调试,修改错误,获得要求的结果。

3)保存调试后的程序。

3.实验结束后的部分对实验结果进行分析、总结,写出实验报告。

实验报告内容及格式1.实验目的2.实验设备3.实验原理及环境4.实验内容只做文字叙述,程序部分放在程序清单中。

流程图也可不画。

5.程序清单本实验使用的完整程序。

如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。

6.实验步骤7.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。

此项为实验成绩评定的重要依据。

实验1 Keil C51的使用(汇编语言)实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。

实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。

实验原理及环境:在计算机上已安装Keil C51软件。

这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。

如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。

实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。

2)加入C 源文件或汇编源文件。

3)用项目管理器生成各种应用文件。

4)检查并修改源文件中的错误。

5)编译连接通过后进行软件模拟仿真。

6)编译连接通过后进行硬件仿真。

2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。

嵌入式系统工程实训-proteus

嵌入式系统工程实训-proteus

仲恺农业工程学院实训总结报告实习环节嵌入式系统工程实训院系信息科学与工程学院班级网络113学生姓名张宝鑫学号201110224328指导教师符志强实习时间2013年9月16日—2013年9月27日二○一三年九月二七目录1、Proteus ISIS安装、菜单使用及心得 (2)1.1、Proteus ISIS的安装 (2)1.2、Proteus ISIS的菜单使用 (8)1.2.1、主菜单 (9)1.2.2、主工具栏 (10)1.3、Proteus ISIS使用心得 (10)2、Proteus ISIS电路图的绘制 (10)2.1、心形走马灯 (10)2.2、电子钟 (13)2.3、超级显示屏 (15)3、Proteus ISIS原理图仿真调试 (18)3.1、案例一:定时器控制交通指示灯 (18)3.1.1、电路原理图 (18)3.1.2、源程序 (18)3.2、案例二:报警与旋转灯 (20)3.2.1电路原理图 (21)3.2.2、源程序 (21)4、实训总结 (23)1、Proteus ISIS安装、菜单使用及心得1.1、Proteus ISIS的安装步骤1、双击“proteus_setup7.5.exe”,开始安装。

步骤2、点击“Next”步骤3、点击“Yes”步骤4、选择第一项后,点击“Next”。

步骤5、点击“Next”。

步骤6、选择第一项。

步骤7、浏览“7.4 破解”文件夹中“Grassington North Yorkshire.lxk”,点击“打开”。

步骤8、点击第三项“Install”。

步骤9、点击“是”步骤10、点击“Close”。

步骤11、点击“Next”。

步骤12、选择安装路径。

步骤13、选择安装组件。

步骤14、点击“Next”。

步骤15、等上一会儿吧。

步骤16、两项都不选择,点击“Finish”。

步骤17、运行“7.4 破解”文件夹中的“LXK Proteus 7.4 SP3 PRO v1.6.2.exe”,点击“U pdate”。

《嵌入式课程设计》 项目实训指导书

《嵌入式课程设计》   项目实训指导书

项目(实训)指导书系别:计算机系专业:软件工程专科专业课程:嵌入式系统开发制订人:朱贤刚审核人:罗洛阳制订时间:2014年8月目录项目一数码管显示实验 (3)项目二实时时钟实验 (7)项目三Linux应用程序编写实验 (11)项目四Linux驱动程序编写实验 (17)项目五Ramdisk文件系统创建 (22)项目六嵌入式web服务器移植及建立 (28)项目一数码管显示实验一、项目(实训)名称数码管显示实验。

二、项目(实训)学时数2学时。

三、项目(实训)目标实训目标:1. 了解数码管的显示原理;2. 掌握JXARM9-2440中数码管显示编程方法。

最终成果:1、能在ADT IDE集成开发环境中编写数码管显示程序,在数码管上循环显示0-F字符;2、能在数码管上显示HELLO。

获得的知识:1. 掌握数码管的显示原理;2. 掌握JXARM9-2440中数码管显示编程方法。

四、项目(实训)中的具体任务1、能在ADT IDE集成开发环境中编写数码管显示程序,在数码管上循环显示0-F字符;2、能在数码管上显示HELLO。

五、教师知识和能力要求知识要求:1. 了解C语言的基本知识;2. 了解ADT IDE中编写和调试程序的方法。

能力要求:1、能在ADT IDE集成开发环境中编写数码管显示程序,在数码管上循环显示0-F字符;2、能在数码管上显示HELLO。

六、学生知识和能力准备1. 了解C语言的基本知识;2. 了解ADT IDE中编写和调试程序的方法。

七、工具与设备1. 硬件:JXARM9-2410教学实验箱、PC机;2. 软件:PC机操作系统Windows 98(2000、XP) +ADT 1000开发环境。

八、辅助教学资料刘铁刚、杨磊等,《ARM9嵌入式技术及Linux系统实验指导书》,武汉创维特信息技术有限公司九、实施步骤与技术要点1.制作LED字符与码段对应表,以数组形式表示,如下面代码所示,seg7table[0]-seg7table[15]的值分别代表显示字符0-F时,各码段的输入数据。

嵌入式系统实训教程

嵌入式系统实训教程

嵌入式系统实训教程编著马兴录青岛科技大学信息科学技术学院2013-03-18目录第1章单片机实验教程 (1)1.1 单片机开发环境的搭建 (1)1.1.1 单片机开发环境介绍 (1)1.1.2 单片机开发环境的搭建 (1)1.1.3 联机调试 (3)1.1.4 练习 (4)1.2 单片机联机调试功能试验 (5)1.2.1 观察各类存储单元 (5)1.3 单片机定时器实验 (7)1.3.1 实验目的 (7)1.3.2 设计要求 (7)1.3.3 实验原理 (7)1.3.4 实验步骤 (7)1.3.5 常见问题 (8)1.3.6 练习 (8)1.4 单片机中断系统实验 (9)1.4.1 实验目的 (9)1.4.2 设计要求 (9)1.4.3 实验原理 (9)1.4.4 实验步骤 (10)1.4.5 练习 (13)1.5 简单交通灯控制系统的设计 (14)1.5.1 实验目的 (14)1.5.2 实验要求 (14)1.5.3 程序设计 (14)1.5.4 练习 (15)1.6 单片机串行通讯接口实验 (16)1.6.1 实验目的 (16)1.6.2 实验要求 (16)1.6.3 实验原理 (16)1.6.4 通讯协议 (17)1.6.4 实验步骤 (18)1.7 单片机课程设计 (19)1.7.1 课程设计要求 (19)1.7.2 提交 (19)第2章ARM程序设计实验 (20)2.1 ARM混合编程实验 (20)2.1.1 实验目的 (20)2.1.2 实验要求 (20)2.1.3 实验原理 (20)2.1.4 实验内容 (22)2.2 ARM的GPIO接口实验 (23)2.2.2 实验要求 (23)2.2.3 实验原理 (23)2.2.4 实验步骤 (25)2.2.5 练习 (25)2.3 ARM的AD接口实验 (26)2.3.1 实验目的 (26)2.3.2 实验要求 (26)2.3.3 实验原理 (26)2.3.4 实验步骤 (30)第3章嵌入式操作系统uC/OS-II实验 (32)3.1 基于uC/OS-II的多任务编程实验 (32)3.1.1 实验目的 (32)3.1.2 实验要求 (32)3.1.3 实验原理 (32)3.1.4 实验步骤 (33)3.1.5 思考题 (35)3.1.6 练习 (35)3.2 基于uC/OS-II的多任务编程实验 (36)3.2.1 实验目的 (36)3.2.2 实验要求 (36)3.2.3 实验原理 (36)3.2.4 实验步骤 (37)3.2.5 程序修改思路 (37)3.2.5 思考题 (39)第4章嵌入式Linux实验 (40)4.1 嵌入式Linux交叉开发环境的搭建 (40)4.1.1 实验目的 (40)4.1.2 实验要求 (40)4.1.3 实验步骤 (40)4.2.1 实验目的 (41)4.2.2 实验要求 (41)4.2.3 实验步骤 (41)4.3 嵌入式Linux下应用程序设计(1) (42)4.3.1 实验目的 (42)4.3.2 实验要求 (42)4.3.3 实验原理 (42)4.3.4 实验步骤 (42)4.3.5 思考题 (43)参考程序serial.c (43)4.4 嵌入式Linux下网络应用程序设计(1) (47)4.4.1 实验目的 (47)4.4.2 实验要求 (47)4.4.3 实验原理 (47)4.4.4.1 基本程序的编译运行: (49)4.4.4.2 修改程序,实现指示灯远程控制 (49)4.4.5 网络通讯函数 (50)4.4.6 思考题 (50)4.5 嵌入式Linux下网络应用程序设计(2) (53)4.5.1 实验目的 (53)4.5.2 实验要求 (53)4.5.3 实验原理 (53)4.5.4实验步骤 (55)第5章综合设计实验 (58)5.1 要求 (58)5.2 远程监控系统的设计实例 (59)5.2.1 设计实验的目的、内容、要求及实验基础 (59)5.2.2 系统设计 (60)5.2.3 实验步骤 (62)第1章单片机实验教程1.1 单片机开发环境的搭建本节目标:搭建Keil C51单片机编程开发环境,以及Proteus仿真环境,实现两者的联机调试。

嵌入式技术基础(下)实训指导书

嵌入式技术基础(下)实训指导书

实训1 电路分析中常用虚拟仿真仪器的应用一、实训目的1.进一步熟悉Multisim10.0 中常用仪器和虚拟仪器(函数信号发生器和双踪示波器)的使用方法。

2.掌握仿真电路的连接、修改和仿真。

二、素材准备Multisim10.0仿真软件三、实训内容1.构造微分电路和积分电路2.单管共射级放大电路分析四、实训步骤1.构造微分电路和积分电路微分电路满足2TRC <<=τ (T 为方波脉冲的重复周期),其电路如图1所示。

双击信号发生器图标,弹出函数信号发生器面板,面板参数选择如图2所示。

运行仿真开关,在示波器屏幕上会出现如图3所示的波形方波(红色)是输入波形,冲击脉冲波(蓝色)是输出波形。

图1 微分电路图 图2 信号发生器面板图3 微分波形图积分电路满足2TRC >>=τ (T 为方波脉冲的重复周期),其电路如图4所示。

双击信号发生器图标,弹出函数信号发生器面板,面板参数选择如图2所示。

运行仿真开关,在示波器屏幕上会出现如图5所示的波形。

图4积分电路图图5 积分波形图2.单管共射级放大电路创建如图6所示的电路后,运行仿真开关,可看到如图7所示的输出波形。

借助示波器,用调整电位器RP确定静态工作点。

电位器RP旁标注的文字“Key=A”表明按A键,阻值按5%递减;若要增加,按动“Shift+A”键,阻值按5%增加。

通过改变RP的阻值,观察示波器的波形变化,在输出波形不失真的情况下,执行“Simulate”菜单下的“DC Operating ……..”命令,选中所有节点(节点号随机产生),然后单击“Simulate”按钮,系统自动的显示出运算结果,如图8所示。

图6单管共射级放大电路图图7 示波器显示的输入输出波形图五、实训过程注意事项1.函数信号发生器和示波器各参数的设置,熟悉各选项的功能。

2.熟悉每个电路图的功能和参数。

3.熟练电路图的连接和修改。

实训2 三种基本组态晶体管放大电路一、实训目的1.分析工作点稳定的共发射极放大电路性能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式系统实训教程马兴录2013-03-18目录第1章单片机实验教程 (1)1.1 单片机开发环境的搭建 (1)1.1.1 单片机开发环境介绍 (1)1.1.2 单片机开发环境的搭建 (1)1.1.3 联机调试 (3)1.1.4 练习 (4)1.2 单片机联机调试功能试验 (5)1.2.1 观察各类存储单元 (5)1.3 单片机定时器实验 (7)1.3.1 实验目的 (7)1.3.2 设计要求 (7)1.3.3 实验原理 (7)1.3.4 实验步骤 (7)1.3.5 常见问题 (8)1.3.6 练习 (8)1.4 单片机中断系统实验 (9)1.4.1 实验目的 (9)1.4.2 设计要求 (9)1.4.3 实验原理 (9)1.4.4 实验步骤 (10)1.4.5 练习 (13)1.5 简单交通灯控制系统的设计 (14)1.5.1 实验目的 (14)1.5.2 实验要求 (14)1.5.3 程序设计 (14)1.5.4 练习 (15)1.6 单片机串行通讯接口实验 (16)1.6.1 实验目的 (16)1.6.2 实验要求 (16)1.6.3 实验原理 (16)1.6.4 通讯协议 (17)1.6.4 实验步骤 (18)1.7 单片机课程设计 (19)1.7.1 课程设计要求 (19)1.7.2 提交 (19)第2章ARM程序设计实验 (20)2.1 ARM混合编程实验 (20)2.1.1 实验目的 (20)2.1.2 实验要求 (20)2.1.3 实验原理 (20)2.1.4 实验内容 (22)第1章单片机实验教程1.1 单片机开发环境的搭建本节目标:搭建Keil C51单片机编程开发环境,以及Proteus仿真环境,实现两者的联机调试。

1.1.1 单片机开发环境介绍目前,51单片机的开发大都使用C51编程语言,基本不再使用汇编语言。

这大大简化了单片机应用程序的开发。

当前使用最多的开发环境是Keil C51。

目前最高版本为uVision 4,除支持51系列单片机外,还可支持大多数的ARM芯片。

Keil开发环境本身带有模拟器,可以模拟调试单片机应用程序。

也可以与Proteusl联合实现软硬件联调,达到更好的仿真效果。

Protues是硬件线路板的设计开发软件,用来设计硬件线路连接原理图及印刷电路板图等,是常用的硬件线路版设计软件。

同时,它还具有较强的硬件仿真能力,可以形象直观地仿真硬件的运行情况,特别是它可以仿真多种常见的处理器,允许给处理器提供相应的程序并仿真运行。

因此目前最为流行的单片机学习及开发环境是Keil C51 + Proteus。

1.1.2 单片机开发环境的搭建本文以Proteus 7.5和Keil uVision 2为例来搭建51单片机的开发环境。

(1)安装Keil uVision2。

(安装完后,要将补丁文件复制到\keil\C51\bin文件夹内)(2)安装Ptoteus 7.5。

(安装crack时,要关闭杀毒软件;Keil驱动要等安装完Keil 之后再安装)上述两软件均安装在默认文件夹内。

Proteus安装在C:\Program Files\Labcenter Electronics文件夹内,Keil安装在c:\keil文件夹内。

如果只使用keil编写C51应用程序,编译生成可执行文件(后缀为.hex)供Proteus 使用,则两个软件无需配置,各自独立使用即可,以下步骤则无需进行。

如想实现Keil与Proteus的联机调试功能,则需要进行如下配置:(1)运行Proteus软件包内的"\Keil驱动\vdmagdi.exe" ,将驱动安装到keil的文件夹内。

安装时,选择“AGDI Driver for uVision2”,然后选择安装目录为c:\keil即可。

(2)运行"ISIS 7 Professional"菜单"Debug(调试)",选中"Use Remote Debug Monitor(使用远程调试监控)",该选项前应该有“√”。

(3)创建或打开Keil C的工程后,选择菜单"Project"->"Options for Target 'Target 1' ",打开"Options for Target 'Target 1' "窗口后,选择"Debug"选项卡,选择右边的Use:"Proteus VSM Simulators",确定,如下图所示:图1 Keil工程的调试选项(4)确保keil生成的可执行文件与proteus项目中单片机所执行的文件为同一个文件。

Keil的输出配置:如输出文件名为ledc.hex,所在文件夹选择好,Create HEX File选项前打“√”。

图2 Keil 工程的输出选项然后在Proteus的项目中,双击单片机器件,弹出如下窗口:图3 Proteus项目内的单片机程序文件在该窗口内选择Program File为keil生成输出的ledc.hex。

1.1.3 联机调试寻找可用的Proteus简单例程。

如51单片机的流水灯例程。

内部包括Proteus项目(后缀为.DSN)以及对应的C51程序项目文件(后缀为.uv2)。

用Proteus打开.DSN的项目。

确保该项目中的单片机程序为ledc.hex,菜单选项"Use Remote Debug Monitor"前应该有“√”。

进入Keil环境,打开.uv2的项目文件。

确保编译输出为ledc.hex;确保Debug选项如图1所示。

(1)编译C51工程。

选择菜单选项Project→Build target(2)进入调试模式。

选择菜单选项Debug→Start/Stop Debug Session为观察方便,可将两个软件窗口并排在桌面上,如下图所示:(3)在Keil内单步执行C51程序(按F10),可以看到Proteus内的指示灯有相应的亮灭变化。

(选择菜单View→Disassembly Windows可以只保留C语句)1.1.4 练习(1)针对流水灯硬件设计实例,自行创建相应的C51应用项目,实现流水灯从中间向两边流动的效果。

(2)在Proteus内,自行添加红、黄、绿不同颜色的指示灯,然后编写C51程序,让这些灯闪烁起来。

1.2 单片机联机调试功能试验本实验要学会利用Keil开发环境,观察单片机内部的各类存储器,掌握程序存储器、数据存储器、SFR各自的特点及使用方法。

熟练掌握联机调试单片机程序的方法。

1.2.1 观察各类存储单元(1)CPU内部寄存器的观察进入程序调试运行模式,Keil开发环境界面如图所示:左侧显示CPU内部的各寄存器名称及其内容,随着程序的运行,内容发生变化的寄存器会议高亮颜色标注出来。

(2)C语言变量内容的观察:打开“View→Watch & Call Stack Window”。

在C语言变量名字上按鼠标右键,选择“Add XXX to Watch Window”,这样,该变量的内容就会显示在Watch Windows中,并随着程序的执行而变化。

如图所示:按F2可以修改变量名或删除该变量。

(3)断点的设置:在C语句的最左端双击(或选择菜单项Debug→Insert/Remove Breakpoint)可以添加或删除断点。

这样可以使用Debug Go(或F5键)全速运行至断点位置。

1.3 单片机定时器实验1.3.1 实验目的本实验要学会单片机定时器的设定及使用。

1.3.2 设计要求设计一个倒计时秒表。

要求利用两个7端数码管组成一个2位数的倒计时秒表,根据给定初始值,倒计数至0。

1.3.3 实验原理(1)单片机定时器8051单片机内部集成了2个16位的计数器。

可以根据需要将其作为定时器使用。

这时,定时器的计数频率为系统CLK/12。

如果CPU采用12MHz的晶振,则定时信号源的频率固定为12MHz/12=1MHz。

如果定时周期设定为50ms,则需要计数0.05S/1MHz=50000个脉冲。

因为单片机定时器为加1计数器,所以,计数器初始值应设定为65536-50000=15536(即16进制的3CB0)。

另外,还需要设置定时器工作模式寄存器TMOD。

如果使用定时器0,16位定时器方式,则TMOD=0x01。

(2)数码管显示原理1.3.4 实验步骤(1)学习实验例程:数码管显示用Proteus软件打开其原理图;用Keil软件打开配套的C语言工程项目。

编译运行程序,观察数码管的显示情况,了解数码管的显示原理。

重点学习C语言中数码管编码表的作用及用法。

(2)修改原理图打开Proteus软件,修改数码管例程,添加一个7段数码管,接至P1端口。

注意数码管要选择共阳极类型,公共端要连接VCC。

(3)修改程序打开Keil软件,打开数码管的配套工程项目。

定义变量sec,用于存放秒数。

Char sec=99;显示两位数的方法:While(1){P2=tab[sec/10]; //显示十位数P1=tab[sec%10]; //显示个位数If(--sec<0)sec=99;//重新计数Delay(0xff);}(4)利用定时器实现准确延时修改delay()函数如下:V oid delay(int nsec){int i;TMOD=0x01;//16 bits,internal pulse countingfor(i=0;i<20*nsec;i++){TH0=0x3c;TL0=0xb0; //Initial value=65535-50000=15535,0.05s in 12MHzTF0=0;TR0=1; //start Timer 0while(TF0==0); //Wait for end flag TF0,delay for 0.5sTR0=0; //stop timer 0}}1.3.5 常见问题(1)添加的数码管不亮:原因1:数码管的公共端没有接电源;或者电源与公共段之间应该单独加Line;原因2:程序的问题:注意keil项目的输出文件就是proteus中单片机所使用的文件;另外,程序修改后,要重新编译。

1.3.6 练习再增加一个两位倒计时秒表,并编写配套程序,实现两个秒表各自倒计时(时间初值不同)。

1.4 单片机中断系统实验1.4.1 实验目的(1)本实验要学会单片机中断系统的工作原理,掌握定时中断程序的编写方法。

(2)掌握数码管动态显示的方法及编程。

1.4.2 设计要求(1)将1.3实验中的倒计时秒表程序,用定时中断方式实现。

相关文档
最新文档