基于单片机的数字频率计课设报告内容摘要:

(1)增强型 1T 流水线 / 精简指令集结构 8051 CPU (2)工作电压: ( 5V 单片机) / ( 3V 单片机 (3)工作频率范围: 0 35 MHz,相当于普通 8051 的 0~ 48MHz. 数字频率计 10 (4)用户应用程序空间 12K / 10K / 8K / 6K / 4K / 2K 字节 (5)片上集成 512 字节 RAM (6)通用 I/O 口( 27/23 个),复位后为:准双向口 / 弱上拉(普通 8051 传统 I/O 口) 可设置成四种模式:准双向口 / 弱上拉,推挽 / 强上拉,仅为输入 / 高阻,开漏 每个 I/O 口驱动能力均可达到 20mA,但整个芯片最大不得超过 55mA (7)ISP(在系统可编程) /IAP(在应用可编程),无需专用编程器 可通过串口( )直接下载用户程序,数秒即 可完成一片 (8)EEPROM 功能 (9)看门狗 (10)内部集成 MAX810 专用复位电路(外部晶体 20M 以下时,可省外部复位电路) (11)时钟源:外部高精度晶体 / 时钟,内部 R/C 振荡器。 用户在下载用户程序时,可选择是使用内部 R/C 振荡器还是外部晶体 / 时钟。 常温下内部 R/C 振荡器频率为: ~。 精度要求不高时,可选择使用内部时钟,因为有温漂,请选 4MHz ~ 8MHz (12)有 2 个 16 位定时器 / 计数器 (13)外部中断 2 路 ,下降沿中断或低电平触发中断 ,Power Down 模式可由外部中断低电平触发中断方式唤醒 (14)PWM( 4 路) / P C A(可编程计数器阵列),也可用来再实现 4个定时器或 4个外部中断 (上升沿中断 / 下降沿中断均可支持 ) (15)STC89Cc516AD 具有 ADC 功能。 10 位精度 ADC,共 8 路 (16)通用异步串行口 (UART) (17)SPI 同步通信口,主模式 / 从模式 (18)工作温度范围: 0 75℃ / 40 +85℃ STC89C51 引脚图 STC89C51 有 40 个引脚 ,按引脚功能大致可分为 4 个种类:电源、时钟、控制和 I/O 引脚。 ⒈ 电源 : 数字频率计 11 ⑴ VCC 芯片电源,接 +5V; ⑵ VSS 接地端; ⒉ 时钟 :XTAL XTAL2 晶体振荡电路反相输入端和输出端。 ⒊ 控制线 :控制线共有 4 根, ⑴ ALE/PROG:地址锁存允许 /片内 EPROM 编程脉冲 ① ALE 功能:用来锁存 P0 口送出的低 8 位地址 ② PROG 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,此 引脚输入编程脉冲。 ⑵ PSEN:外 ROM 读选通信号。 ⑶ RST/VPD:复位 /备用电源。 ① RST( Reset)功能:复位信号输入端。 ② VPD 功能:在 Vcc 掉电情况下,接备用电源。 ⑷ EA/Vpp:内外 ROM 选择 /片内 EPROM 编程电源。 ① EA 功能:内外 ROM 选择端。 ② Vpp 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,施加编程电源 Vpp。 ⒋ I/O 线 80C51 共有 4 个 8 位并行 I/O 端口: P0、 P P P3 口,共 32 个引脚。 P3 口还具有第 二功能,用于特殊信号输入输出和控制信号(属控制总线)。 复位电路 手动按钮复位 手动按钮复位需要人为在复位输入端 RST 上加入高电平(图 )。 一般采用的办法是在 RST 端和正电源 Vcc 之间接一个按钮。 当人为按下按钮时,则 Vcc 的 +5V 电平就会直接加到RST端。 手动按钮复位的 电路如所示。 由于人的动作再快也会使按钮保持接通达数十毫秒,所以 完全能够满足复位的时间要求。 数字频率计 12 图 手动复位电路 上电复位 上电复位电路如图 所示,只要在 RST 复位输入引脚上接一电容至 Vcc 端,下接一个电阻到地即可。 对于 CMOS 型单片机,由于在 RST 端内部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至 1181。 F。 上电复位的工作过程是在加电时,复位电路通过电 容加给 RST 端一个短暂的高电平信号,此高电平信号随着 Vcc 对电容的充电过程而逐渐回落,即 RST 端的高电平持续时间取决于电容的充电时间。 为了保证系统能够可靠地复位, RST端的高电平信号必须维持足够长的时间。 上电时, Vcc 的上升时间约为 10ms,而振荡器 的起振时间取决于振荡频率,如晶振频率为 10MHz,起振时间为 1ms;晶振频率为 1MHz,起振时间则为 10ms。 在图 2 的复位电路中,当 Vcc 掉电时,必然会使 RST 端电压迅速下降到 0V以下,但是,由于内部电路的限制作用,这个负电压将不会对器件产生损害。 另外,在复位期间,端口引脚处于随机状态,复位后,系统将端口置为全 “l”态。 如果系统在上电时得不到有效的复位,则程序计数器 PC 将得不到一个合适的初值,因此, CPU可能会从一个未被定义的位置开始执行程序 图 上电复位电路 数字频率计 13 放大整形模块 对于小电压信号,数字频率计需要把微弱信号放大, 故 本课设采用 LM324 放大器,优点是使用广泛,价格 便宜。 参数计算 : 放大器输出电压为 R31+ 11UUR???????? (式 31) 放大倍数 n= R31+1R??????=11 (式 32) 图 放大整形模块电路图 施密特整形 施密特整形器 可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。 输入的信号只要幅度大于 vt+,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。 整形波形如 图 所示,放大整形仿真图如图 所示 图 施密特整形 数字频率计 14 图 放大整形电路仿真图 HD 7279A 显示 模块 HD7279A(见图 )是一片具有串行接口 的 ,同时驱动 8 位共阴式数码管的智能显示驱动芯片,其中 接单片机的 CS , 接单片机的 CLK, 接单片机的 DATA, 接单片机的 KEY . 图 HD7279A HD7279A的控制指令分为二大类 —— 纯指令和带有数据的指令。 由于本次设计只利用了HD7279A构成键盘和数码管显示,用段数码管显示,在设计中用到的 HD7279A 的控制指令有复位( A4H)和读键盘( 15H)指令和送数据指令。 复位指令( A4H):当 HD7279A收到该指令后,将所有的显示清除,所有设置的字符消隐、闪烁等属性也被一起消除。 执行该指令后,芯片所处的状态与系统上电后所处的状态数字频率计 15 一样。 带有数据的指令:本次设计采用了两种译码方式,一种是下载数据且按方式 0译 码,即命令由二个字节组成,前半部分为指令,格式为 (8XH), X为位地址,后一字节低四位为数据。 另一种是下载数据但不译码方式,即命令由二个字节组成,前半部分为指令,格式为 (9XH),X为位地址,后一字节显示数据从高至低位分别为 DP和 AG。 分别对应 7段 LED数码管的各段。 读键盘指令( 15H):该指令从 HD7279A 读出当前的按键代码。 与复位指令不同,此命令的前一个字节 15H 为微控制器传送到 HD7279A 的指令,而后一个字节 d0— d7 则为HD7279A 返回的按键代码,本次采用 4X4 键盘,则各键键盘代 码分别定义为 04H— 07H。 此指令的前半段, HD7279A 的 DATA 引脚处于高阻输入状态,以接受来自微处理器的指令;在指令的后半段, DATA 引脚从输入状态转为输出状态,输出键盘代码的值。 其时序图如图 所示 读键盘指令 (8位,高位在前 ) HD7279输出的键盘代码 (8位,高位在前 ) 图 读键盘指令时序图 其中: T5=50us, T6=8us,T7=8us。 数字频率计 16 第 四 章 软件设计及程序流程图 编程语言的选择及程序的编译调试 1)编程语言的选择 MCS51编程语言常用的有两种,一种是汇编语言,另一种是 C语言。 汇编语言的机器代码生成效率很高,但是可读性并不强,复杂一点的程序就更是难读懂,而 C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过了汇编语言,而且 C语言还可以嵌入汇编来解决高实效性的代码编写问题。 对于开发 周期来说, C语言的开发周期通常小于汇编语言很多。 C 语言是一种结构化语言[1]。 它层次清晰,便于按模块化方式组织程序,易于调试和维护,这种语言的表现能力和处理能力极强,它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。 它还可以直接访问内存的物理地址,进行位( bit)一级的操作。 C语言的模块化开发方式使开发出来。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。