你是个小狗狗-电子科技大学课件

上传人:我*** 文档编号:141372193 上传时间:2020-08-07 格式:PPT 页数:183 大小:1.43MB
返回 下载 相关 举报
你是个小狗狗-电子科技大学课件_第1页
第1页 / 共183页
你是个小狗狗-电子科技大学课件_第2页
第2页 / 共183页
你是个小狗狗-电子科技大学课件_第3页
第3页 / 共183页
你是个小狗狗-电子科技大学课件_第4页
第4页 / 共183页
你是个小狗狗-电子科技大学课件_第5页
第5页 / 共183页
点击查看更多>>
资源描述

《你是个小狗狗-电子科技大学课件》由会员分享,可在线阅读,更多相关《你是个小狗狗-电子科技大学课件(183页珍藏版)》请在金锄头文库上搜索。

1、微机原理与接口技术实验讲稿(PPT),电子科技大学自动化工程学院 (习友宝 副教授) 2005年6月,实验项目,实验箱简介 基于 EPP接口的LED显示 8255并行接口原理及编程 8253计数器原理及分频实验 8253计数器在测频中的应用 双积分式A/D 转换器7109 的原理及编程 逐次比较式A/D转换器0809的原理及编程 D/A转换器0832的原理实验 DAC0832在程控信号源中的应用 LED点阵显示 基本并行输入/输出口在键盘接口中的应用 8250串行通信 电子称实验,实验箱简介,实验箱的组成原理 实验主板的原理 实验主板是由并行I/O、定时器/计数器、 A/D转换器、D/A转换器

2、及LED显示器等接口 部件构成,采用了总线结构,各功能部件 均通过内部总线进行连接,如下图所示。,实验主板的内总线结构,实验主板的布局,EPP接口原理 EPP信号特性,其引脚定义如下图, EPP端口寄存器 端口地址如表下图所示。表中BASE为并 口基地址,,状态寄存器和控制寄存器各位具体定义如下图所示。, EPP接口初始化 在使用EPP之前应将并口置于正向传输模式(输出),即将控制寄存器的方向位(Bit5)置0。可编写EPP初始化函数epp_init()如下: void epp_init(void) outportb(0 x37a,0 x04); , EPP时序 数据/地址写周期时序,数据/地

3、址读周期时序, EPP端口读写 计算机要同外设实验箱通信,就要通过EPP接口来读写数据,因此,首先应向EPP地址端口(BASE+3)写入欲访问的外设地址,然后从EPP数据端口(BASE+4)读写数据,每次读写1个字节,EPP端口写函数epp_write_data() void epp_write_data(unsigned char paddr,unsigned char data) outportb(0 x37b,paddr); epp_check_clear(); outportb(0 x37c,data); epp_check_clear(); ,EPP端口读函数epp_read_dat

4、a() void epp_read_data(unsigned char paddr,unsigned char *data) outportb(0 x37b, paddr); epp_check_clear(); *data = inportb(0 x37c); epp_check_clear(); ,EPP接口与本实验平台的连接 ,如下,扩展接口 扩展接口的原理及管脚定义如下图所示。,键盘、点阵实验扩展板 ,原理框图如下:,串口实验扩展板 ,原理框图如下:,端口地址 为了方便同学们的在实验中更快,更方便的找到实验板上各个芯片的端口地址,在实验指导书上详细列出了各个端口的地址及其简要的功能描

5、叙。,头文件 在本实验指导书的附录里,列举了部分实验的参考源程序,以便同学们在学习的过程中参考。为了使程序更简化、直观,将常用的地址端口和函数定义成头文件的形式,其头文件有: paddr.h 对实验板内地址进行了宏定义。 eppinit.h EPP接口初始化。 epprw.h EPP端口的读/写。 displed.h LED数字显示函数。,实验一 EPP接口驱动LED显示,实验目的 1熟悉EPP接口的输入/输出及读/写操作。 2掌握七段LED显示驱动原理及接口方法。 3熟悉C语言。,实验任务 1分析实验主板电路,指出输入/输出口地址。 2编写LED显示程序,使实验主板上的四个LED显示任意四位

6、数字和任意一位的小数点,并通过调试。,实验原理 LED显示器原理 7段LED显示器的结构和8位字节数的对应关系如下图:, LED显示实验电路 实验箱主板上带有的四位LED显示器采用 四片CD4511(BCD七段锁存译码器)来驱 动 。其原理图如下:, 4位LED显示的端口操作为:,本实验共用到的端口地址及其功能介绍 00H(2Y0):输出口,用作后两位显示译码驱动器4511 的锁存使能信号。 01H(2Y1):输出口, 用作前两位显示译码驱动器4511 的锁存使能信号。 03H(2Y3):输出口, 用作4位小数点锁存器74LS273的 控制CLK信号。,编程与调试 程序说明 该程序设计功能为:

7、 先从最高位开始依次显示1,2,3,4,显示时只有一位显示,其它位熄灭。 从高到低轮流点亮小数点。 依次显示0000,1111,2222,3333,.一直到9999。, 编程思路, 编程步骤 调用自定义头文件 #include paddr.h #include epprw.h #include displed.h #include eppinit.h EPP端口初始化 epp_init(); LED的数字显示 在LED上显示某个数,只要在对应的字节上写入这个数即可,例如:要在 第二位LED上显示1,第一位LED上显示5,只要先向EPP地址端口写入这两位 的地址0 x00(D_LED) ,再向E

8、PP数据端口写入相应的数据。 epp_write_data(D_LED, 0 x15); 如果想要熄灭某个LED,只要在相应的位上写入10到15的任意一个数。程序 中利用此方法循环点亮LED。,思考和练习题 若不对EPP接口进行初始化,会发生什么现象?为什么? 编写循环点亮四位小数点的程序。 可以同时点亮四位的小数点吗?如果可以,应怎样设置其端口控制字?,实验二 8255并行接口原理及编程,实验目的 1.熟悉8255内部结构和外部引脚定义。 2.熟悉8255并行接口的原理和接口方法。 3.掌握8255的简单应用编程。,实验任务 1编写出8255的初始化程序。 2编写出循环控制发光二极管的显示程

9、序, 并运行通过 3编写出交通灯控制模拟程序。 4理清8255的一些与实验板上其他芯片相连 接的I/O端口电路。 5掌握对8255PC口的位操作。,实验原理 8255工作原理 8255有8条数据引脚D0D7,它们全部是双向、三态,用来与数据总线相连接; 另外,还有6条输入控制引脚,分别是: RESET: 复位输入信号,高电平有效。当RESET有效时,将梭鱼哦内部寄存器, 包括控制寄存器清零,而且把A、B、C三个都设为输入方式,对应的PA7PA0、PB7 PB0、PC7PC0引脚均为高阻态。 CS:芯片选中信号,输入低电平有效。只有当它为低电平时,8255才被CPU选 中。 A0和A1:芯片内部

10、寄存器的选中信号。当有效时,8255被选中,再由A0、A1 的编码决定选中通道A、B、C,还是控制寄存器。 RD:读信号。输入低电平有效。当它为低电平时,由CPU读出8255的数据或者 状态信息。 WR:写信号。输入低电平有效当它为低电平时,由CPU将数据或命令写到8255。 CS、A0、A1、WR、五根引脚的电平与8255操作的关系,详见下表,8255通道选择和基本操作表, 8255控制字 8255方式选择控制字,方式0基本输入/输出 方式1选通输入/输出 方式2双向数据传送, 8255按位置位/复位的控制字 通道C的每一位都可以通过向控制寄存器写入置位/复位控制字, 而使它相应位置位(即输

11、出为1)或复位(即输出为0)。通道C置位、 复位控制字的具体格式下图所示。, 实验电路图,本实验用到的端口地址: 23H(1Y1):输出口,8255的控制端口 20H(1Y1):输出口,8255端口A的地址 21H(1Y1):输入口,8255B端口B的地址 22H(1Y1):输入/输出口,8255端口C的地址,编程与调试 (一)交通灯实验 1程序说明 通过对8255的A口读/写命令,来循环点亮与A口相 连接的红、黄、绿三个发光二级管。在点亮的过程中, 同时在LED上显示时间,从60秒开始倒计时,60秒到6 秒红灯亮,5秒到1秒黄灯亮,然后再从从60秒开始倒 计时,60秒到6秒绿灯亮,5秒到1秒

12、黄灯亮。依次循环。,2编程思路,3编程步骤 调用自定义头文件(同上实验一)。 EPP端口初始化(同上实验一)。 初始化8255。 在本实验中设计为方式0、A口输出、B口输入,故向控制寄存器写 入的数据为0 x82。在交通灯的实验中,我们就用到A口的输出。8255 的片选由1Y1来控制,其控制寄存器的地址为0 x23(CW_8255)。 epp_write_data(CW_8255,0 x82); 向8255的A口写数据。 由指示灯的硬件电路可知,与其相连的端口输出为低电平,指示 灯亮;输出为高电平,指示灯灭。 在本实验中我们要依次点亮红色、黄色、绿色、黄色。 epp_write_data(PA

13、_8255, 0 xfe); /*点亮红色指示灯*/ delay(10000); /*延时*/ epp_write_data(PA_8255, 0 xfd); /*点亮黄色指示灯*/ delay(10000); epp_write_data(PA_8255, 0 xfb); /*点亮绿色指示灯*/ delay(10000); epp_write_data(PA_8255, 0 xfd); /*点亮黄色指示灯*/, 点亮实验板上的LED。 在点亮指示灯的同时,要在LED上显示点亮时间,这个数字显示 程序可直接调用上面介绍过的LED数字显示程序。 epp_write_data(PA_8255, 0

14、 xfe); /*点亮红色指示灯*/ for( i=60;i5;i- ) /* 点亮时间55秒*/ displed(i,0); /*调用LED数字显示函数*/ for( j=0;j100;j+ ) delay(1000); if(kbhit() exit(0); 4源程序清单 参考指导书附录I-2。,(二)A、B并行口实验 1程序说明 该程序为通过操作与8255的B口相连的开关键,来控制与8255的A 口相连的发光二极管的亮和灭。 2编程思路,3编程步骤 调用自定义头文件(同上)。 EPP端口初始化(同上)。 初始化8255(同上)。 读取8255的B端口的数据 与8255的B端口相连接的是8

15、个开关控制器,通过操作这些开关可以使与其相连的B端口呈现高电平“1”或者低电平“0”。 epp_read_data(PB_8255, 向A端口写数据 epp_write_data(PA_8255, data) 4源程序清单 参考实验指导书附录I-3。,思考和练习 1交通灯实验中如何同时点亮多个指示灯。 2. 能否从A口输出C口的获取量。 3在不同的工作方式下,考虑I/O口的外设连接。,实验三 8253计数器原理及分频实验,实验目的 1.熟悉8253定时器/计数器的功能及接口方法。 2.熟悉8253的分频原理。 3.掌握8253的分频应用编程。,实验任务 1分析本实验主板上8253的硬件电路原理

16、。 2熟悉8253的工作原理后,编写出8253的 初始化程序。 3编写出8253分频程序,观察实验显现。,实验原理 8253的引脚 8253有3个独立的16位减计器通道,每一个通道有三条引线: CLK、GATE和OUT。 CLK: 输入时钟, 8253规定,加在CLK引脚的输入时钟周期 不能小于380ns。 GATE:门控信号输入引脚。这是控制计数器工作的一个外部 信号。当GATE引脚为低时,通常都是禁止计数器工作的;只有 GATE 为高时,才允许计数器工作。 OUT:输出引脚。当计数到“0”时,OUT 引脚上必然有输出, 输出信号波形取决于工作方式。,8253内部端口的选择及每个通道的读/写操 作的选择如下表所示, 8253的端口控制子, 8253的工作方式和输出波形,实验电路组成原理框图,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号