西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心 实验时间 : 年 月 日学 生 姓 名学 号成 绩学生所在学院 电气与电子信息学院 年级/专业/班 课 程 名 称 单片机系统设计技术 课 程 代 码 106001389实验项目名称 IO 控制LED 流水灯实验项 目 代 码 指 导 教 师王孝平、余建华项 目 学 分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解简单的IO 控制程序,延迟子程序,并对其修改,使其功能改变。
二、实验原理 实验原理图图1 P0 口连接的8 盏LED 灯第 组从图1中可以看出:如果需要把LED点亮有两个条件,其一是需要用短接帽把J1的2脚和3脚短接,在PCB上就是将电路板左上角LED和VCC短接起来;其二是P0.X口给出低电平让电流从VCC开始流经限流电阻、LED后进入单片机的P0.X口,最后到单片机内部的地线上。
因此,简单地说就是在短接帽接好的前提下,向P0.X口写0则LED将点亮,写1则LED将熄灭。
图中网络标识PORT0_0、PORT0_1……PORT0_7和单片机P0.0、P0.1……P0.7连接,可观察原理图上单片机P0口的网络标识也是PORT0_0、PORT0_1……PORT0_7。
三、实验设备、仪器及材料硬件: PC 机,单片机教学实验开发平台;软件: KEIL集成开发环境、STC ISP程序下载软件。
四、实验步骤(按照实际操作过程)1、启动KEIL集成开发环境,按照《KEIL使用方法》中描述步骤进行工程建立、汇编源程序文件添加。
2、参考提供的源程序,仔细检查编写好的汇编语言源程序,参考《KEIL使用方法》完成编译和调试工作。
3、参考《STC单片机程序下载方法》下载编译完毕的HEX文件。
五、实验过程记录(数据、图表、计算等)六、实验结果分析及问题讨论西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心 实验时间 : 年 月 日学 生 姓 名学 号成 绩学生所在学院 电气与电子信息学院 年级/专业/班 课 程 名 称 单片机系统设计技术 课 程 代 码 106001389实验项目名称 IO 控制数码管动态扫描实验项 目 代 码 指 导 教 师王孝平、余建华项 目 学 分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解简单的IO 控制程序,延迟子程序,LED 数码管动态扫描程序,并对其修改,使 其功能改变。
二、实验原理 实验原理图图1 P0 口和P2 口连接的4 个LED 数码管第 组图2 5461BS 内部接线原理图从图1中可以看出:如果需要把LED数码管点亮有三个条件,其一是需要用短接帽把J5的1脚和2脚短接,在PCB上就是将电路板左上角DIG和VCC短接起来;其二是数码管采用共阳方式连接,P0口给出低电平,让PNP三极管9015导通,同时P2口给出低电平让电流通过9015后,流入数码管内部的LED灯,然后从负端流出进入单片机。
因此,简单地说就是在短接帽接好的前提下,向P0低4位口写0,且P2口输出0,则数码管内部对应LED将被点亮。
三、实验设备、仪器及材料硬件: PC 机,单片机教学实验开发平台;软件: KEIL集成开发环境、STC ISP程序下载软件。
四、实验步骤(按照实际操作过程)1、启动KEIL集成开发环境,按照《KEIL使用方法》中描述步骤进行工程建立、汇编源程序文件添加。
2、参考提供的源程序,仔细检查编写好的汇编语言源程序,参考《KEIL使用方法》完成编译和调试工作。
3、参考《STC单片机程序下载方法》下载编译完毕的HEX文件。
五、实验过程记录(数据、图表、计算等)六、实验结果分析及问题讨论西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心实验时间:年月日学生姓名学号成绩学生所在学院电气与电子信息学院年级/专业/班课程名称单片机系统设计技术课程代码106001389 实验项目名称外部中断实验项目代码指导教师王孝平、余建华项目学分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解中断服务程序编写,并对其修改,使其功能改变。
二、实验原理实验原理图图1 P0 口连接的4×4 按键从图1中可以看出:如果把P0口低四位置为0,高四位置为1,即P0=#0F0H。
在这种情况下,只要任意一个按键按下,将把PORT3_2拉为低电平,PORT3_2接到P3.2口,作为中断输入口。
三、实验设备、仪器及材料硬件: PC 机,单片机教学实验开发平台;软件: KEIL集成开发环境、STC ISP程序下载软件。
四、实验步骤(按照实际操作过程)1、启动KEIL集成开发环境,按照《KEIL使用方法》中描述步骤进行工程建立、汇编源程序文件添加。
2、参考提供的源程序,仔细检查编写好的汇编语言源程序,参考《KEIL使用方法》完成编译和调试工作。
根据程序的提示,做出自己的修改和现象记录。
3、参考《STC单片机程序下载方法》下载编译完毕的HEX文件。
五、实验过程记录(数据、图表、计算等)六、实验结果分析及问题讨论第组西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心实验时间:年月日学生姓名学号成绩学生所在学院电气与电子信息学院年级/专业/班课程名称单片机系统设计技术课程代码106001389 实验项目名称定时器应用控制实验项目代码指导教师王孝平、余建华项目学分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解定时器不同方式下的定时时间控制,定时器中断子程序,并对其修改,使其功能改变。
二、实验原理本实验要使用到的硬件资源有:P0口、P2口控制LED数码管,定时器T0控制LED数码管扫描,定时器T1控制定时计数。
三、实验设备、仪器及材料硬件: PC 机,单片机教学实验开发平台;软件: KEIL集成开发环境、STC ISP程序下载软件。
四、实验步骤(按照实际操作过程)1、启动KEIL集成开发环境,按照《KEIL使用方法》中描述步骤进行工程建立、汇编源程序文件添加。
2、参考提供的源程序,仔细检查编写好的汇编语言源程序,参考《KEIL使用方法》完成编译和调试工作。
3、参考《STC单片机程序下载方法》下载编译完毕的HEX文件。
五、实验过程记录(数据、图表、计算等)六、实验结果分析及问题讨论西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心 实验时间 : 年 月 日学 生 姓 名学 号成 绩学生所在学院 电气与电子信息学院 年级/专业/班 课 程 名 称 单片机系统设计技术课 程 代 码 106001389实验项目名称 UART 实验 项 目 代 码 指 导 教 师王孝平、余建华项 目 学 分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解UART 控制知识,UART 寄存器,UART 波特率计算并对其修改,使其功能改变。
二、实验原理 实验原理图图1 单片机串口与PC 机USB 接口连接图第 组从图1中可以看出:单片机接收口RXD(PORT3_0)与CH340G的发送口TXD相连接,单片机TXD(PORT3_1)与CH340G的接收口RXD相连接。
CH340G将UART信息转换为USB通讯数据包后发送到PC机的USB口,PC机通过将USB口数据通讯方式描述为标准RS232通讯方式(UART 兼容)后,供PC机应用程序使用。
从PC机应用程序看来,这个通讯就是一个标准的RS232接口,因此USB在这里仅仅做了一个桥梁的作用,通讯双方都认为自己在和标准的UART时序在通讯。
注意,在这个系统里,USB不仅仅做了数据通讯的作用,也为我们的实验板提供了最大500mA 的电流供应能力。
三、实验设备、仪器及材料硬件: PC 机,单片机教学实验开发平台;软件: KEIL集成开发环境、STC ISP程序下载软件。
四、实验步骤(按照实际操作过程)1、启动KEIL集成开发环境,按照《KEIL使用方法》中描述步骤进行工程建立、汇编源程序文件添加。
2、参考提供的源程序,仔细检查编写好的汇编语言源程序,参考《KEIL使用方法》完成编译和调试工作。
3、参考《STC单片机程序下载方法》下载编译完毕的HEX文件。
五、实验过程记录(数据、图表、计算等)六、实验结果分析及问题讨论西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:电气与电子信息学院专业实验中心 实验时间 : 年 月 日学 生 姓 名学 号成 绩学生所在学院 电气与电子信息学院 年级/专业/班 课 程 名 称 单片机系统设计技术 课 程 代 码 106001389实验项目名称 键盘扫描输入编程 项 目 代 码 指 导 教 师王孝平、余建华项 目 学 分一、实验目的1、熟悉KEIL 编程环境和调试环境。
2、掌握单片机汇编语言和指令的用法。
3、理解键盘扫描程序,中断服务程序,扫描显示和键盘扫描的共存程序编写,并对其修 改,使其功能改变。
二、实验原理 实验原理图图1 扫描键盘原理图第 组在图1 中,PORT0_0—PORT0_3 构成键盘输出行,PORT0_4—PORT0_7 构成输入列。
注意,单片机的IO 口是准双向口,P0 口做为普通IO 口使用的时候,内部没有上拉电阻,因此在PORT0_4 到PORT0_7 端口上加上了R3、R4、R5 和R6 做为上拉电阻。
R2 和D10、D11、D13、D14 构成了一个4 输入与门,该与门的输出为PORT3_2。
PORT3_2 可作为中断输入。
键盘扫描原理:1、让PORT0_0 输出为低电平,其他位输出高电平,在这种情况下,只有按下S1、S2、S3 或S4 中的任意一个按钮才可能将PORT0_4 到PORT0_7 的电平拉低,通过检测PORT0_4 到PORT0_7 的口线状态就能够知道哪个按钮被按下去了,记录下PORT0 低4 位输出状态和PORT0 高4 位状态,将这两个4 位状态组合为一个8 位状态,就能够知道当前按下去的按钮是哪一个。
2、让PORT0_1 输出为低电平,其他位输出高电平,同理分析出(1)中所描述的状态。
3、让PORT0_2 输出为低电平,其他位输出高电平,同理分析出(1)中所描述的状态。
4、让PORT0_3 输出为低电平,其他位输出高电平,同理分析出(1)中所描述的状态。
5、如果让程序不断重复上面1到4的步骤,即可对键盘编码进行解析。