虚拟单片机实验系统的开发_毕业设计_河北科技大学(编辑修改稿)内容摘要:

作。 该位置位后,只有一条 MOVX 和 MOVC 指令才能将 ALE 激活。 此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 禁止位无效。 PSEN:程序储存允许( PSEN)输出是外部程序存储器的读选通信号,当 AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉冲。 在此期间,当访问外部数据存储器,将跳过两次 PSEN 信号。 EA/VPP:外部访问允许。 欲使 CPU 仅访问外部程序存储器(地址为 0000H— FFFFH),EA 端必须保持低电平(接地)。 需注意的是:如果加密位 LB1 被编程,复位时内 部会锁存 EA 端状态。 外围电路 外围电路 由 晶振 电路和复位电路组成, 晶振 电路 由 晶振和两个 30uF 的 电路组成, 分别接 单片机的 XTAL1 和 XTAL2。 晶振 的作用是 为了 系统 , 他提供时钟信号给了系统, 通常 便于各部分保持同步,所以一个系统共用一个晶振, 要使 通过电子 调整 频率的保持同步,那就必须 在 有些系统中的基频和射频使用不 同 的晶振。 晶振电路通常与锁相环电路配合使用,以提供系统所需的时钟频率。 复位 电路 由 复位开关 和下拉 电阻 R7 组成,接单片机的 RST 引脚。 复位电路的作用 是使单片机的程序计数器清零,复位电路 就好 比 电脑 ,当死机的时候, 按下 复位键程序从头开始执行, 受到 干扰或者程序跑 飞 的时候, 按下复位键 从头开始 执行。 内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。 内部记数器在单片机中主要有定时器和记数器两个功能。 定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON。 TMOD 用于设置定时器 /计数器的工作方式 03,并确定用于定时还是记数, TCON 主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等,内部记数器用作定时器时,是对机器周期记数。 每个机器周期的长度是 12 个振荡周期,该实验系 统的晶振是。 本 科 毕 业 设 计 第 11 页 共 43 页 图 外围 电路 LED显示模块 ( 1) 电路接法 以 AT89C52 为主芯片设计的一个 8 位发光二极管以流水灯的形式显示的基本电路 ,首先 ,8个发光二极管的输出端是和 74HC573 的端口从 Q0 到 Q7 端相接 ,形成 8个输入端口 ,其次 ,8 位二极管的负极接 9引脚的排阻,排阻的 1脚接 VCC。 接 排阻的作用是防止发光二 极管在电压过大的情况下烧坏,然后 74HC573 接AT89C52的 P1口从 ,这样就形成了 8个闭合回路。 74HC573起到 驱动的作用,一般情形下, 74HC573 的驱动能力大于 74LS573 的驱动能力。 如图 34所示。 图 34 LED显示电路 本 科 毕 业 设 计 第 12 页 共 43 页 ( 2) 8位发光 二极管 的 工作原理 因为二极管左边接的是 Vcc 作为高电平,所以如果要二极管亮的话 P1口必须输入低电平,就一条通路而言,在 输入低电平后,第一个 发光二极管 导通,所以就亮了。 然后在后面加上延迟,也就是亮的时间后再输入 口为低电平,第二个二极管就发亮,同理而言,就实现了流水灯的实验。 1602 液晶 显示模块 1602 字符液晶显示器的 D0到 D7 端口与用 AT89C52 的 P0 口 到 相接, VEE端 接 RV1 的 VL 端 , RV一端 接地 , 另一端接 +5V。 9引脚 的排阻 2到 9端 接单片机的 到。 VDD 接 +5V, RS、 RW、 E 分别接 到。 1602 为 2 行 16 列液晶 显示器, 可显示 2行 16列英文字符,有 8位数据总线 D0D7,RS、 VEE、 RW 三个控制端口(共 14 线),工作电压为 5V。 没背光,和常用的 1602B 功能和引脚一样(除了调背光的二个线脚)。 如图 35所示。 图 35 LCD显示电路 第 1 脚: VSS 为电源地。 第 2 脚: VDD 接 5V 电源正极。 第 3 脚 : V0为液晶显示器对比度调整端,对比度最弱时接正电源,对比度最高时接地电源。 第 4 脚: RS为选择寄存器,高电平 1时寄存器选择数据、低电平 0 时寄存器选择指令。 本 科 毕 业 设 计 第 13 页 共 43 页 第 5 脚: RW为读写信号线,高电平 (1)时进行读操作,低电平 (0)时进行写操作。 第 6 脚: E(或 EN)端为使能 (enable)端。 第 7~ 14 脚: D0~ D7为 8位双向数据端。 第 15~ 16 脚:空脚或背灯电源。 15脚背光正极, 16 脚背光负极。 用 LCD 显示一个比较复杂的字符时,因为一个字符由 6 8或 8 8 点阵组成,既要找到和显示屏幕上某几 个位置对应的显示 RAM 区的 8 字节,还要使每字节的不同位为“ 1”,其它的为“ 0”,为“ 1”的点亮,为“ 0”的不亮。 但由于内带字符发生器的控制器来说,显示字符就比较简单了,先让让控制器工作在文本方式的 时候 ,再根据根据在LCD 上显示每行的列数和行列号找出显示 RAM 对应的地址,设立光标,在此处送上该字符对应的代码就可了。 数码管模块 LED 数码管是由七个发光管组成 8 字形构成的,加上小数点就是 8个。 这些段分别由字母 a,b,c,d,e,f,g,dp 来表示。 当数码管特定的段加上电压后,这些特定的段就会发亮,以形成 我们眼睛看到的 2 个 8 数码管字样了。 如:显示一个“ 2”字,那么应当是 a亮 b亮 g亮 e亮 d亮 f不亮 c不亮 dp不亮。 LED数码管有一般亮和超亮等不同之分,也有 寸、 1寸等不同的尺寸。 小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为 左右,电流不超过 30mA。 发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。 发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管 ,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。 常用 LED 数码管显示的数字和字符是 0、 A、 B、 C、 D、 E、 F。 LED 数码管( LED Segment Displays)是由多个发光二极管封装在一起组成“ 8”字型的器件,引线已在内部连接完成,只需将它们的各个笔划引出,公共电极。 数码管根据 LED 分为共阴和共阳是因为 他们的 接法不同而分类,如果了解 LED 的特性,尤其是对编程是非常重要的,数码管的 类型不同,电路除了有差别外,编程的方法和原理也有所不同, 共阴和共阳极数码管 的内部电路不同 ,到那 它 们的原理是一样的,知识 它 们的 电源极性 不同而已罢了。 led 数码管广泛用于仪器仪表,汽车电子、时钟、显示 屏 、家电本 科 毕 业 设 计 第 14 页 共 43 页 等场合。 选用时要注意产品尺寸颜色,波长,功耗,亮度等。 图 36 6位 数码管 : 电路 采用 共阳 的 接法 , 数码管 电路 用 2个 74HC573, 其中一个 的 Q0Q7分别 与 6位数码管的 A,B,C,D,E,F,G,DP 引脚相 连,另一个的 Q0Q5与 6位 数码管的 16 引脚 相连。 两个 74HC573 的 D0D7 与 单片机的 引脚 相连。 图 37 7段 数码管 管 编码表 (1)数码管共阳极码表 , TABLE:0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e (2) 数码管共阳极码表 , TABLE:0x3f,0x06,0x5b,0x4f,0x66,0x6D,0x7D,0x07 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 数码管引脚定义 每一笔划 都是对应一个字母表示 DP是小数点。 正常显示的 LED 数码管,数码管的各个段码就要用驱动电路来驱动,才能显示出我们要的数位,因此根据 LED 数码管不同的驱动方式,根据 数码管的驱动方式, 可以分为本 科 毕 业 设 计 第 15 页 共 43 页 静态显示和动态显示两类。 A、静态显示: 静态显示也称直流驱动。 静态显示是指由一个单片机的 I/O 埠进行驱动每个数码管的每一个段码,或者使用如 BCD码二 十进位进行驱动。 静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 埠多。 故实际应用时必须增加驱动器进行驱动,增加了硬体电路的复杂性。 B、动态显 示: 数码管动态最为广泛的一种显示方式之一是显示界面, 它在 是单片机中应用非常广泛 , 动态显示是将所有 8个显示笔划 a,b,c,d,e,f,g,dp 的数码管的的同名端连在一起,同时增加位元选通控制电路为每个数码管的公共极 COM,各自独立的 I/O 线控制位元选通由。 LED 数码管的 COM端由 分时轮流控制, 受 控制的数码管轮流显示 ,这就是所谓 的 动态驱动。 在轮流显示时,每位元数码管的点亮时间间隔为 1~ 2ms,由于发光二极体的余辉效应和人的视觉暂留现象,只要 点亮速度快,不管是不是各位数码管是否同时点亮,给人的 感 觉就是 稳定的 显示 ,不会 让人感觉 有 闪烁的 感觉,静态显示 的效果和动态显示的效果 是一样的,能够节省大量的 I/O 埠,而且功耗更低。 7 段 LED 数码管是利用 7个LED(发光二极管)外加一个小数点的 LED 组合而成的显示设备。 键盘模块 独立按键电路 独立按键 电路 有四个 按键组成, 分别接 单片机 AT89C52 的 ,、。 如图 38所示。 本 科 毕 业 设 计 第 16 页 共 43 页 图 38 独立 按键电路 4X4 矩阵 按键电路 电路 由 16 个 按键分四组组成,分别 与 单片机 AT89C52 的 , 、。 4 4 矩阵键盘,以 - 作输入线,以 - 作输出线;数码管的 a,b,c,d,e,f,g 7 个端端口接的是主芯片 AT89C52 的 P2口从 到 端 ,在数码管上显示每个按键的“ 0- F”序号。 如图 39 所示。 1)接口说明 接口 控制 0号 ,1号 ,2号 ,3 号开关; 接口 控制 4号 ,5号 ,6号 ,7 号开关; 接口 控制 8号 ,9号 ,A号 ,B 号开关; 接口 控制开关 C, D, E, F; - 则为输出。 本 科 毕 业 设 计 第 17 页 共 43 页 图 39 矩阵 按键电路 当按下 0 号开关时,数码管显示为‘ 0111111’。 当按下 1 号开关时,数码管显示为‘ 1111001’。 当按下 2 号开关时,数码管显示为‘ 0110111’。 当按下 3 号开关时,数码管显示为‘ 1001111’。 当按下 4 号开关时,数码管显示为‘ 1100110’。 当按下 5 号开关时,数码管显示为‘ 1101101’。 当按下 6 号开关时,数码管显示为‘ 1111101’。 当按下 7 号开关时,数码管显示为‘ 0000111’。 当按下 8 号开关时,数码管显示为‘ 1111111’。 当按下 9 号开关时,数码管显示为‘ 1101111’。 当按下开关 A 时,数码管显示为 ‘ 1110111’。 当按下开关 B 时,数码管显示为 ‘ 1111100’。 当按下开关 C 时,数码管显示为 ‘ 0111001’。 当按下开关 D 时,数码管显示为 ‘ 1011110’。 当按下开关 E 时,数码管显示为 ‘ 1111001’。 当按下开关 F 时,数码管显示为 ‘ 1110001’。 2) 4 4 矩阵键盘工作原理 矩阵键盘又称为行列式键盘,是列线由 4条 I/O 线组成,行线是由 4条 I/O线组成的矩阵键盘。 在列线和行线的重合的 交叉点上 ,设置一个按键,这样就组成了 4X4 共 16本 科 毕 业 设 计 第 18 页 共 43 页 个 按键。 这种键盘 的格局 方 方正正,而且可以大大地利用了 I/O 口。 数字按键 电路 数字 按键 模块引脚 A, B, C, D 分别与单片机 AT89C52 的 , 、。 1,2,3,4 引 脚 分 别 接 单 片 机 AT89C52 的,、 、。 如图 310所示。 图 310 数字 按键电路 A/D 转换模块 图 311 ADC0804 ( 1) 芯片 介绍 ADC0804 是一个 8位、单通道、低价格 A/D 转换器,主要特点是:摸数转换时间大约 100us,方便的 TTL 或 CMOS 标准接口,可以满足差分电压输入;具有参考电压输入端;内含时钟发。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。