1482.《单片机原理及应用》单片机实验指导书_第1页
1482.《单片机原理及应用》单片机实验指导书_第2页
1482.《单片机原理及应用》单片机实验指导书_第3页
1482.《单片机原理及应用》单片机实验指导书_第4页
1482.《单片机原理及应用》单片机实验指导书_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、 单片机原理及应用课程实验指导书一、 课程实验项目整个实验分为三部分:一是指令系统和汇编语言程序设计实验,旨在教会学生程序设计的基本方法和技巧;二是接口实验,本实验以接口电路中实际存在的信息流为程序设计的目标;三是综合实验,本实验是由多个知识点构成的硬件和软件交错在一起的实验,以建立系统概念为主要目的。(一)、软件实验1. 软件实验一 存储器块清零2. 软件实验二 二进制到bcd转换3. 软件实验三 内存块移动4. 软件实验四 程序跳转表5. 软件实验五 数据排序(二)、硬件实验1. 硬件实验一 p1口输入、输出实验2. 硬件实验二 继电器控制实验3. 硬件实验三 外部中断实验4. 硬件实验四

2、 定时器实验5. 硬件实验五 计数器实验6. 硬件实验六 串行数转换并行数实验7. 硬件实验七 并行数转换串行数实验8. 硬件实验八 单片机串行口通讯实验9. 硬件实验九 用74ls245读入数据10. 硬件实验十 用74ls273输出数据11. 硬件实验十一 8255输入、输出实验12. 硬件实验十二 外部中断(急救车与交通灯)13. 硬件实验十三 d/a转换实验14. 硬件实验十四 a/d转换实验15. 硬件实验十五 八段数码管显示16. 硬件实验十六 键盘扫描显示实验17.硬件实验十七 电子时钟二、 实验器材简介单片机实验一般的实验仪器有:单片机实验箱、单片机仿真器、数字储存示波器、数字

3、万用电表等。(一)、lab6000系列单片机仿真实验系统的特点与基本组成伟福单片机仿真实验系统由板上仿真器、实验仪、伟福仿真软件等组成。本实验仪提供强大的逻辑分析、波形输出和程序跟踪功能,可以直观地观察到单片机内部及外部电路工作的波形。实验仪上有丰富的实验电路和灵活的组成方法。这些电路可以和8031系列cpu、80c196系列及8088/8086cpu组合完成各种实验。本实验仪将高档仿真器所具有的逻辑分析仪、波形发生器和程序跟踪器等强大的分析功能移植过来,在做实验时不仅可以了解软件的执行过程,也可以直观地开刀程序运行时电路的信号状态、工作时序,详细了解电路工作情况。仿真实验系统有三种使用方法:

4、(1):用pc机上的集成调试软件驱动板上仿真器进行仿真和实验。(2)无pc机,仅用实验仪的板上仿真器进行仿真和实验。(3)无实验仪和仿真器,仅在pc机上采用软件模拟方式进行仿真。配mcs51/196仿真板,可以进行8051或80c196的实验。配8088/8086仿真板,可以进行8088/8086实验。实验系统自带键盘和显示器,自带系统监控程序。如果没有pc机也同样可以进行各种学习核试验。配备pc机集成调试软件,在有pc机的情况下,通过板上仿真器实现64kb全空间的硬件断点和仿真。pc机软件具有全集成化仿真环境,中英文两种界面,软件仿真与硬件仿真两种模式。实验仪可以方便灵活地构成各种实验方案,

5、在有无pc机和实验仪的情况下,都能进行相应的编程实验,从而具有极为广泛的应用范围。实验仪上提供了基本实验电路,减少繁锁的连线过程,同时还提供了dip40/28/24/20/16/14插孔和cpu的地址总线引出插孔,可用于扩展其他实验,培养实际动手能力,加强对实验电路的理解。实验系统在硬件上预留了自主开发实验的空间。对于基本实验只需要少量连线就可以进行,以减少工作量,同时提供了一些需较多连线的扩展性实验来进一步锻炼实际动手能力。伟福仿真实验系统上各功能模块的排列见下图所示。各个模块的引脚都被引出到相应的插孔,扩展插孔可兼容28脚、24脚、16脚和14脚的芯片,利用这个插座可以对双列直插式的各种芯

6、片进行实验。总线扩展为三排插孔,用于引出各种总线信号,包括8根数据总线、16根地址总线,以及ale、rd、wr等控制总线。另外,与cpu相关的一些控制信号和i/o信号。例如,p1口、rxd、txd等信号在pod51仿真板上引出。伟福仿真实验系统具有编辑、编译、下载、调试全部集中在一个环境下。配用不同的仿真头可仿真51系列,196系列,pic系列,飞利蒲公司的552、lpc764、dallas320,华邦438等51增强型cpu。为了跟上形势,现在很多工程师需要面对和掌握不同的项目管理器、编辑器、编译器。他们由不同的厂家开发,相互不兼容,使用不同的界面,学习使用都很吃力。伟福windows调试软

7、件为您提供了一个全集成环境,统一的界面,包含一个项目管理器,一个功能强大的编辑器,汇编make、build和调试工具并提供千个与第三方编译器的接口。由于风格统一,大大节省了您的精力和时间。 图:伟福lab6000单片机仿真实验仪模块排列强大的逻辑分析仪综合调试功能。逻辑分析仪由交互式软件菜单窗口对系统硬件的逻辑或时序进行同步实时采样,并实时在线调试分析,采集深度32k(e6000/l ),最高时基采样频率达20mhz,40路波形,可精确实时反映用户程序运行时的历史时间。系统在使用逻辑分析仪时,除普通的单步运行、键盘断点运行、全速硬件断点运行外,还可实现各种条件组合断点如:数据、地址、外部控制信

8、号、cpu内部控制信号、程序区间断点等。由于逻辑仪可以直接对程序的执行结果进行分析,因此极大地便利于程序的调试。随着科学技术的发展,单片机通讯方面的运用越来越多。在通讯功能的调试时,如果通讯不正常,查找原因是非常耗时和低效的,您很难搞清楚问题到底在什么地方,是波特率不对,是硬件信道有问题,是通讯协仪有问题,是发方出错还是收方出错。有了逻辑仪,情况则完全不一样,用它可以分别或者同时对发送方、接收方的输入或者输出波形进行记录、存储、对比、测量等各种直观的分析,可以将实际输出通讯报文的波形与源程序相比较,可立即发现问题所在,从而极大地方便了调试。强大的追踪器功能追踪功能以总线周期为单位,实时记录仿真

9、过程中cpu发生的总线事件,其触发条件方式同逻辑分析仪。追踪窗口在仿真停止时可收集显示追踪的cpu指令记忆信息,可以以总线反汇编码模式、源程序模式对应显示追踪结果。屏幕窗口显示波形图最多追踪记忆指令32k并通过仿真器的断点、单步、全速运行或各种条件组合断点来完成追踪功能。总线跟踪可以跟踪程序的运行轨迹。可以统计软件运行时间。(二)、伟福e6000/l仿真器的特点:1、仿真头介绍: pod8x5xp 仿真头转接座仿真头晶振选择跳线 选择仿真头晶振 选择用户板晶振20脚1脚圈与圈对接复位信号输出5v电源输出20芯电缆插座34芯电缆插座 20芯电缆34芯电缆仿真器仿真头1402120仿真器与pod8

10、x5xp连接图pod8x5xp仿真头为pod8x5x改进型。可配e2000系列,e6000系列,k51系列仿真器,用于仿真mcs51系列及兼容单片机,可仿真cpu种类为8031/32, 8051/52, 875x, 89c5x, 89cx051, 华邦的78e5x, lg的97c51/52/1051/2051。 配有40脚dip封装的转接座,可选配44脚plcc封装的转接座.选配2051转接座可仿真20脚dip封装的89cx051cpu。2、性能参数:支持keil uvision2;提供的集成调试环境必须集成编缉器、编译器、调试器; 调试手段包括逻辑分析仪、跟踪器、逻辑笔、波形发生器、影子存储

11、器、记时器、程序时效分析、数据时效分析、硬件测试仪、事件触发器等;支持汇编、c、pl/m源程序混合调试;支持软件模拟; 支持项目管理;支持点屏功能;观察窗口,支持所有的数据类型。在线直接修改、编译、调试源程序,错误指令定位。每套加配如下仿真头:podh8x5x、pod2051。当更换不同型号的仿真头时即可对各种不同类型的单片机进行仿真,是一种灵活的多cpu仿真系统。更换pod,可以对各种cpu进行仿真 (仿真头型号为pod8x5x可仿真51系列8x5x单片机)。可仿真51系列,196系列,pic系列,飞利蒲公司的552、lpc764、dallas320,华邦438等51增强型cpu。3、仿真器

12、介绍:e6000/l型仿真器的外形示意图如下所示:伟福e6000/l型仿真器20芯仿真插座34芯仿真插座电源指示灯电源插座逻辑测试钩插座9芯串口插座 主机电源开关j3j4j1j2 说明:1 仿真器使用9针串行口,与pc机用两头为孔的串行电缆连接。对于一些只有usb口而没有串口的计算机,可以使用usb转串口电缆将usb转成串行口。串行电缆内部连接为根据仿真器型号不同,逻辑测试钩插座可能只有一个。3 根据仿真器型号不同,可能会没有20芯仿真电缆插座。4 电源为直流5v/1a(最小),电源插孔的极性为内“正”外“负”。e6000l/e6000t/e6000s型仿真器仿真器型

13、号功能e6000/s通用仿真器(1-16位,15m总线速度)硬件测试仪运行时间统计逻辑笔(选配件)windows版本、dos版本双平台、支持keil uvision 开发环境e6000/t含e6000/s所有功能事件断点、断点记数跟踪器影子存储器全空间程序/数据时效分析器e6000/l含e6000/t所有功能逻辑分析仪 (测试钩为选配件)可编程波形发生器e6000系列仿真可配置仿真头仿真头型号可仿真cpupod8x5xp8x5x系列(p0口和p2口作为总线或io口用)podh8x5xphilips 40脚及44脚51系列芯片及通用8x5x芯片pod520pdalas310/320/510/52

14、0/华邦77e58pod518x5x系列cpu(p0口和p2口作为总线用)pod20512051、1051系列cpu(需与pod8x5xp配合使用)pod552philips 80c552(p0口和p2口做为总线)pod592philips 80c592(p0口和p2口做为总线)podlpc93x philips lpc93x podlpc76x philips lpc76x pod196kc196kc/kb/kdpod196mc196mc/md/mhpod16c5xppic16c52/54/55/56/57/58、pic12c508/509pod16c67xppic16c61/62/63/6

15、4/65/67、pic16c71/72/73/74/76/77pod16c71xpic16c71x全系列pod16c8xpic16c83/84podh591philips p87c591 芯片新仿真头 伟福公司将为e6000系列开发新的仿真头三、课程实验项目及要求 软件实验一 存储器块清零一、 实验要求指定存储器中某块的起始地址和长度,要求能将其内容清零。二、 实验目的1. 掌握存储器读写方法2. 了解存储器的块操作方法三、实验说明通过本实验,学生可以了解单片机读写存储器的读写方法,同时也可以了解单片机编程,调试方法。如何将存储器块的内容置成某固定值(例全填充为0ffh)? 请学生修改程序,完

16、成此操作。设置块长度设置块起始地址地址加1当前地址内容清零是否清除完结束是否四、程序框图软件实验二 二进制到bcd转换一、 实验要求将给定的一个二进制数,转换成二十进制(bcd)码二、 实验目的1. 掌握简单的数值转换算法2. 基本了解数值的各种表达方法三、 实验说明计算机中的数值有各种表达方式,这是计算机的基础。掌握各种数制之间的转换是一种基本功。有兴趣的同学可以试试将bcd转换成二进制码。四、 程序框图给出要转换的二进制数将数除以100,得百位数保存百位数将余数再除以10,得十位数保存十位数余数为个位数,将其保存结束软件实验三 内存块移动一、 实验要求将指定源地址和长度的存储块移到指定目标

17、位置二、 实验目的1 了解内存的移动方法。2 加深对存储器读写的认识。3三、 实验说明块移动是计算机常用操作之一,多用于大量的数据复制和图象操作。本程序是给出起始地址,用地址加一方法移动块,请思考给出块结束地址,用地址减一方法移动块的算法。另外,若源块地址和目标块地址有重叠,该如何避免?四、程序框图设置块的源地址设置块的目标地址设置移动长度从源地址取数保存到目标地址中源地址加1目标地址加1是否移动完结束是否软件实验四 程序跳转表一、 实验要求在多分支结构的程序中,能够按调用号执行相应的功能,完成指定操作。二、 实验目的1. 了解程序的多分支结构2. 了解多分支结构程序的编程方法三、实验说明多分

18、支结构是程序中常见的结构,若给出调用号来调用子程序,一般用查表方法,查到子程序的地址,转到相应子程序。四、程序框图设置调用号根据调用号查表得到跳转地址跳转到相应程序段调用返回软件实验五 数据排序一、 实验要求给出一组随机数,将此组数据排序,使之成为有序数列二、 实验目的 1. 了解数据排序的简单算法。三、 实验说明有序的数列更有利于查找。本程序用的是“冒泡排序”法,算法是将一个数与后面的数相比较,如果比后面的数大,则交换,如此将所有的数比较一遍后,最大的数就会在数列的最后面。再进行下一轮比较,找出第二大数据,直到全部数据有序。四、程序框图交换a,b数位置设置数据区地址设置数据区长度清除交换标志

19、当前地址取数a地址加1当前地址取数b结束ab?设置交换标志数据比较完全部有序?是否否是是否硬件实验一 p1口输入、输出实验一、实验要求1. p1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。2. p1.0、p1.1作输入口接两个拨动开关,p1.2、p1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意p1.0、p1.1作为输入口时应先置1,才能正确读入值。二、实验目的3. 学习p1口的使用方法。4. 学习延时子程序的编写和使用。三、实验电路及连线连线连接孔1连接孔21s0p1.02s1p1.13p1.2l44p1.3l5实验2:

20、 p1口输入输出连线连接孔1连接孔21p1.0l02p1.1l13p1.2l24p1.3l3实验1: p1口循环点灯四、实验说明a) p1口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当p1口用为输入口时,必须先对它置“1”。若不先对它置“1”,读入的数据是不正确的。delay:mov r6,#0hmov r7, #0hdelayloop:djnz r6,delayloopdjnz r7,delayloopretb) 8051延时子程序的延时计算问题,对于程序查指令表可知mov,djnz指令均需用两个机器周期,在6mhz晶振时,一个机器周期时间长度为12/6mhz,

21、所以该段程序执行时间为:(256255+2)2126 261ms五、实验框图(a) p1口循环点灯程序框图(b) p1口输入输出程序框图硬件实验二 继电器控制实验一、实验要求用单片机的端口,输出电平控制继电器的吸合和断开,实现对外部装置的控制。二、实验目的1. 学习i/o端口的使用方法2. 掌握继电器的控制的基本方法3. 了解用弱电控制强电的方法 三、实验电路及连线连线连接孔1连接孔21p1.0继电器输入25v继电器常闭输入3l0继电器中间输入四、实验说明现代自动控制设备中,都存在一个电子电路与电气电路的互相连接问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机,电磁铁,电灯

22、等),另一方面又要为电子线路的电气电路提供良好的电气隔离,以保护电子电路和人身的安全。继电器便能完成这一桥梁作用。本实验采用的继电器其控制电压是5v,控制端为高电平时,继电器工作常开触点吸合,连触点的led灯被点亮。当控制端为低电平时,继电器不工作。执行时,对应的led将随继电器的开关而亮灭。五、实验框图开始继电器吸合延时继电器断开延时硬件实验三 外部中断实验一、实验要求用单次脉冲申请中断,在中断处理程序中对输出信号进行反转。二、实验目的1、学习外部中断技术的基本使用方法。2、 学习中断处理程序的编程方法。单次脉冲三、实验电路及连线连线连接孔1连接孔21p1.0l02单脉冲输出int0 四、实

23、验说实明中断服务程序的关键是: 1.保护进入中断时的状态,并在退出中断之前恢复进入时的状态。2.必须在中断程序中设定是否允许中断重入,即设置exo位。本例中使用了into中断,一般中断程序进入时应保护psw,acc以及中断程序使用但非其专用的寄存器。本例的中断程序保护了psw,acc等三个寄存器并且在退出前恢复了这三个寄存器。另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。本例中没有涉及这种情况。into(p32)端接单次脉冲发生器。p1.0接led灯,以查看信号反转.五、实验框图 主程序框图外部中断子程序框图硬件实验四 定时器实验一、实验要求用cpu内部定时器中断方式计时,

24、实现每一秒钟输出状态发生一次反转.二、实验目的 1、学习8031内部计数器的使用和编程方法。 2、进一步掌握中断处理程序的编程方法。三、实验电路及连线连线连接孔1连接孔21p1.0l0 四、实验说明1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验使用的是定时器。2、定时器有关的寄存器有工作方式寄存器tmod和控制寄存器tcon。tmod用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。tcon主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。3、内部计数器用作定时器时,是对机器周期计数

25、。每个机器周期的长度是12个振荡器周期。因为实验系统的晶振是6mhz,本程序工作于方式2,即8位自动重装方式定时器, 定时器100us中断一次, 所以定时常数的设置可按以下方法计算:机器周期=126mhz=2us(256-定时常数)2us=100us定时常数=206. 然后对100us中断次数计数10000次,就是1秒钟.4、在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。五、实验框图 主程序框图定时中断子程序框图硬件实验五 计数器实验一、实验要求8031内部定时计数器t0,按计数器模式和方式1工作,对p3.

26、4(t0)引脚进行计数。将其数值按二进制数在p1口驱动led灯上显示出来。二、实验目的1、学习8031内部定时/计数器使用方法。三、实验电路及连线连线连接孔1连接孔21p1.0l02p1.1l13p1.2l24p1.3l35单脉冲输出t0单次脉冲四、实验说明1 本实验中内部计数器起计数器的作用。外部事件计数脉冲由p3.4引入定时器t0。单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率。五、 实验框图计数,输出计数值设置工作方式开始计

27、数开始硬件实验六 串行数转换并行数实验一、实验要求利用单片机的串行口和i/o端口串行输出,利用74ls164移位转换成并行数据,接在led灯上显示。74ls164置于通用插座上。二、实验目的1、 掌握8031串行口方式0工作方式及编程方法。2、 掌握用8031的p1口的i/o功能,输出串行数据。3、掌握利用串行口入i/o口,扩展i/o通道的方法。三、实验电路及连线74ls164 插入40脚锁紧座连线连接孔1连接孔21l0164-3脚2l1164-4脚3l2164-5脚4l3164-6脚5l4164-10脚6l5164-11脚7l6164-12脚8l7164-13脚9rxd164-1脚10rxd

28、164-2脚11txd164-8脚12rst_164-9脚13gnd164-7脚14vcc164-14脚连线连接孔1连接孔21l0164-3脚2l1164-4脚3l2164-5脚4l3164-6脚5l4164-10脚6l5164-11脚7l6164-12脚8l7164-13脚9p1.0164-1脚10p1.0164-2脚11p1.1164-8脚12rst_164-9脚13gnd164-7脚14vcc164-14脚 1、用串口方式0,串行输出数据/时钟 2、用i/o口串行输出数据/时钟四、实验说明串行口工作在方式0时,可通过外接移位寄存器实现串并行转换。在这种方式下,数据为8位,只能从rxd端输

29、入输出,txd端总是输出移位同步时钟信号,其波特率固定为fosc/12。在cpu将数据写入sbuf寄存器后,立即启动发送。待8位数据输完后,硬件将状态寄存器的ti位置1,ti必须由软件清零。用串行口工作方式0输出数据/时钟,是自动移位输出,用p1端口串行输出数据时,要编程移位数据,输出数据/时钟。开始五、实验框图开始设置串口工作方式给出数据移位次数设为8给出数据数据移出一位输出到串口输出时钟等待否一个字节移完全部输出否是是将移出数据位输出清输出标志延时延时给出另一数据给出另一数据 (a) 串口方式0输出 程序框图 (b)p1口输出数据/时钟 程序框图硬件实验七 并行数转换串行数实验一、实验要求

30、将外接的并行数利用74ls165读入,并且移位转换成串行数,利用单片机串行口和p1口串行读入。74ls165置于通用插座上。二、实验目的1、 掌握8031串行口方式0工作方式及编程方法。2、 掌握用8031的p1口的i/o功能,读入串行数据。3、掌握利用串行口及i/o口,扩展i/o通道的方法。三、实验电路及连线74ls165 插入40脚锁紧座连线连接孔1连接孔21k0165-11脚2k1165-12脚3k2165-13脚4k3165-14脚5k4165-3脚6k5165-4脚7k6165-5脚8k7165-6脚9rxd165-9脚10txd165-2脚11p1.0165-1脚12rst_165

31、-9脚13gnd165-8脚14gnd165-15脚15vcc165-16脚 连线连接孔1连接孔21k0165-11脚2k1165-12脚3k2165-13脚4k3165-14脚5k4165-3脚6k5165-4脚7k6165-5脚8k7165-6脚9p1.1165-9脚10p1.2165-2脚11p1.0165-1脚12rst_165-9脚13gnd165-8脚14gnd165-15脚15vcc165-16脚1、用串口方式0,串行输入数据/时钟 2、用i/o口串行输入数据/时钟四、实验说明与上个实验一样,这个实验主要是用串并转换方法扩展i/o口。串行口工作在方式0时,可通过外接移位寄存器实现

32、串并行转换。在这种方式下,数据为8位,只能从rxd端输入输出,txd端总是输出移位同步时钟信号,其波特率固定为晶振频率fosc/12。由软件置位串行控制寄存器的允许接收位(ren)后,才启动串行接收。待8位数据收完后,硬件将状态寄存器的ri位置1,ri必须由软件清零。用串行口工作方式0读入数据,是自动移位完成的,用p1端口串行读入数据时,要编程输出时钟信号,移位读入数据。五、实验框图开始数据置入外接移位寄存器设置串口工作方式数据置入外接移位寄存器移位次数设为8置ren位,开始接收数据移入一位输出时钟等待否一个字节移完全部读入否是是结束清ri标志结束 (a) 串口方式0读入 程序框图 (b)p1

33、口读入数据 程序框图开始硬件实验八 单片机串行口通讯实验一、实验要求利用单片机串行口,实现两个实验台之间的串行通讯。其中一个实验台作为发送方,另一侧为接收方。发送方读入按键值,并发送给接收方,接收方收到数据后在led上显示。二、实验目的 1、掌握单片机串行口工作方式的程序设计,及简易三线式通讯的方法。 2、了解实现串行通讯的硬环境、数据格式的协议、数据交换的协议。 3、学习串口通讯的中断方式的程序编写方法。三、实验电路 显示电路和键盘电路见硬件实验十六和硬件实验十七。 甲方 乙方连线连接孔1连接孔21甲方txd乙方rxd2甲方rxd乙方txd3甲方gnd乙方gnd4key/led_cscs0四

34、、实验说明1、8051的rxd、txd接线柱在pod51仿真板上。2、通讯双方的rxd、txd信号本应经过电平转换后再行交叉连接,本实验中为减少连线可将电平转换电路略去,而将双方的rxd、txd直接交叉连接。也可以将本机的txd接到rxd上,这样按下的键,就会在本机led上显示出来。3、若想与标准的rs232设备通信,就要做电平转换,输出时要将ttl电平换成rs232电平,输入时要将rs232电平换成ttl电平。可以将仿真板上的rxd、txd信号接到实验板上的“用户串口接线”的相应rxd和txd端,经过电平转换,通过“用户串口”接到外部的rs232设备。可以用实验仪上的逻辑分析仪采样串口通信的

35、波形五、实验框图 硬件实验九 用74ls245读入数据一、实验要求 利用板上的集成电路插座,扩展一片74ls245,来读入开关状态。二、实验目的1、 了解cpu常用的端口连接总线的方法。2、 掌握74ls245进行数据读入或输出。三、实验电路及连线连线连接孔1连接孔21k0245-18脚2k1245-17脚3k2245-16脚4k3245-15脚5k4245-14脚6k5245-13脚7k6245-12脚8k7245-11脚9cs0cs245四、实验说明一般情况下,cpu的总线会挂有很多器件,如何使这些器件不造成冲突,这就要使用一些总线隔离器件,例如74ls245就是一种。74ls245是三态

36、总线收发器,利用它既可以输出也可输入数据。本实验74ls245的片选地址为cso,即8000h,读这个地址,就是从74ls245读回开关的值。可以用单步的方式执行程序,改变开关状态,观察读回的值。五、实验程序框图开始读入74ls245的值硬件实验十 用74ls273输出数据一、实验要求在通用插座上扩展一片74ls273作为输出口,控制八个led灯。二、实验目的1、学习在单片机系统中扩展简单i/o接口的方法。2、学习数据输出程序的设计方法。3、了解数据锁存的概念和方法。三、实验电路及连接连线连接孔1连接孔21l0373-2脚2l1373-5脚3l2373-6脚4l3373-9脚5l4373-12

37、脚6l5373-15脚7l6373-16脚8l7373-19脚9cs0cs273四、实验说明因为本实验是用74ls273扩展io端口。方法是:通过片选信号和写信号将数据总线上的值锁存在273中,同时在273的输出端品输出,当数据总线上的值撤消以后,由于273能够锁存信号,所以273的输出端保持不变,直到下次有新的数据被锁存。本实验中,在数据输出同时输出片选信号和写信号。五、实验框图设置片选地址设置数据初值输出数据数据移位延时硬件实验十一 8255输入、输出实验一、实验要求利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255pa口作输出,pb口作输入。二、实验目的1、了解8255芯

38、片结构及编程方法。2、了解8255输入/输出实验方法。三、实验电路及连线连线连接孔1连接孔21cs08255cs2l08255-pa03l18255-pa14l28255-pa25l38255-pa36l48255-pa47l58255-pa58l68255-pa69l78255-pa710k08255-pb011k18255-pb112k28255-pb213k38255-pb314k48255-pb415k58255-pb516k68255-pb617k78255-pb78255的cs/接地址译码/cs0,则命令字地址为8003h,pa口地址为8000h,pb口地址为8001h,pc口地址

39、为8002h。pa0-pa7(pa口)接led0-led7(led)pb0-pb7(pb口)接k0-k7(开关量)。数据线、读/写控制、地址线、复位信号板上已接好。 四、实验说明 可编程通用接口芯片8255a有三个八位的并行i/o口,它有三种工作方式。本实验采用的是方式0:pa,pc口输出,pb口输入。很多i/o实验都可以通过8255来实现。 五、实验框图开始延时置8255工作方式置8255pa口数据左移延时开始延时置8255工作方式读8255pb口置8255pa口硬件实验十二 外部中断(急救车与交通灯)一、实验要求本实验模拟交通信号灯控制,一般情况下正常显示,有急救车到达时,两个方向交通信号

40、灯全红,以便让急救车通过。设急救车通过路口时间为10秒,急救车通过后,交通恢复正常,本实验用单次脉冲申请外部中断,表示有急救车通过。二、实验目的1、学习外部中断技术的基本使用方法。2、学习中断处理程序的编程方法。 led3、led4、led5分别表示东西方向红、黄、绿灯led0、led1、led2分别表示南北方向红、黄、绿灯单次脉冲三、实验电路及连线 连线连接孔1连接孔21p1.0l02p1.1l13p1.2l24p1.3l35p1.4l46p1.5l57单脉冲输出int0(51)四、实验说明中断服务程序的关键是: 1、保护进入中断时的状态,并在退出中断之前恢复进入时的状态。2、必须在中断程序

41、中设定是否允许中断重入,即设置exo位。本例中使用了into中断,一般中断程序进入时应保护psw,acc以及中断程序使用但非其专用的寄存器。本例的中断程序保护了psw,acc等三个寄存器并且在退出前恢复了这三个寄存器。另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。本例中没有涉及这种情况。对于8051cpu 外部中断由into(p32)端接入。中断信号由单次脉冲发生器产生。对中断的处理可参见硬件实验十一。五、实验框图外部中断入口开始开外中断保护现场初始状态东西南北都是红灯东西,南北都亮红灯延时10秒状态1南北绿灯,东西红灯恢复现场状态2南北绿灯闪转黄灯,东西红灯中断返回状态3

42、南北红灯,东西绿灯状态4南北红灯,东西绿灯闪转黄灯 主程序框图 外部中断子程序框图硬件实验十三 d/a转换实验一、实验要求利用dac0832,编制程序产生锯齿波、三角波、正弦波。三种波轮流显示,用示波器观看。二、实验目的1、了解d/a转换的基本原理。 2、了解d/a转换芯片0832的性能及编程方法。3、了解单片机系统中扩展d/a转换的基本方法。三、实验电路及连线连线连接孔1连接孔21da_cscs22-5v-+5v电压表cs0用电压表或示波器探头接-5v+5v输出,观察显示电压或波形。四、实验说明 1、d/a转换是把数字量转换成模拟量的变换,实验台上d/a电路输出的是模拟电压信号。要实现实验要

43、求,比较简单的方法是产生三个波形的表格,然后通过查表来实现波形显示。2、产生锯齿波和三角波的表格只需由数字量的增减来控制,同时要注意三角波要分段来产生。要产生正弦波,较简单的方法是造一张正弦数字量表。即查函数表得到的值转换成十六进制数填表。d/a转换取值范围为一个周期,采样点越多,精度越高些。本例采用的采样点为256点/周期。3、8位d/a转换器的输入数据与输出电压的关系为u(0-5v)=uref/256nu(-5v+5v)=2uref/256n-5v (这里 uref为+5v)五、实验框图硬件实验十四 a/d转换实验一、实验要求利用实验板上的adc0809做a/d转换器,实验板上的电位器提供

44、模拟量输入,编制程序,将模拟量转换成二进制数字量,用8255的pa口输出到发光二极管显示。二、实验目的1、 掌握a/d转换与单片机的接口方法。2、 了解a/d芯片adc0809转换性能及编程。3、 通过实验了解单片机如何进行数据采集。三、实验电路及连线cs0电位器连线连接孔1连接孔21in0电位器输出2ad_cscs03eocint048255_cscs15pa0l06pa1l17pa2l28pa3l39pa4l410pa5l511pa6l612pa7l7四、实验说明a/d转换器大致有三类:一是双积分a/d转换器,优点是精度高,抗干扰性好;价格便宜,但速度慢;二是逐次逼近a/d转换器,精度,速

45、度,价格适中;三是并行a/d转换器,速度快,价格也昂贵。实验用的adc0809属第二类,是八位a/d转换器。每采集一次一般需100us。本程序是用延时查询方式读入a/d转换结果,也可以用中断方式读入结果,在中断方式下,a/d转换结束后会自动产生eoc信号,将其与cpu的外部中断相接,有兴趣的同学可以试试编程用中断方式读回a/d结果.五、实验框图主程序框图硬件实验十五 八段数码管显示一、实验要求利用实验仪提供的显示电路,动态显示一行数据.二、实验目的1. 了解数码管动态显示的原理。2. 了解用总线方式控制数码管显示三、实验线路及连线连线连接孔1连接孔21key/led_cscs0四、实验说明本实验仪提供了6 位8段码led显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控

温馨提示

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

评论

0/150

提交评论