




已阅读5页,还剩131页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录目录 实验一 p1 口输入、输出实验 .1 实验二 继电器控制实验.5 实验三 音频控制实验.7 实验四 8255 输入、输出实验 .9 实验五 8155 输入、输出实验 .14 实验六 5led 静态串行显示实验 .18 实验七 6led 动态扫描显示实验 .21 实验八 查询式键盘实验.24 实验九 阵列式键盘实验.28 实验十 计数器实验.33 实验十一 定时器实验.35 实验十二 外部中断实验.38 实验十三 adc0809 模数转换实验.41 实验十四 dac0832 数模转换实验 .45 实验十五 mc14433 模数转换实验 .50 实验十六 eeprom 外部数据程序存储器实验 .56 实验十七 sram 外部数据存储器扩展实验 .58 实验十八 93c46 串行 eeprom 数据读写 .62 实验十九 串行通讯实验.71 实验二十 电子时钟实验.77 实验二十一 电子琴模拟实验.82 实验二十二 温度传感器模拟实验.87 实验二十三 温度过程控制模拟实验.92 实验二十四 步进电机模拟实验.98 实验二十五 计算器实验.104 实验二十六 pwm 直流电机驱动实验 .112 实验二十七 led 点阵显示实验 .115 实验二十八 液晶显示实验.121 附录一 thkl-c51 仿真器联机及软件的使用说明 .135 附录二 使用 thdpj-1 实现 keil c 的在线调试:.150 附录三 单片机最小应用系统 1 电路原理.157 1 实验一实验一 p1 口输入、输出实验口输入、输出实验 一、实验目的一、实验目的 1、学习p1口的使用方法 2、学习延时子程序的编写和使用 二、实验说明二、实验说明 p1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由准双向口结 构可知当p1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”, 读入的数据可能是不正确的。 三、实验步骤三、实验步骤 实验实验( (一一) ):用:用 p1p1 口做输出口。口做输出口。 1、用 8p 数据线连接单片机最小应用系统 1 模块 p1 口到八位逻辑电平显示模块 的 d0-d7 口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th_p1a.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:发光二极管单只从右到左轮流循环点亮。、实验现象:发光二极管单只从右到左轮流循环点亮。 实验实验( (二二) ):用:用 p1.0p1.0、p1.1p1.1 作输入口,作输入口,p1.2p1.2、p1.3p1.3 作输出口。作输出口。 1、用二号导线分别连接单片机最小应用系统 1 模块的 p1.0、p1.1 到八位逻辑 电平输出模块的 k0、k1,连接 p1.2、p1.3 口到八位逻辑电平显示模块的 d0、d1 口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th1_p1b.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:、实验现象: 拨动扭子开关,观察发光二极管的亮灭情况,向上拨为熄灭,拨动扭子开关,观察发光二极管的亮灭情况,向上拨为熄灭, 向下拨为点亮。向下拨为点亮。 四、实验流程图及源程序四、实验流程图及源程序 1 1流程图流程图 2 2 2源源 程序:程序: 实验一实验一:本程序功能使发光二极管从右到左轮流循环点亮。:本程序功能使发光二极管从右到左轮流循环点亮。 org 0000h ljmp start org 0030h start: mov a, #0feh mov r5, #8 output: mov p1, a rl a call delay djnz r5, output ljmp start delay: mov r6, #0 mov r7, #0 delayloop: djnz r7, delayloop djnz r6, delayloop ret end 开始 p1.0,p1.1 置一 读入 p1.0 口 值 将读入的值输出到 p1.2 读入 p1.1 口值 将读入的值输出到 p1.3 开始 设置初始值 设移位次数 数据输出 左一位 延时 移位次数完成? 是否 (a)p1 口循环点灯程序框图 (b)p1 口输入输出程序框图 3 实验二:本程序读取开关状态,并在发光二极管上显示出来。实验二:本程序读取开关状态,并在发光二极管上显示出来。 keyleft bit p1.0 ;定义 keyright bit p1.1 ledleft bit p1.2 ledright bit p1.3 org 0000h ljmp start org 0030h start: setb keyleft ;欲读先置一 setb keyright loop: mov c,keyleft mov ledleft,c mov c,keyright mov ledright,c ljmp loop end 五、五、实验实验思考题思考题 (1)对于本实验延时子程序 delay: mov r6,0 mov r7, 0 delayloop:djnz r6,delayloop djnz r7,delayloop ret 如使用 12mhz 晶振,粗略计算此程序的执行时间为多少? 六、六、实验实验电路图电路图 本实验用到单片机最小应用系统 1 模块,八位逻辑电平显示模块,八位逻辑电 平输出模块。单片机最小应用系统 1 模块电路原理参考附录三,八位逻辑电平显示 模块电路原理参考图 1.1,八位逻辑电平输出模块电路原理参考图 1.2。 4 图 1.1 八位逻辑电平显示模块电路原理 图 1.2 八位逻辑电平输出模块电路原理 d4 d0 vcc d1 d2 d3 d4 d5 d6 d7 d3 d2 d1 d5 d6 d7 d0 1 2 3 4 5 6 7 8 jd1 d0-7 vccoe 1 le 11 d1 3 q1 2 d2 4 q2 5 d3 7 q3 6 d4 8 q4 9 d5 13 q5 12 d6 14 q6 15 d7 17 q7 16 d8 18 q8 19 vcc 20 gnd 10 u1 74ls373 r1270 r2270 r3270 r4270 r5270 r6270 r7270 r8270 vcc d0 d1 d2 d3 d4 d5 d6 d7 d0 d1 d2 d3 d4 d5 d6 d7 d0 d1 d2 d3 d4 d5 d6 d7 1 1 2 2 3 3 h l s4 1 1 2 2 3 3 h l s0 1 1 2 2 3 3 h l s2 1 1 2 2 3 3 h l s6 1 1 2 2 3 3 h l s1 1 1 2 2 3 3 h l s5 1 1 2 2 3 3 h l s3 1 1 2 2 3 3 h l s7vcc vccvcc vccvccvcc vccvcc 1 2 3 4 5 6 7 8 jd1 k0-7 k0k1k2k3 k7k6k5k4 k1 k2 k3 k4 k5 k6 k7 k0 k7 k3k2 k6k4k5 k0k1 5 实验二实验二 继电器控制实验继电器控制实验 一、实验目的一、实验目的 1、学习 i/o 端口的使用方法 2、掌握继电器的控制的基本方法 3、了解用弱电控制强电的方法 二、实验说明二、实验说明 现代自动控制设备中,都存在一个电子电路的互相连接问题,一方面要使电子 电路的控制信号能控制电气电路的执行元件(电动机,电磁铁,电灯等) ,另一方面 又要为电子线路和电气电路提供良好的电气隔离,以保护电子电路和人身的安全。 继电器便能完成这一任务。 继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断 电时产生的反电势。 本电路的控制端为高电平时,继电器常开触点吸合,同时 led 灯被点亮。当控 制端为低电平时,继电器不工作。 三、实验步骤三、实验步骤 1、用二号导线连接单片机最小应用系统 1 模块 p1.0 口到继电器与温度控制部 件模块的控制口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th2_继电器控制.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:继电器重复延时吸合与延时断开,发光二极管的亮灭指示继电、实验现象:继电器重复延时吸合与延时断开,发光二极管的亮灭指示继电 器吸合与断开。器吸合与断开。 四、实验流程图及源程序四、实验流程图及源程序 1流程图 2源程序:本程序用 p1.0 作为控制输出口,接继电器电路,使继电器重复吸 合与断开 output bit p1.0 ;p1.0 输出 org 0000h 继电器吸合延时继电器断开 开始 延时 6 ljmp start org 0030h start: clr output ;断开 call delay setb output ;吸合 call delay ljmp start delay: mov r6,#0 mov r7, #0 dloop: djnz r7, dloop djnz r6, dloop ret end 五、实验思考题五、实验思考题 试用单片机的其他输入输出口控制继电器。 六、实验电路图六、实验电路图 本实验用到单片机最小应用系统 1 模块,继电器与温度控制部件模块。单片机 最小应用系统 1 模块电路原理参考附录三,继电器控制电路原理参考图 2.1。 图 2.1 继电器控制电路原理 q1 9013 q2 9013 d1 1n4007 r1 10k r2 10k r3 22k r4 100k r5 100 r6 100 led u1 tlp5211 r0 1k vcc 位位 +12v vcc +12v k1 relay-spst 7 实验三实验三 音频控制实验音频控制实验 一、实验目的一、实验目的 1学习输入/输出端口控制方法 2了解音频发声原理 二、实验说明二、实验说明 本实验是利用 80c51 端口输出脉冲方波,方波经放大滤波后,驱动扬声器发声, 声音的频率高低由延时长短控制。本实验只给出发出单频率的声音的程序,请用户 思考,修改程序,可以让扬声器发出不同频率,不同长短的声音。 三、实验步骤三、实验步骤 1、用二号导线连接单片机最小应用系统 1 模块 p1.0 口到扬声器模块的输入端。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上。请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th3_音频控制.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:扬声器周期性的发出单频声音。、实验现象:扬声器周期性的发出单频声音。 四、实验流程图及源程序四、实验流程图及源程序 1、流程图 2、源程序:本程序功能 p1.0 输出音频信号使扬声器周期性的发声。 开始 输出音频脉冲低电平 延时 输出音频脉冲高电平 延时 8 output bit p1.0 ;p1.0 端口 org 0000h ljmp start org 0030h start: clr c mov output ,c call delay setb c mov output ,c call delay ajmp loop delay: mov r5,#4 ;延时子程序 a1: mov r6,#0ffh a2: mov r7,#0ffh dloop: djnz r7,dloop djnz r6,a2 djnz r5,a1 ret end 五、实验电路图五、实验电路图 本实验用到单片机最小应用系统 1 模块,扬声器模块。单片机最小应用系统 1 模块电路原理参考附录三,扬声器控制电路原理参考图 3.1。 图 3.1 扬声器控制电路原理 vcc q1 9013 r224 r1200 c1 0.33uf ls1 speaker 9 实验四实验四 8255 输入、输出实验输入、输出实验 一、实验目的一、实验目的 1、了解 8255 芯片结构及接口方式 2、掌握 8255 输入、输出的编程方法 二、实验说明二、实验说明 了解用到的芯片引脚及功能: 8255 是可编程的并行输入/输出接口芯片,通用性强且使用灵活。8255 按功能 可分为三个部分,即:总线接口电路,口电路和控制逻辑电路。 1、口电路:8255 共有三个八位口,其中 a 口和 b 口是单纯的数据口,供数据 i/o 口使用。 2、总线接口电路:它用于实现 8255 和单片机芯片的信号连接。 (1)cs片选信号。 (2)rd读信号。 (3)wr写信号。 (4)a0、a1端口选择信号。8255 共有四个可寻址的端口,用二位编码 可以实现。 3、控制逻辑电路:它是控制寄存器,用于存放各口的工作方式控制字。 本实验是利用 8255 可编程并行口芯片,实现数据的输入、输出。可编程通用接 口芯片 8255a 有三个八位的并行的 i/o 口,它有三种工作方式。本实验采用的方式 为 0:pa 口输出,pb 口输入。工作方式 0 是一种基本的输入输出方式。在这种方式 下,三个端口都可以由程序设置为输入或输出,其基本功能可概括如下: 8255 的引脚图 74ls373 的引脚图 10 1、可具有两个八位端口(a、b)和两个 4 位端口(c 口的上半部分和下半部) 。 2、数据输出时可锁存,输入时没有锁存功能。 本实验中,8255 的端口地址由单片机的 p2.0、p2.1 和 p2.7 控制。控制口的地 址为 7fffh;a 口的地址为 7cffh;b 口的地址为 7dffh;c 口的地址为 7effh。 三、实验步骤三、实验步骤 实验实验 ( (一一) ): papa 口作为输出口。口作为输出口。 1、用 8p 数据线连接单片机最小应用系统 1 模块的 p0 口到 8255i/o 扩展模块 的 d0d7 口,连接 8255i/o 扩展模块的 pa0pa7 到八位逻辑电平显示模块的 d0- d7 口,用二号导线分别连接单片机最小应用系统 1 模块的 p2.0、p2.1、p2.7、rd、wr 到 8255i/o 扩展模块的 a0、a1、cs、rd、wr,连接 8255i/o 扩展模块的 reset 口到复位模块的复位口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系 统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上。请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th4_8255a.asm”程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:发光二极管单只从右到左轮流循环点亮。、实验现象:发光二极管单只从右到左轮流循环点亮。 实验实验 ( (二二) ):pbpb 口作为输入口;口作为输入口;papa 口作为输出口。口作为输出口。 1、用 8p 数据线连接单片机最小应用系统 1 模块的 p0 口到 8255i/o 扩展模块 的 d0d7 口,连接 8255i/o 扩展模块的 pa0pa7 到八位逻辑电平显示模块的 d0- d7 口,连接 pb0pb7 口到八位逻辑电平输出模块的 k0-k7 口,用二号导线分别连 接单片机最小应用系统 1 模块的 p2.0、p2.1、p2.7、rd、wr 到 8255i/o 扩展模块的 a0、a1、cs、rd、wr,连接 8255i/o 扩展模块的 reset 口到复位模块的复位口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系 统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上。请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th4_8255b.asm”程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:拨动扭子开关,观察发光二极管的亮灭情况,发光二极管与开关、实验现象:拨动扭子开关,观察发光二极管的亮灭情况,发光二极管与开关 状态相对应,向下为点亮,向上为熄灭。状态相对应,向下为点亮,向上为熄灭。 四、实验源程序及流程图四、实验源程序及流程图 1源程序: 11 实验(一):本程序功能使发光二极管单只从右到左轮流循环点亮。 porta equ 7cffh ;a 口 portb equ 7dffh ;b 口 portc equ 7effh ;c 口 caddr equ 7fffh ;控制字地址 org 0000h ljmp start org 0030h start:mov a,#80h ;方式 0 mov dptr, #caddr movx dptr, a loop: mov a, #0feh mov r2, #8 output:mov dptr, #porta movx dptr, a call delay rl a djnz r2, output ljmp loop delay: mov r6, #0 mov r7, #0 delayloop: djnz r6, delayloop djnz r7, delayloop ret end 实验(二):pa 口输出,pb 口输入 porta equ 7cffh ;a 口 portb equ 7dffh ;b 口 portc equ 7effh ;c 口 caddr equ 7fffh ;控制字地址 org 0000h ljmp start org 0030h start:mov a, #82h ;方式 0,pa,pc 输出,pb 输入 12 mov dptr, #caddr movx dptr, a mov dptr, #portb movx a, dptr ;读入 b 口 mov dptr, #porta movx dptr, a ;输出到 a 口 call delay sjmp start end 2流程图 五、实验思考题五、实验思考题 试用 8255pa 口作为输出口,pb 作为输入口,pc 作为输入口完成 8255 的输入、 输出实验(其中 pa 口 led 数码显示,pb 接拨断开关,pc 接查询式键盘实验模块) 。 六、实验电路图六、实验电路图 本实验用到单片机最小应用系统 1 模块,8255i/o 扩展模块,复位模块, 八位 逻辑电平显示模块, 八位逻辑电平输出模块。单片机最小应用系统 1 模块电路原理 参考附录三,八位逻辑电平显示模块电路原理参考实验一图 1.1,八位逻辑电平输 出模块电路原理参考实验一图 1.2,复位模块电路原理参考图 4.1,8255i/o 扩展模 块电路原理参考图 4.2。 置 8255 工作方式 读 8255pb 口 写 8255pa 口 开 始 延 时 置 8255 工作方式 置 8255pa 口 数据左移 开 始 延 时 s1 reset r1 1k r2 100 c1 10uf vcc 13 图 4.1 复位模块电路原理 图 4.2 8255i/o 扩展模块电路原理 d0 34 d1 33 d2 32 d3 31 d4 30 d5 29 d6 28 d7 27 pa0 4 pa1 3 pa2 2 pa3 1 pa4 40 pa5 39 pa6 38 pa7 37 pb0 18 pb1 19 pb2 20 pb3 21 pb4 22 pb5 23 pb6 24 pb7 25 pc0 14 pc1 15 pc2 16 pc3 17 pc4 13 pc5 12 pc6 11 pc7 10 rd 5 wr 36 a0 9 a1 8 reset 35 cs 6 gnd 7 vcc 26 u1 8255 cs vcc 1 2 3 4 5 6 7 8 jd2 pa0-7 1 2 3 4 5 6 7 8 jd3 pb0-7 1 2 3 4 5 6 7 8 jd4 pc0-7 1 2 3 4 5 6 7 8 jd1 d0-7 a0 a1 wr reset rd 14 ad0 12 pa0 21 ad1 13 pa1 22 ad2 14 pa2 23 ad3 15 pa3 24 ad4 16 pa4 25 ad5 17 pa5 26 ad6 18 pa6 27 ad7 19 pa7 28 pb0 29 ce 8 pb1 30 rd 9 pb2 31 wr 10 pb3 32 io/m 7 pb4 33 ale 11 pb5 34 pb6 35 pb7 36 tmrout 6 pc0 37 pc1 38 tmrin 3 pc2 39 pc3 1 pc4 2 reset 4 pc5 5 8155 实验五实验五 8155 输入、输出实验输入、输出实验 一、实验目的一、实验目的 1、了解 8155 芯片结构及接口方式 2、掌握 8155 输入、输出的编程方法 二、实验说明二、实验说明 1、本实验利用 8155 可编程并行口芯片,实现数据的输入、输出。实验中 8155 的 pa 口、pb 口作为输出口。与 8255 比,8155 具有更强的功能,因为它除能提供并 行接口外还包括有 256 字节 ram 存储器和 14 位定时器/计数器。8155 具有三个可编 程 i/o 口,其中 pa、pb 为八位口,pc 口为 6 位口。pa 口、pb 口为通用的输入输出 口,主要用于数据的 i/o 传送,他们都是数据口,因此只有输入输出两种工作方式。 2、了解实验用到的芯片引脚及功能: 8155 是一种可编程多功能接口芯片,功能丰富, 使用方便,特别适合于扩展少量 ram 和定时器/计数 器的场合。其部分引脚功能如下: (1) ad0ad7地址/数据总线,双向三态。 1)8155 有 256 字节静态 ram,每一字节均有 相应地址,输入输出数据均通过 ad0ad7 口传送。 2)8155 内部有 6 个寄存器:a 口,b 口,c 口, 命令状态寄存器,定时/计数器低 8 位,定时/计数器高 6 位加 2 位输出信号形式,6 个寄存器有各自相应的地址。地址及写入或读出的数据 均通过 ad0ad7 传送。 3)ad0ad7 传送数据的方向由 rd,wr 信号控制。 (2) ce片选信号,输入,低电平有效。 (3) wr写信号,输入,低电平有效。 (4) rd读信号,输入,低电平有效。 (5) pa0pa7a 口 8 位通用 i/o 线。 (6) pb0pb7b 口 8 位通用 i/o 线。 (7) pc0pc5c 口 6 位 i/o 线既可作通用 i/o 口,又可作 a 口和 b 口工作 15 于选通方式下的控制信号。 (8) io/mi/o 与 ram 选择信号。8155 内部 i/o 口与 ram 是分开编址的,因 此要使用控制信号进行区分。io/m=0,对 ram 进行读写;io/m=1,对 i/o 进行读写。 3、本实验 8155 的端口地址由单片机的 p0 口和 p2.7 以及 p2. 0 控制。控制口 的地址为 7f00h;pa 口的地址为 7f01h;pb 口的地址为 7f02h。 三、实验步骤三、实验步骤 实验实验 ( (一一) ) papa 口作为输出口。口作为输出口。 1、用 8p 数据线连接单片机最小应用系统 1 模块的 p0 口接 8155i/o 扩展模块 的 d0d7 口,连接 8155i/o 扩展模块的 pa0pa7 到八位逻辑电平显示模块的 d0- d7 口,用二号导线分别连接单片机最小应用系统 1 模块的 p2.0、p2.7、rd、wr、ale 到 8155i/o 扩展模块的 io/m、ce、rd、wr、ale,连接 8255i/o 扩展模块的 reset 口到复位模块的复位口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上。请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加“ th5_8155a.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:发光二极管单只从右到左轮流循环点亮。、实验现象:发光二极管单只从右到左轮流循环点亮。 实验实验( (二二) ) pbpb 口作为输入口,口作为输入口, papa 口作为输出口。口作为输出口。 1、用 8p 数据线连接单片机最小应用系统 1 模块的 p0 口到 8155i/o 扩展模块 的 d0d7 口,连接 8155i/o 扩展模块的 pa0pa7 到八位逻辑电平显示模块的 d0- d7 口,连接 pb0pb7 口到八位逻辑电平输出模块的 k0-k7 口,用二号导线分别连 接单片机最小应用系统 1 模块的 p2.0、p2.7、rd、wr、ale 到 8155i/o 扩展模块的 io/m、ce、rd、wr、ale,连接 8255i/o 扩展模块的 reset 口到复位模块的复位口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺口朝上。请注意仿真器的方向:缺口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th5_8155b.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:拨动扭子开关,观察发光二极管的亮灭情况,发光二极管与开关、实验现象:拨动扭子开关,观察发光二极管的亮灭情况,发光二极管与开关 状态相对应,向下为点亮,向上为熄灭。状态相对应,向下为点亮,向上为熄灭。 四、实验源程序及流程图四、实验源程序及流程图 1源程序 实验(一):本程序功能使发光二极管单只从右到左轮流循环点亮。 16 porta equ 7f01h ;a 口 portb equ 7f02h ;b 口 caddr equ 7f00h ;控制字地址 org 0000h ljmp start org 0030h start:mov a,#03h ;方式 0,pa、pb 输出 mov dptr, #caddr movx dptr, a loop: mov a, #0feh mov r2, #8 output: mov dptr, #porta movx dptr, a call delay rl a djnz r2, output ljmp loop delay: mov r6, #0 mov r7, #0 delayloop: djnz r6, delayloop djnz r7, delayloop ret end 实验(二):pa 口输出,pb 口输入 mode equ 01h ;方式 0,pa 输出,pb 输入 porta equ 7f01h ;a 口 portb equ 7f02h ;b 口 caddr equ 7f00h ;控制字地址 org ooooh sjmp start org 0030h start: mov a, #mode mov dptr, #caddr movx dptr, a 17 loop: mov dptr, #portb movx a, dptr ;读入 b 口 mov dptr, #porta movx dptr, a ;输出到 a 口 call delay sjmp loop end 2流程图 五、实验思考题五、实验思考题 试用 8155pa 口作为输出口,pb 作为输入口,pc 作为输入口完成 8155 的输入、 输出实验(其中 pa 口 led 数码显示,pb 接拨断开关,pc 接查询式键盘实验模块) 。 六、实验电路图六、实验电路图 本实验用到单片机最小应用系统 1 模块,8155i/o 扩展模块,复位模块, 八位 逻辑电平显示模块, 八位逻辑电平输出模块。单片机最小应用系统 1 模块电路原理 参考附录三,八位逻辑电平显示模块电路原理参考实验一图 1.1,八位逻辑电平输 出模块电路原理参考实验一图 1.2,复位模块电路原理参考实验四图 4.1,8155i/o 扩展模块电路原理参考图 5.1。 置 8155 工作方式 读 8155pb 口 写 8155pa 口 开 始 延 时 置 8155 工作方式 置 8155pa 口 数据左移 开 始 延 时 gnd 20 vcc 40 ad0 12 pa0 21 ad1 13 pa1 22 ad2 14 pa2 23 ad3 15 pa3 24 ad4 16 pa4 25 ad5 17 pa5 26 ad6 18 pa6 27 ad7 19 pa7 28 pb0 29 ce 8 pb1 30 rd 9 pb2 31 wr 10 pb3 32 io/m 7 pb4 33 ale 11 pb5 34 pb6 35 pb7 36 tmrout 6 pc0 37 pc1 38 tmrin 3 pc2 39 pc3 1 pc4 2 reset 4 pc5 5 u1 8155 vcc 1 2 3 4 5 6 7 8 jd4 pc0-5 rd wr io/m ale out in reset ce 1 2 3 4 5 6 7 8 jd1 d0-7 1 2 3 4 5 6 7 8 jd2 pa0-7 1 2 3 4 5 6 7 8 jd3 pb0-7 18 图 5.1 8155i/o 扩展模块电路原理 实验六实验六 5led 静态串行显示实验静态串行显示实验 一、实验目的一、实验目的 1、掌握数字、字符转换成显示段码的软件译码方法 2、静态显示的原理和相关程序的编写 二、实验说明二、实验说明 1、静态显示,电路图中所示。显示器由 5 个共阴极数码管组成。输入只有两 个信号,它们是串行数据线 din 和移位信号 clk。5 个串/并移位寄存器芯片 74ls164 首尾相连。每片的并行输出作为 led 数码管的段码。 74ls164 的引脚图如图所示; 74ls164 为 8 位串入并出移位寄存器,1、2 为 串行输入端,q0q7 为并行输 出端,clk 为移位时钟脉冲,上升沿移入一位;mr 为清零端,低电 平时并行输出为零。 三、实验步骤三、实验步骤 1、用导线连接单片机最小应用系统 1 模块的 p1.0、p1.1 口 到串行静态显示模块的 din、clk 口。 2、用串行数据通信线连接计算机与仿真器,把仿真器插到单 片机最小应用系统 1 模块的锁紧插座中,请注意仿真器的方向:缺请注意仿真器的方向:缺 口朝上。口朝上。 3、打开 keil uvision2 仿真软件,首先建立本实验的项目文件,接着添加 “th6_串行静态显示.asm”源程序,进行编译,直到编译无误。 4、打开模块电源和总电源开关,点击开始调试按钮,点击 run 按钮运行程序。 5 5、实验现象:、实验现象:5led5led 显示显示“80c51”“80c51” 。停止程序运行,显示不变,说明静态显示。停止程序运行,显示不变,说明静态显示 模块具有数据锁存功能。模块具有数据锁存功能。 四、实验源程序及流程图四、实验源程序及流程图 1、源程序: dbuf0 equ 30h ;置存储区首址 temp equ 40h ;置缓冲区首址 74ls164 19 din bit p1.0 ;置串行输出口 clk bit p1.1 ;置时钟输出口 org 0000h ljmp start org 0030h start: mov 30h, #8 ;存入显示数据 mov 31h, #9 mov 32h, #c mov 33h, #5 mov 34h, #1 disp: mov r0, #dbuf0 mov r1, #temp mov r2, #5 dp10: mov dptr, #segtab ;表头地址 mov a, r0 movc a, a+dptr ;查表指令 mov r1, a inc r0 inc r1 djnz r2, dp10 mov r0, #temp ;段码地址指针 mov r1, #5 ;段码字节数 dp12: mov r2, #8 ;输出子程序 mov a, r0 ;取段码 dp13: rlc a ;段码左移 mov din, c ;输出一位段码 clr clk ;发送移位脉冲一位 setb clk djnz r2, dp13 inc r0 djnz r1, dp12 sjmp $ segtab:db 3fh,06h,5bh,4fh,66h,6dh ;0,1,2,3,4,5 db 7dh,07h,7fh,6fh,77h,7ch ;6,7,8,9,a,b db 58h,5eh,7bh,71h,00h,40h ;c,d,e,f, ,- 20 delay: mov r4, #03h ;延时子程序 aa1: mov r5, #0ffh aa: djnz r5, aa djnz r4, aa1 ret end 2.流程图 五、实验电路图五、实验电路图 本实验用到单片机最小应用系统 1 模块,串行静态显示模块。单片机最小应用 系统 1 模块电路原理图参考附录三,串行静态显示模块电路原理图参考图 6.1。 n 地址指针设置 取段码 段码左移一位 输出一位段码 输出一个移位脉冲 n 开 始 取段码结束 取段码结束 y y a bf c g d e dpy 3 9 10 1 2 8 5 a b c d e f g 4 dp dp 7 6 disp1 2a1 2b1 2c1 2d1 2e1 2f1 2g1 2h1 2a2 2b2 2c2 2d2 2e2 2f2 2g2 2h2 2a3 2b3 2c3 2d3 2e3 2f3 2g3 2h3 2a4 2b4 2c4 2d4 2e4 2f4 2g4 2h4 r1 51 r2 51 r3 51 r4 51 2a5 2b5 2c5 2d5 2e5 2f5 2g5 2h5 r5 51 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 vcc 14 gnd 7 u174ls164 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 vcc 14 gnd 7 u274ls164 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 vcc 14 gnd 7 u374ls164 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 vcc 14 gnd 7 u474ls164 2a1 2b1 2c1 2d1 2e1 2f1 2g1 2h1 2a2 2b2 2c2 2d2 2e2 2f2 2g2 2h2 2a3 2b3 2c3 2d3 2e3 2f3 2g3 2h3 2a4 2b4 2c4 2d4 2e4 2f4 2g4 vcc vcc vccvcc 2h4 din clk a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 vcc 14 gnd 7 u574ls164 2a5 2b5 2c5 2d5 2e5 2f5 2g5 2h5 vcc a bf c g d e dpy 3 9 10 1 2 8 5 a b c d e f g 4 dp dp 7 6 disp2 a bf c g d e dpy 3 9 10 1 2 8 5 a b c d e f g
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版私企员工劳动合同(含保密条款)
- 2025年度企业间资金拆借三方借款合同示范文本
- 2025年度展览馆安保服务承包合同
- 2025二手房东与租户共享办公空间租赁服务合同
- 2025年度高端住宅地暖垫层设计与施工承包合同范本
- 2025房地产项目收购三大方式应用及风险规避合同
- 2025年度大理石石材雕刻艺术品收藏合同
- 2025年社区养老服务评估师初级考试重点题解析
- 2025年安全员A考试bi备题库
- 2025年宠物营养师健康方案高级模拟题及答案
- 慢性咳嗽大讲堂课件
- 2025广东惠州惠城区人民政府河南岸街道办事处招聘编外人员12人笔试备考试题及答案解析
- 呼吸道疾病用药课件
- 特殊情况下紧急供货措施方案
- 工业机器人技术及其应用
- DB 4601∕T 10-2024 二次供水工程技术规范
- 胸部气管损伤的护理课件
- 危大工程考试题目含答案
- 儿童眼保健健康讲座课件
- 安防报警信息系统项目投资可行性研究分析报告(2024-2030版)
- 人教版三年级上数学第二单元《含括号的混合运算》课时练习卷(含答案)
评论
0/150
提交评论