单片机实验-12级_第1页
单片机实验-12级_第2页
单片机实验-12级_第3页
单片机实验-12级_第4页
单片机实验-12级_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一熟悉实验环境一目的1. 熟悉MT-IDE嵌入式开发系统软硬件环境,掌握其使用方法及调试方式。2. 熟悉GP32单片机汇编和C程序编程框架。3. 初步掌握利用MT-IDE完成汇编和C程序的调试方法。二题目1.在MT-IDE中用C语言编程实现下列要求:1-1. 从若干个整数中找出最大数和最小数,并给出运行结果;1-2. 求一组整数的和及平均数;1-3. 求一组实数的和及平均数,实数值与1-2中整数值同,例如:1-2中数据为10、15、12、13,则本题中实数为10.0、15.0、12.0、13.0。2. 在MT-IDE中用HC08汇编语言编程实现下列要求:2-1. 求两个8位整数的和;2-2

2、. 求两个16位整数的和;2-3. 重复执行1000次NOP;2-4. *从若干个整数中找出最大数和最小数。3. 在MT-IDE中自我设计调试其他程序。三设计内容及调试过程记录、分析四思考与总结1. 对整数和实数分别做相同的处理,单片机执行的代码量有何不同?2. 对2-3小题你能写出几种实现方法?3. 单片机中程序调试方法与PC机上C程序调试方法有何不同?4. MT-IDE嵌入式开发系统包含哪些部分?实验板上包含哪些部件?5. 总结实验二通用IO一目的1. 进一步掌握MT-IDE嵌入式开发系统软硬件环境。2. 初步掌握通用IO的应用。3. 初步掌握单片机程序的调试方法。二题目1. 从一组整数中

3、找出最大、最小数,并在LED上显示出来。2. 编程实现LED闪烁和跑马灯效果。3. 编程实现通过开关的拨动控制对应LED的亮灭。4. 用一个开关控制若干LED(4个以上)的显示效果,要求:开关往上拨时,LED往左“跑马灯”,当开关往下拨时,LED往右“跑马灯”。5. 自我设计调试其他GPIO程序。提示:LED建议用B口控制、开关输入建议用D口控制。由于PTA0用于跟下载器通信,程序中尽量避免使用PTA0。三设计内容及调试过程记录、分析四思考与总结1. GP32总共有几个GPIO端口?各有什么特点?2. GPIO的编程步骤是什么?3. LED闪烁与跑马灯程序中为什么要添加延时程序?延时时间的长短

4、对人眼视觉有何影响?延时时间如何估算?4. 给出本实验硬件连接示意图。5. 总结实验三数码管显示一目的1. 进一步掌握MT-IDE嵌入式开发系统软硬件环境。2. 进一步掌握通用IO的应用。3. 初步掌握数码管的应用。4. 进一步掌握单片机程序的调试方法。二题目1. 在数码管上依次显示09。2. 在数码管上显示自己学号低4位,如学号0310101201显示1201。3. 将一组整数的和及平均数显示在数码管上;4. 将某个16位整数的十六进制形式显示在数码管上。5. *给定两个整数,将它们分别进行加、减、乘、除运算,并将运算结果(十六进制或十进制形式均可)显示在数码管上,如超出显示范围,则给出溢出

5、提示。6. 自我设计调试其他基于数码管显示的应用程序。三设计内容及调试过程记录、分析四思考与总结1. 实验中数码管与GP32之间是如何连接的?2. 数码管除了显示数字符号,还能显示哪些ASCII码符号?3. 数码管动态刷新程序中为什么要加入延时程序?该延时程序有何要求?4. 总结实验四键盘接口一目的1. 进一步掌握MT-IDE嵌入式开发系统软硬件环境。2. 进一步掌握通用IO的应用。3. 初步掌握矩阵键盘的应用。4. 进一步掌握单片机程序的调试方法。二题目1. 在数码管上依次显示字符“0”“F”。2. 将GP32的4根GPIO脚(如PTD03)分别接到4*4小键盘接口的4个插孔,另4个插孔直接

6、接地,编程找出这4根GPIO引脚分别识别哪一行(或列)按键。3. 将GP32的另4根GPIO脚(如PTD47)分别接到上述4*4小键盘接口接地的4个插孔,编程找出这4根GPIO引脚分别识别哪一行(或列)按键。4. 编程实现反转法4*4小键盘的按键识别。5. *编程实现逐行扫描法4*4小键盘的按键识别。6. *在数码管上显示最近4次按键键面上的符号;7. *利用数码管和小键盘实现一个简易计算器,键盘用于输入,数码管用于显示。8. 自我设计调试其他基于键盘的应用程序。三设计内容及调试过程记录、分析四思考与总结1. 对于反转法和扫描法两种常用键盘识别法,你更愿意采用哪一种?为什么?2. 按键识别程序

7、中,为什么要加入一段延时程序?该延时时间有何要求?有哪些方法可以用来消除键盘抖动?3. 能否使用实验板上的PTB口来实现按键识别?请说明理由。4. 总结实验五AD转换一目的1. 了解AD转换基本知识。2. 初步掌握AD转换编程及其应用。3. 进一步掌握单片机程序的调试方法。二题目1. 编程验证GP32的ADC模块转换是否正确。2. 将通道0接电位器,利用ADC模块编程实现对通道0输入处的电压值的估算3. 连续采集从通道0输入的模拟量若干次(如4次),求平均值,并估算通道0输入的电压值。4. *已知下图中的热敏电阻阻值随温度变化如表所示,利用GP32的ADC模块完成温度的预测。const flo

8、at value=18.42, 17.65, 16.92, 16.22, 15,55, 14.92, 14.32, 13.74, 13.20, 12.67, 12.17, 11.70, 11.24, 10.81, 10.40, 10.00, 9.62, 9.26, 8.91, 8.58, 8.27, 7.97, 7.68, 7.40, 7.13, 6.88, 6.63, 6.40, 6.18, 5.96, 5.76, 5.56, 5 37, 5.19, 5.01, 4.84, 4.68, 4.53, 4.38, 4.24;或:const unsigned int value=1842, 176

9、5, 1692, 1622, 1555, 1492, 1432, 1374, 1320, 1267, 1217, 1170, 1124, 1081, 1040, 1000, 962, 926, 891, 858, 827, 797, 768, 740, 713, 688, 663, 640, 618, 596, 576, 556, 537, 519, 501, 484, 468, 453, 438, 424;5. 自我设计调试其他基于AD转换的应用程序。三设计内容及调试过程记录、分析四思考与总结1. GP32的ADC模块是几位的?当模拟量范围为05V时,其分辨率是多少?2. 按键识别程序中,为

10、什么要加入一段延时程序?该延时时间有何要求?3. 能否使用实验板上的PTB口来实现按键识别?请说明理由。4. 总结实验六定时器一目的1. 进一步掌握通用IO的应用。2. 进一步掌握数码管的应用。3. 初步掌握定时器工作原理及编程方法。4. 进一步掌握单片机程序的调试方法。二题目1. 利用GP32定时模块实现1S延时,并在此基础上实现一电子时钟。数码管用于显示,其中:小时2位,分钟2位,走秒则以小数点闪烁表示。3. 利用GP32定时模块实现1ms延时,并将该延时用于数码管动态刷新(即数码管动态刷新程序中不能出现软件延时)。4. *利用定时模块实现倒计时。倒计时数据由键盘输入,当计时结束时,指示灯

11、闪烁。5. *利用实现一带有闹钟功能的时钟,当前时间和闹钟时间可由键盘设置。6. 自我设计调试其他基于定时模块的应用程序。三设计内容及调试过程记录、分析四思考与总结1. 采用GP32的定时模块获得的延时与软件延时比较有何异同?2. 定时器初始化包括哪些内容?如何知道定时模块计数已完成?3. 举例说明计算机应用中需要使用定时器的场合。 4. 总结实验七 中断编程实验一目的1. 初步掌握中断编程一般方法。2. 初步掌握定时器中断编程方法。3. 初步掌握键盘中断编程方法。二题目1. 用中断方式实现GP32定时模块1S延时,并在此基础上实现一电子时钟。数码管用于显示,其中:小时2位,分钟2位,走秒则以

12、小数点闪烁表示。2. 用定时中断方式实现数码管动态刷新,提示:用GP32定时模块实现1ms延时,并在定时中断子程序中实现数码管显示刷新。3. 将KBI4-7(即PTA4-7)接4*4小键盘接口的4个插孔,另4个插孔接地,用中断方式实现某一行(列)按键按下的识别。4. 自我设计调试其他基于中断编程的应用程序。三设计内容及调试过程记录、分析四思考与总结1. 中断编程的一般步骤是什么?2. 在已学过的单片机常用模块中,哪些模块可以使用中断编程来实现?3. 中断编程与软件查询法编程各有哪些优缺点?4. 总结实验八 输入捕捉与PWM一目的1. 初步输入捕捉编程一般方法。2. 初步掌握利用定时器实现PWM

13、编程方法。二题目1. 将T1CH0接到一开关上,通过拨动开关产生跳变沿信号。利用定时器输入捕捉功能对跳变沿进行捕捉,并对每两次跳变沿之间的时间间隔计时,计时精度为1秒。当捕捉第一次跳变沿时,开始计时。当捕捉到第二次跳变沿时,将计算的时间用指示灯(或数码管)显示出来。如此循环往复。时间间隔最长255秒钟(约4分钟)。2. 编制一个产生脉宽调制波的程序。 要求该脉宽调制波的周期为10ms,脉宽初始化为0,然后每隔1秒递增脉宽值0x20,当脉宽值到达0x0180后每隔1秒以0x20的脉宽值递减,当减到0后再递增,如此循环往复。将该PWM输出到一小灯上以显示结果。三设计内容及调试过程记录、分析四思考与

14、总结1. 输入捕捉功能可以有哪些应用?2. 如何用输入捕捉功能测量方波的周期?3. 定时器1允许输入捕捉中断,可以同时允许溢出中断吗?4. 小结用定时器通道实现PWM输出的原理和方法。实验九SCI通信一目的1进一步掌握数码管和键盘的应用。2. 初步掌握SCI通信原理及编程。二题目1. 编程实现GP32通过串口给PC机或其他单片机发送任意一个字符。2. 编程实现GP32通过串口接收PC机或其他单片机送来的数字09,并在数码管上显示该数字。3. 编程实现GP32通过串口给PC机或其他单片机发送字符串“HOW ARE YOU?”,并接收对方回送的“I AM FINE。”。4. 通过PC机(或其他单片

15、机)发送一个命令以控制8个LED亮暗,具体要求是:4-1. 各小灯初始状态都为暗;4-2. 先进行通信测试,PC机(或其他单片机)发送字符A,若单片机收到A则8个小灯全亮,并回送字符A;若单片机接收的不是字符A,则4个小灯亮,并回送字符N;若没收到任何字符,8个小灯保持全暗,PC机(或单片机)1分钟后自己判断线路不通,并给出不通显示。4-3. 通信成功后进入控制状态,PC机(或其他单片机)发送1个字节控制8个LED,每位控制每个LED,1亮0暗,如0xFF,则全亮。三设计内容及调试过程记录、分析四思考与总结1. 如果将SCI波特率设为19200,可怎样设置相关寄存器?2. SCI通信有哪些中断

16、?各在什么情况下发生?3. 如何知道串行口TX发送了信号?实验八综合实验一目的1. 进一步掌握MT-IDE嵌入式开发系统软硬件环境。2. 进一步掌握通用IO、数码管显示、键盘、定时、AD转换、SCI通信的应用。3. 初步掌握单片机应用系统的设计与实现。二题目1. 设计一个简易电子时钟计算器。要求:(1)键盘输入,数码管(或液晶显示器)显示 ;(2)时钟功能:走时、闹钟、日历、倒计时等功能;(3)计算器功能:可处理4位数以内、结果也在4位数以内的加、减、乘、除、求模运算,若超过可显范围,则给出警告提示(如蜂鸣器响或LED亮或数码管闪烁等);(4)可扩功能:温度显示功能、进制间转换等。涉及的主要单

17、片机应用技术:GPIO、数码管显示(或液晶显示)、定时器、键盘识别、AD采集。2. 设计一个数据采集系统。要求:(1)将GP32的通道0接热敏传感器(热敏电阻数据见实验五中的表格)的输入,经过AD转换后采集当前温度,并将温度值显示在数码管上;(2)当温度值超过某一警告值时,指示灯闪烁或蜂鸣器报警,报警持续5秒后停止;(3)将GP32的通道1和通道2分别接两个电位器,采集这两个通道的电压,并将电压值通过SCI送往远程PC机显示;(4)温度警告值可通过本地按键或远程PC操作界面进行修改;(5)可扩功能:在PC机端将电压值保存到数据库等。涉及的主要单片机应用技术:GPIO、数码管显示(或液晶显示)、

18、定时器、键盘识别、AD采集、SCI通信。3. 设计一个霓虹灯控制器。要求:(1)用4位数码管或8个指示灯作为显示屏,显示效果有闪烁和跑马灯(从左到右、从右到左、从中间往两边、从两边往中间等)以及其他自定义效果;(2)每种显示状态的持续时间可通过按键随时调整,且调整完立即生效。例如持续时间设为1秒,则闪烁效果是亮1秒暗1秒,跑马灯则是逐个点亮1秒。持续时间要精确控制。(3)在PC机上提供远程操作界面,如提供显示效果的选择、变化频率的设置等。涉及的主要单片机应用技术:GPIO、数码管显示(或液晶显示)、定时器、键盘识别、SCI通信。4. 利用HC908JB8单片机实现一个小容量简易U盘。要求:(1)U盘上的文件格式为FAT16;(2)PC机可通过USB接口访问U盘上的文件(以文本文件为例)和文件夹。涉及的主要单片机应用技术:FAT16文件格式、USB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论