您当前所在位置:首页经济论文基于单片机多功能定时器的设计

基于单片机多功能定时器的设计

发布时间:2023-09-04 03:53:53编辑:小编归类:经济论文

一、基于单片机多功能定时器的设计

你先做个时钟,用数码管显示。一般的单片机实验板都没问题。其他的想好都有那几个模块,一块一块往上加。注意模块分工明确,什么情况跳转到什么模块也要明确。否则很容易乱套

二、毕业论文 数字电子钟的设计

看你用哪种时钟芯片了12C887,还是PCF8563,还是DS1302.就是一个从芯片中读出数据显示出来,和调节时间的时候写入数据这么简单!

三、毕业设计之——电子时钟

3排阻,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。

四、电子定时器设计

主要内容、可行性分析及技术解决方案

本毕业设计课题要求独立完成有关的原理图、PCB图的设计和软件设计工作,及有关的安装调试等工作。用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89S52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。与传统机械表相比,它具有走时精确,显示直观等特点。它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能等特点。

利用单片机AT89S52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟,且AT89S52单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。计时利用MCS-51系列单片机的可编程定时/计数器、中断系统来实现时钟计数。采用中断方式进行溢出次数累计,计满20次为秒计时;从秒到分和从分到时的计时是通过累加和数值比较实现。

AT89S52 是一种低功耗,高性能的CMOS 8位微型计算机。它带有8K Flash 可编程和擦除的只读存储器(EPROM),该器件采用ATMEL的高密度非易失性存储器技术制造,与工业上标准的80C51和80C52的指令系统及引脚兼容,片内Flash 集成在一个芯片上,可用与解决复杂的问题,且成本较低。简易电子钟的功能不复杂,采用其现有的I/O便可完成,所以采用此的设计方案,如下图

三、预期成果

电子钟上电后,8个数码管显示初始状态即最左边的一个数码管显示P.。如果未显示P.,只需按一下复位键即可使其显示出P.。按下相应键后电子钟进入自动计时状态,电子钟显示00时00分00秒并开始运行。电子钟具有三种工作状态:“P.”状态、运行状态、调整状态

(1)、“P.”状态,依靠上电或按复位键进入,在此状态下,按B、C、D键均无效,按A键有效,进入运行状态;

(2)、运行状态,按奇数次A键进入,在此状态下,按B、C、D键均无效,只有按A键有效,按下A键后,退出运行状态,进入调整状态;

(3)、调整状态,按偶数次A键进入,在此状态下,按A、B、C、D键均有效。如按下A键,则退出调整状态,进入运行状态;按下B、C、D键,则分别对时、分、秒加1,调整结束后必须按A键,即可退出调整状态,进入运行状态。

1具有校时功能,使其校正到标准时间

2停电时单片机由电池供电,计时不会丢失

3可以在设定在某一时间开或关

4具有断电显示功能,允许误差在±5秒/天

五、基于FPGA的可编程定时器/计数器8253的设计与实现

基于FPGA的可编程定时器/计数器8253的设计与实现

摘??? 要:本文介绍了可编程定时器/计数器8253的基本功能,以及一种用VHDL语言设计可编程定时器/计数器8253的方法,详述了其原理和设计思想,并利用Altera公司的FPGA器件ACEX 1K予以实现。

关键词:FPGA;IP;VHDL

引言

在工程上及控制系统中,常常要求有一些实时时钟,以实现定时或延时控制,如定时中断,定时检测,定时扫描等,还要求有计数器能对外部事件计数。要实现定时或延时控制,有三种主要方法:软件定时、不可编程的硬件定时、可编程的硬件定时器。其中可编程定时器电路的定时值及其范围可以很容易地由软件来确定和改变,功能较强,使用灵活。Intel的定时器/计数器为可编程定时器PIT,型号为8253,改进型为8254,就是为完成上述功能而设计出来的一种电路。

随着ASIC的发展,在实际工程中通用的8253PIT芯片表现出如下的不足:1. 计数频率不够,8253计数速率最高2MHz,即使是其改进型8254也往往不能满足一些需要较高计数频率的工程。2. 8253PIT没有复位信号,输出的初始状态不受控制。针对8253的这些局限性,在实际工程中往往需要重新设计8253,并把8253的部分功能作为一个独立的IP模块嵌入到设计中,以实现完成某种特定功能的ASIC。

8253的基本功能和内部结构

主要功能

* 每片内部包含有3个独立的16位计数通道;

* 每个计数器都可以按照二进制或二—十进制计数;

* 每个计数器的计数速率可高达2MHz;

* 每个计数通道有6种工作方式,可由程序设置和改变;

* 所有的输入/输出电平信号都与TTL兼容。

内部结构

8253的内部结构如图1所示。

1. 数据总线缓冲器。这是8253与CPU数据总线连接的8位双向三态缓冲器,CPU通过数据总线缓冲器将控制命令字和计数初值写入8253芯片,或者从8253计数器中读取当前计数值。

2. 读/写逻辑。这是8253内部操作的控制部分。首先有片选信号CS的控制部分,当CS为高时,数据总线缓冲器处在三态,系统的数据总线脱开,故不能进行编程,也不能进行读写操作。其次,由这部分选择读写操作的端口(3个计数器及控制字寄存器),并控制数据传送的方向。

3. 控制字寄存器。在8253初始化编程时,由CPU写入控制字以决定通道的工作方式。此寄存器只能写入而不能读出。实际上,8253的3个计数器通道都有各自的控制字寄存器,存放各自的控制字,初始化编程时,这3个控制字分三次共用一个控制端口地址写入各自的通道.它们是利用最高两位的状态不同来区分的。

4. 计数器通道。包括计数器0、计数器1、计数器2。它们的结构完全相同,彼此可以按照不同的方式独立工作。每个通道包括:一个8位的控制寄存器;一个16位的计数初值寄存器;一个计数执行部件,他是一个16位的减法计数器;一个16位的输出锁存器。

每个通道都对输入脉冲CLK按二进制或二—十进制,从预置值开始减1计数。当预置值减到零时,从OUT输出端输出一信号。计数过程中,计数器受到门控信号GATE的控制。

8253的设计

根据8253的内部结构,设计8253主要分为两大部分:总线控制部分和定时/计数部分。

总线控制部分设计

这一部分主要完成数据的读/写,以及控制字的写入。用VHDL设计这部分前,应该了解8253的端口选择(见表1)和控制字(见图2)。

设计的关键在于对8253端口控制字的掌握。写信号到来时,首先要判断是控制字还是计数初始值。如果是初始值,其中先写低字节,再写高字节部分是重点,需要一个信号来判断写入的是新数据还是上一数据没写完的高字节部分.其他计数器的读/写大同小异。只要对8253的端口控制字了解清楚以及对读/写的时序有一定的了解,这一部分的逻辑很容易用VHDL语言描述出来.该进程可对外发出控制信号,表示控制字及数据写入完毕,可以进行计数器的计数操作了。该控制信号可以作为下面介绍的计数部分的触发信号。

计数器部分设计

8253有3个独立的计数器,每个计数器有6种工作模式,完成不同的功能。现以方式4为例介绍VHDL设计,其他的可以在方式4基础上加以修改。

这种工作方式,当写入控制字后输出为高。当写入计数值后,再过一个时钟周期,计数执行部件获得计数初值,并开始减1计数。当计数到0后输出变低电平,此低电平一直维持一个时钟周期,然后又自动变为高电平,并一直维持高电平,计数器停止计数。这种方式计数是一次性的,只有输入新的计数值之后,才能开始新的计数。

下面介绍方式4的设计过程:

CPU写入控制字后,输出outs立即复位,方式4中复位后outs为高电平。CPU写入计数初值的下一个CLK脉冲,计数初值被送到计数执行部件并开始减1计数,又经过N个时钟周期后才输出一个负脉冲。当GATE=1时,允许计数,GATE=0时,禁止计数。这样就实现了方式4基本的软件触发功能。

if clk1'event and clk1='0' then ——时钟脉冲下降沿到来

if gate1='1' then ——门控位为1,允许计数

if ce1> then

ce1

写一篇关于“国际人力资源管理”的论文。 注:不是毕业论文,普通的结课论文,是关于国际人力资源管理的