当前位置:文档之家› 090910064-基于FPGA的多功能万年历

090910064-基于FPGA的多功能万年历

090910064-基于FPGA的多功能万年历
090910064-基于FPGA的多功能万年历

090910064-基于FPGA的多功能万年历

基于FPGA的多功能万年历

1. 绪论

现代科技在不断进步电子技术在不断发展,电子产品设计复杂程度也在不断增加。而且电子产品的更新换代也越来越快,现在只靠传统的纯硬件的设计方法已经不能满足现代人们的要求。EDA就是典型的硬件设计软件化的设计平台。

EDA是一项非常先进的技术,它有许多别的技术没有的优点:像单片机需要先画出硬件图再编写相对应的程序,而EDA是先编好程序再画图的,而且模块化的编程还会在软件中生成相应的封装元件,使最后画原理图变的更加简单;可以编好程序就直接仿真,程序出现错误可以在源文件内部直接改;并且设计好的总系统可以集成在一个体积小、功耗低、可靠性高的芯片上。

本设计采用VHDL语言,VHDL语言是一种全方位的数字系统设计和测试的硬件描述。它支持原理图输入方法以及传统的文件输入方。对于前者适用于小规模的数字集成电路,并进行模拟仿真。而对于大规模的、复杂的系统,如果用纯原理图设计方法的话的,由于种种条件和环境制约,会导致工作效率底而且容易出错的等缺点。在信息技术的今天,集成电路逐渐的趋向于系统化、微尺寸化、低功耗高集成化,因此,高密度可编程逻辑器件和VHDL越来越得到设计者的青睐。它具有极强的描述能力,支持结构、数据流、行为三种描述形式的混合的设计方式,描覆盖面广、抽象能力强。它能支持系统行为级、逻辑门级和寄存器传输级三个不同层次的设计。在本设计中用到的FPGA是特殊的ASIC 芯片,ASIC是一种带有逻辑处理的加速处理器的专用的系统集成电路。它具有功耗低、速度快、集成度、设计制造成本低等优点。

本设计是研究基于FPGA的多功能万年历的设计,主要实现以下功能:能够显示年、月、日、时、分、秒,时间采用24小时制。当时间不准确时还可以手动校准。本系统还能实时的显示当前的温度,扩展了万年历的功能。我采用的是数字温度传感器DS18B20和FPGA组成的温度采集系统,此系统具有硬件电路简单,抗干扰能力强等优点。

1.1 项目研究的背景和意义

现在是一个科技迅速发展的时代。新的电子产品、电子技术日异更新。生在21世纪的我们应该都深深的体会到电子产品给我们带来的变化,而且电子产品更是随处可见。随着科技的发展人们的生活节奏也越来越快,时间对人们来说也是越来越宝贵。在这样快节奏的生活里,人们常常会忘记了时间,一旦遇到重要的会议或重要的事情而忘记了时间,这将会带来很大的损失。而传统的钟表已经不能满足这些人的要求。随着科技的发展和社会的进步,人们对数化日历的要求也越来越高。数字化的日历具有功耗低、多功能化、一劳永逸等优点,因此数字化的日历必将取代传统的日历走入寻常百姓家。

本设计采用的是数字温度传感器DS18B20和FPGA组成的温度采集系统。数字温度传感器DS18B20,可以直接与FPGA相连,构成简单的测量电路,这样就方便实现远距离传输和多点温度测量;而且FPGA相对于单片机来说速度快,修改方便,可以减少开发成本和时间,并增加了系统的灵活性。

EDA是一项非常先进的技术,它有许多别的技术没有的优点:像单片机需要先画出硬件图再编写相对应的程序,而EDA是先编好程序再画图的,而且模块化的编程还会在软件中生成相应的封装元件,使最后画原理图变的更加简单;可以编好程序就直接仿真,程序出现错误可以在源文件内部直接改;并且设计好的总系统可以集成在一个体积小、功耗低、可靠性高的芯片上。

1.1 课题相关技术的发展

现代电子产品基本上都是大量使用大规模的可编程的逻辑器件,这样就降低了产品的功耗、缩小了电子产品的体积、功能也越来越多样化、产品的性能也得到提高。现代计算机技术在电子产品开发中得到了广泛的应用,以前需要一两个月才能开发出来的,现在只要几个星期甚至更短的时间,不仅仅缩短了电子产品的研发周期还提高了自动化程度,降低了生产的成本,增加了产品的竞争力。EDA(电子设计自动化)是最近几年才迅速发展起来的,它是将计算机软件、硬件、微电子技术交叉运用的现代电子技

术。现在电子产品都在趋于数字化,基于EDA的数字系统的设计具有很大的应用市场。

可编程逻辑器件自EDA诞生以来,经历了PLA、PAL、GAL、CPLD、FPGA几个阶段。现在比较流行的可编程逻辑器件就是美国ALTERA公司的FPGA和CPLD。可编程逻辑器件采用全新的结构和先进的技术可以根据用户的要求来构造逻辑功能的数字集成电路,加上MaxplusII(或最新的QUARTUS)开发环境,不仅简化了电路的设计,降低了成本,提高了系统的可靠性,也给数字化设计带了了重大变革。

电子设计的核心就是EDA技术,EDA技术是指以计算机为开发平台,融合应用电子技术,计算机技术而研制成的通用软包。EDA技术经历了70年代的计算机辅助设计CAD、80年代的计算机辅助工程CAE和电子系统设计自动化ESDA三个发展阶段。它的基本特征是:“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,提高了设计的效率,比单片机或C语言要简单易懂。

本设计利用硬件描述语言结合可编程逻辑器件进行的,VHDL语言具有一下优点:(1)VHDL的描述范围宽使它成为高层次的设计的核心,将工作人员的重心提高到了系统功能的实现与调试。(2)VHDL可以用简洁的代码来描述复杂的控制逻辑设计,灵活且方便。(3)VHDL不依赖与特定的器件,方便了工艺的转换。(4)VHDL是一个标准的语言,众多的EDA厂商都支持,因此移植性强。

1.2 课题研究的内容

本设计主要研究基于FPGA的多功能万年历,要求如下:

(1)显示年、月、日、时、分、秒,时间以24小时为一个周期。

(2)具有校准以及报时功能,可以对年、月、日、时、分及秒进行单独校对,使其校正到标准时间。

(3)能够实时的显示当前温度。

1.3 设计方案论证与选择

方案一:运用单片机C语言实现多功能万年历的设计

按照设计要求,系统软件编程应包含三个部分:输入部分,选择导出部分,输出显

示部分。相应的系统硬件部分除了核心模块单片机之外,主要的外围部件还有按键、传感器等。其中单片机系统作为中央处理单元,根据逻辑开关输入的信号转换为显示部分能识别的方式传递给显示部分,显示部分接到传来的指示信号做出相应的显示。此方法运用了当前最常见的C语言,方案较简洁,不过C语言难以掌握,因此本设计不采用此方法。

方案二:运用数字逻辑电路实现多功能万年历的设计

采用74138、74161和其它器件构成实现对万年历控制功能的硬件电路。由设计要求可知,可以把电路分为按键控制电路,译码、显示、驱动等各部分电路。开关控制电路,译码与显示驱动电路,显示电路。这种方案是由纯硬件电路实现的设计,优点是省略了软件部分的设计,但是这种方案因为是纯硬件实现的,成本较高,误差较大,不灵活,因此在本次设计中也不予以采用。

方案三:运用EDA技术实现多功能万年历的设计

根据设计要求,系统设计依靠EDA的MAX+PLUS Ⅱ设计软件、VHDL硬件描述语言及FPGA芯片实现多功能万年历的设计。即在MAX+PLUS Ⅱ软件中用VHDL语言编写各模块程序,通过编译后分别封装成元器件,这些元器件生成顶层文件,再画出硬件电路图,这是EDA硬件软件化的一大特点。最后借助EDA实验箱实现硬件仿真的功能。软硬件相结合,层次分明,结构清晰。且VHDL语言简单易懂,FPGA芯片也是当今的流行趋势。

综合以上三种设计方案,方案三是最为经济合理的,也是我们最能理解的。

2. FPGA简介

2.1 FPGA概述

FPGA(Field Programmable Gate Array)即现场可编程门阵列,它是在PLA、GLA、CPLD等可编程器件的基础上进一步发展的产物。它是专用集成电路中的一种半定制电路,具有门电路数多的优点。

2.2 FPGA基本结构

FPGA器件在结构上,由逻辑功能块排列为阵列,它的结构可以分为三个部分:可编程逻辑块CLB(Configurable Logic Block)可编程I/O模块(Input/Output Block)和

可编程内部连线PI (Programmable Interconnect )。

(1).CLB 是FPGA 的主要组成部分,图2-1是CLB 基本结构框图。

图2-1 CLB 基本结

(2).可编程输入/输出模块IOB ,编程灵活根据系统功能的需要可被配置为输入、输出或双向传输三种功能,实现不同的逻辑功能,满足不同的的逻辑接口的需要。

(3).可编程内部连线PI 。XC4000系列芯片的连线资源由水平和垂直的布线通道构成,较短的线段分布于单个CLB 中,较长的线段跨接与两个CLB 之间,而最长的线段跨越怎个芯片。可编程开关用来把CLB 的输入输出接到其周围的线段上,并且可以将两个不同的线段连接在一起。

3. 多功能万年历总体设计方案

3.1 多功能万年历的构成

日历实际上是一个对标准频率(1HZ )进行计数的计数电路。因此标准的1HZ 时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟。同时为了保证与标准时间的一致,需要在电路上加上一个校准电路。同时图3-1所示为日历的一般构成框

CL

B CL

B

CL

B CL

B CLB

CL B CL

B CL

B CL

B CL

B

CL B CL

B CLB

CL B

CL

B

CL

B

可编程开关矩

互连资源

图。主要包括时间基准电路、计数器电路、控制电路、译码和显示电路。其核心的部分就是控制逻辑电路,不断完善它可以增加系统的功能。

图3-1 日历时钟部分组成框图

本设计还具有显示年、月、日的功能,其显示范围为其总体框架如图3-2。

译码驱译码驱动 译码驱动 译码驱动 译码驱动

译码驱动

时十位 计数

时个位 计数

分十位 计数

分个位 计数

秒十位 计数

秒个位 计数

校时控制电路 校分控制电路

分频器电路

分频器电路

晶体振荡器电路

1HZ

图3-2 总体框架

3.2 多功能万年历工作原理

日历的核心部分就是时钟部分,实际就是对标准的时钟信号进行计数,秒计数器对秒脉冲信号进行计数,记满60秒后就分计数器进位同时又从0开始计数;分计数器对秒的进位信号进行计数,记满60后向时计数器进位同时又从0开始计数;同理时计数器为24进制计数器,记满24向日计数器进位同时计数器清零,重新开始计数。由于日数根据年、月的不同天数也不同,必须由年、月共同决定,日记满后12个月后向年计数器进位。各个计数器的输出分别经过译码器送数码管显示。当计时出现错误时,可以用校准电路对年、月、日、时、分、秒进行校准。在系统中除了需要校准的控制信号外,还需要有时钟的使能信号、清零信号。这些控制信号由一个4×4矩形键盘输入。七段译码器构成译码显示电路,数码管完成显示功能。在此的系统中利用数字温度传感器DS18B20和FPGA组成的温度采集系统经处理后送至数码管显示即可。

4 单元电路

4.1 分频模块电路设计与实现

在此系统中晶体振荡器的信号的稳定性与精准度直接影响到整个日历时钟的准确度。为了保证基准时钟的准确性,所以我决定选用特性非常好的石英晶体,它只让某一特定频率点的信号通过,其他频率段的信号全部会被它衰减,而且它震荡信号的频率与震荡电路中的元器件完全无关。所以这种震荡电路输出的是准确度极高的信号,再利用分频电路的话就会得到标准的秒信号,其组成框图如图4-1。

图4-1 秒信号产生电路框图

本系统使用的晶体振荡器电路给数字钟提供一个频率稳定准确的40MHz的方波信号,其输出至分频电路。分频电路的逻辑框图如图4-2所示。

图4-2 分频电路模块

分频电路

石英晶体

振荡电路

秒信号

图4-3 分频模块电路设计

其内部结构图见图4-3。电路中采用Max+plusII元器件库中的计数器7490进行硬件分频。经分频后输出1HZ的标准秒信号CLK1、4MHZ的按键扫描信号、1KHZ的按键去抖信号。该模块的时序仿真图如图4-4所示,满足设计要求。

图4-4 分频模块仿真图

4.2 温度测量模块电路设计与实现

在本统中利用数字温度传感器DS18B20和FPGA组成的温度采集系统,

这样就不需要模数转换电路和信号放大电路,组成的硬件电路简单,抗干扰能力强。

4.2.1温度传感器的选择

温度传感器根据是否要与被检测介质接触,分为接触式传感器和非接触式传感器两类。接触式传感器包括根据被测物体受温度影响的膨胀度制成的传感器;基于半导体或导体受温度影响电阻值或电荷数发生改变而制成的传感器;基于热电效应的热电偶传感器等。非接触式传感器是根据温度与热辐射特性之间的关系对温度进行测量。由于这里测的是空气的温度,所以选择用接触式传感器。

常用的接触式温度传感器有铂电阻、热电偶和半导体热敏电阻等类型。它们的特点如下:

图4-5 温度传感器的比较

综合上述各个传感器的优缺点,这里选择半导体热电阻类型,在本系统中采用DS18B20温度传感器。由美国DALLAS公司生产DS18B20温度传感器是的可编程数字温度传感器,具有3个引脚,且封装形式多样,体积小,质量轻、线性度好、耐擦耐磨,传输距离远、性能稳定;温度测量的范围大概在-55℃~+125℃,可进行9的~12位A/D转换精度。温度测量的分辨率最高可达到0.0625℃,温度测量结果用带符号的16位数字量进行串行输出。

4.2.2 Ds18b20的主要特征

(1)、适用的电压范围比较宽,大概为 3.0~5.5V,在特殊情况下还可以有数据线供电。

(2)、温度测量的范围为-55℃~+125℃,A/D转换精度为9~12位,精度越高那么测出的温度也就越精确,对应温度分辨率为0.5℃、0.25℃、0.125℃和0.0625℃,即它可以实现高精度的温度测量。

(3)、最突出的特点在于它采用的是独特的单线接口方式,DS18B20在与FPGA连接时仅需要一条口线即可实现双向通讯。

(4)、DS18B20在使用方便简单,它不需要添加任何外围元件,传感元器件和温度转电路全部集成在器件中。

(5)、多个DS18B20能够相互并联,组成一个测温网络,并且这些DS18B20的数据线可以连在一根数据线上。

(6)、测量结果直接输出数字温度信号,以数据串行方式传送给FPGA,同时可传

送校验码,具有极强的抗干扰纠错能力。

(7)、负压特性:当电源极性接反的时候,芯片不会因发热而烧毁,只是不能正常工作。

(8)、每个Ds18b20传感器都有一个唯一的64位序列码这样就可以解决分布式温度测量中处理器与多个传感器相连的问题。

Ds18b20与FPGA的连接电路如图4-6,VDD端口5V电源,GND接地,DG端口接FPGA的一位双向口,另外在数据连接线上还要接上一个4.7K的上拉电阻。

图4-6 Ds18b20与FPGA的连接图

4.2.3 Ds18b20的内部结构

DS18B20内部结构主要由四部分组成,如图4-7:

图4-7 DS18B20内部结构图

(1)、光刻ROM 。其中的64位序列号是出厂前被光刻好的,它可以看作DS18B20的地址序。

(2)、温度传感器。该部分可以完成对温度的测量,以二进制补码的形式进行存储,并通过显示器进行16进制度的转换,从而进行当前稳定的显示。其温度存储的格式如下

表4-1: DS18B20温度值格式表

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0

LS Byte

bit15 bit14 bit13 bit12 bit11 bit10

bit9 bit8

MS Byte

表4-2: DS18B20温度数

据表

23 22

21

20

2-1

2-2

2-3

2-4

23 22

21

20

2-1

2-2

2-3

2-4

(3)、配置寄存器。该字节各位的意义如下:

低五位一直都是"1",TM是测试模式位,用于设置DS18B20在工作模式还是在测

试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨

率,如下表所示:

表4-3:温度分辨率设置表

R1 R0 分辨

温度最大转换时

0 0 9位93.75ms

0 1 10位187.5ms

1 0 11位375ms

1 1 12位750ms

4.2.4 温度测量的软件设计

软件设计是使用VHDL语言与图形输入相结合的方法,clk1提供了系统工作时钟,data提供控制信号,DQ为传感器传入数据的接口,TEMP为输出信号,送到显示器显示。

软件设计程序见附录。

TM R1 R0 1 1 1 1 1

图4-8 DS18B20与FPGA通信图

4.3 校时控制模块电路设计与实现

4.3.1 键盘接口电路原理

校时控制模块在本系统中也就是键盘接口电路部分。下面先介绍键盘接口电路的工作原理,如图4-9。本系统采用的就是这种行列式键盘接口,相对个按键的键盘接口来说节省了I/O接口。其中行线与列线分别与按键的两端相连。在查询工作方式中判断是否有按键按下的方法是:先有响应的I/O接口将列线输出为0电平,在由相应的I/O接口将所有的行线结果读入到控制器中。若有行线输入为0,则有键按下,反之,则没有键按下。

如果发现有按键按下界限来就是通过安检扫描来确定是哪个按键被按下,键盘扫描的过程是依次轮流将列线输出为0电平,然后再检查各行线的状态。若某行线输入为0,组对应的该行线与该列线的按键被按下,即可确定对应的键号。

图4-9 键盘接口电路

4.3.2 键盘接口的VHDL描述

(1).按键消抖

本系统采用的是软件消抖的办法去除按键抖动,基本原理是:首先判断有没有按键按下,如发现有按键按下则延时一段时间,在判断是否有按键按下的信号,如果有则确定有按键按下,就产生一个有按键按下的信号。这样就消除了按键的机械抖动。该模块的逻辑框图如图4-10所示。

图4-10 去抖逻辑框图

该电路的VHDL程序如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity qudou is

port(clk1:in std_logic;

row:in std_logic_vector(3 downto 0);

key_pre:out std_logic);

end qudou;

architecture behav of qudou is

signal sig1,counter:std_logic_vector(3 downto 0);

signal tmp1,sig2:std_logic;

begin

sig1<=row;

tmp1<=sig1(0)and sig1(1)and sig1(2)and sig1(3);

key_pre<=counter(0)and counter(1)and counter(2)and counter(3); process(clk1)

begin

if(clk1'event and clk1='1')then

if(tmp1='0')then

if(sig2='0')then

sig2<='1';

end if;

end if;

if(sig2='1')then

if(counter="1111")then

sig2<='0';

counter<="0000";

else

counter<=counter+'1';

end if;

end if;

end if;

end process;

end behav;

(2).键扫描模块

键扫描模块的框图如图4-11所示。

图4-11 按键扫描模块

CLKY是由分频器模块分出的4MHZ的输入时钟信号,因为键扫描是一个比较快的过程所以这里采用的是频率较高的时钟信号。Key_pre是去抖模块输出的有按键按下的信号作为启动按键扫描的使能信号。ROW[3..0]与键盘的行线相连,COM[3..0]与键盘的列线相连。SCAN_CODE[7..0]输出被按下键的键码。

键盘扫描程序如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity ajsm is

port(clky,key_pre:in std_logic;

row:in std_logic_vector(3 downto 0);

com:out std_logic_vector(3 downto 0);

scan_code:out std_logic_vector(7 downto 0));

end ajsm;

architecture behav of ajsm is

signal sig_com:std_logic_vector(3 downto 0);

signal counter:std_logic_vector(1 downto 0);

signal tmp,sig1,sig2:std_logic;

begin

sig2<=key_pre;

tmp<=row(0) and row(1) and row(2) and row(3);

process(clky)

begin

if(clky'event and clky='1')then --计数进程 if(sig2='1')then

if(counter="11")then

sig1<='0';

counter<="00";

else

sig1<='1';

counter<=counter+'1';

end if;

end if;

end if;

end process;

process(clky) --列线逐位输出低电平variable jt :std_logic;

begin

if(clky'event and clky='1')then

if(sig1='1')then

jt:=sig_com(3);

for i in 3 downto 1 loop

sig_com(i)<=sig_com(i-1);

end loop;

sig_com(0)<=jt;

else

sig_com<="1110";

end if;

end if;

end process;

process(clky)

begin

if(clky'event and clky='1')then

if(sig1='1')then

com<=sig_com;

基于51单片机的万年历的设计

单片机课程实训SCM PRACTICAL TRAINING

目录 第一部分课程设计任务书 (1) 一、课程设计题目 (1) 二、课程设计时间 (1) 三、实训提交方式 (1) 四、设计要求 (1) 第二部分课程设计报告 (2) 一、单片机发展概况 (2) 二、MCS-51单片机系统简介 (2) 三、设计思想 (3) 四、硬件电路设计 (3) 1. 总体设计 (3) 2. 晶振电路 (4) 3. 复位电路 (4) 4. DS1302时钟电路 (5) 5. 温度采集系统电路 (5) 6. 按键调整电路 (6) 7. 闹钟提示电路 (6) 五、软件设计框图 (7) 六、程序源代码 (8) 1. 主程序 (8) 2. 温度控制程序 (11) 3. 日历设置程序 (13) 4. 时钟控制程序 (18) 5. 显示设置程序 (20) 七、结束语 (23) 八、课程设计小组分工 (23) 九、参考文献 (23)

第一部分课程设计任务书 一、课程设计题目 用中小规模集成芯片设计制作万年历。 二、课程设计时间 五天 三、实训提交方式 提交实训设计报告电子版与纸质版 四、设计要求 (1)显示年、月、日、时、分、秒和星期,并有相应的农历显示。(2)可通过键盘自动调整时间。 (3)具有闹钟功能。 (4)能够显示环境温度,误差小于±1℃ (5)计时精度:月误差小于20秒。

第二部分课程设计报告 一、单片机发展概况 单片机诞生于20世纪70年代末,它的发展史大致可分为三个阶段: 第一阶段(1976-1978):初级单片机微处理阶段。该时期的单片机具有 8 位CPU,并行 I/O 端口、8 位时序同步计数器,寻址范围 4KB,但是没有串行口。 第二阶段(1978-1982):高性能单片机微机处理阶段,该时期的单片机具有I/O 串行端口,有多级中断处理系统,15 位时序同步技术器,RAM、ROM 容量加大,寻址范围可达 64KB。 第三阶段(1982-至今)位单片机微处理改良型及 16 位单片机微处理阶段民用电子产品、计算机系统中的部件控制器、智能仪器仪表、工业测控、网络与通信的职能接口、军工领域、办公自动化、集散控制系统、并行多机处理系统和局域网络系统。 二、MCS-51单片机系统简介 MCS-51系列单片机产品都是以Intel公司最早的典型产品8051为核心构成的。MCS-51单片机由CPU 、RAM 、ROM 、I/O接口、定时器/计数器、中断系统、内部总线等部件组成。8051单片机的基本性能有: ◆8位CPU; ◆布尔代数处理器,具有位寻址能力; ◆128B内部RAM,21个专用寄存器; ◆4KB内部掩膜ROM; ◆2个16位可编程二进制加1定时器/计数器; ◆32个(4×8位)双向可独立寻址的I/O口; ◆1个全双工UART(异步串行通信口); ◆5个中断源,两级中断结构; ◆片内振荡器及时钟电路,晶振频率为1.2MHz~12MHz; ◆外部程序/数据存储器寻址空间均为64KB; ◆111条指令,大部分为单字节指令; ◆单一+5V电源供电,双列直插40引脚DIP封装。

090910064-基于FPGA的多功能万年历

基于FPGA的多功能万年历 1. 绪论 现代科技在不断进步电子技术在不断发展,电子产品设计复杂程度也在不断增加。而且电子产品的更新换代也越来越快,现在只靠传统的纯硬件的设计方法已经不能满足现代人们的要求。EDA就是典型的硬件设计软件化的设计平台。 EDA是一项非常先进的技术,它有许多别的技术没有的优点:像单片机需要先画出硬件图再编写相对应的程序,而EDA是先编好程序再画图的,而且模块化的编程还会在软件中生成相应的封装元件,使最后画原理图变的更加简单;可以编好程序就直接仿真,程序出现错误可以在源文件内部直接改;并且设计好的总系统可以集成在一个体积小、功耗低、可靠性高的芯片上。 本设计采用VHDL语言,VHDL语言是一种全方位的数字系统设计和测试的硬件描述。它支持原理图输入方法以及传统的文件输入方。对于前者适用于小规模的数字集成电路,并进行模拟仿真。而对于大规模的、复杂的系统,如果用纯原理图设计方法的话的,由于种种条件和环境制约,会导致工作效率底而且容易出错的等缺点。在信息技术的今天,集成电路逐渐的趋向于系统化、微尺寸化、低功耗高集成化,因此,高密度可编程逻辑器件和VHDL越来越得到设计者的青睐。它具有极强的描述能力,支持结构、数据流、行为三种描述形式的混合的设计方式,描覆盖面广、抽象能力强。它能支持系统行为级、逻辑门级和寄存器传输级三个不同层次的设计。在本设计中用到的FPGA是特殊的ASIC芯片,ASIC是一种带有逻辑处理的加速处理器的专用的系统集成电路。它具有功耗低、速度快、集成度、设计制造成本低等优点。 本设计是研究基于FPGA的多功能万年历的设计,主要实现以下功能:能够显示年、月、日、时、分、秒,时间采用24小时制。当时间不准确时还可以手动校准。本系统还能实时的显示当前的温度,扩展了万年历的功能。我采用的是数字温度传感器DS18B20和FPGA组成的温度采集系统,此系统具有硬件电路简单,抗干扰能力强等优点。

开题报告附页

开题报告附页 随着当今世界经济的快速发展和信息化时代的来临,各种各样的小型智能家电产品陆续出现在我们的生活中。日历是人们不可或缺的日常用品。但一般日历都为纸制用品,使用不便,寿命不长。电子万年历采用智能电子控制和显示技术,改善了纸制日历的缺陷。本设计以AT89S52单片机为核心,构成单片机控制电路,结合DS1302时钟芯片和24C02FLASH存储器,完成时间的自动调整和掉电保护,全部信息用液晶显示。时间、日期调整由三个按键来实现,并可对闹铃开关进行设置。日历能显示阳历和阴历年、月、日以及星期、时、分、秒。在显示阴历月份时,能标明是否闰月。 基本要求: 1能完成数字计数功能 2能完成时间校准功能 3能完成定时报时功能 熟读设备说明书,严格遵守操作规程,爱护设备,保证设备的正常使用,发现问题及时与老师取得联系。 时间安排: 早进入阶段:和指导老师进行课题的沟通和交流,对课题有一个初步的理解 第一周:查询各方面资料,熟悉课题,对课题形成直观的了解。 第二周:整理资料,对设计中可能用到的软件进行熟悉,查找相关专业资料。 第三周:根据要求进行软件C语言编写程序。 第四周:画仿真电路进行调试程序。 第五周:用DXP设计硬件电路图,并选择器件。 第六周:做出硬件实物电路并调试现象。 第七周查资料,写论文。 第八周:整理论文,毕业答辩。 硬件总体方案设计与论证 方案设计: 按照系统设计功能的要求,初步确定设计系统由主控模块、时钟模块、存储模块、键盘接口模块、显示模块和闹铃模块共6个模块组成,电路系统构成框图如图4-1所示。主控芯片使用52系列AT89S52单片机,时钟芯片使用美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片DS1302,存储模块采用美国ATMEL公司生产的低功耗CMOS串行EEPROM存储芯片AT24C02。DS1302作为主要计时芯片,可以做到计时准确。

跑马灯课程设计报告

课程设计报告 课题名称基于AT89S51的跑马灯设计 系别机电系 专业 班级 学号 学生姓名 指导教师 完成日期2010年月 教务处制 基于AT89S51的跑马灯设计 一、设计任务与要求 1.设计任务 选择采用AT89S51、74LS245、ULN2803、LED等器件,使用汇编语言实现各种跑马灯动态显示效果设计。 2.设计要求 实现16个LED的全亮、全灭、交错显示、流水灯显示等。可结合灯的排布以及程序设计实现各种跑马灯动态显示效果。三个输入按键,按键S2时,LED 灯亮点依次流动;按键S3时,依次点亮LED灯;按键S4时,LED灯交错点亮。 3.设计目的 通过本课程设计掌握单片机系统设计思路和基本步骤;掌握LED驱动电路、延时程序和按键处理程序设计。能熟练使用Wave6000软件、编程器或下载线。熟悉Keil、PROTEUS、Protel99se等相关软件的使用。 二、方案设计与论证 在日常生活中,我们总是花样百出的流水灯光,随着电子技术的飞速发展,人们对灯的花样要求也就更多,如全亮、全灭、交错显示、流水灯显示等。因此,跑马灯得到了广泛的应用。 一个由单片机控制的较简单的数字钟由电源电路、控制电路、驱动电路、显示电路4部分组成。

1. 控制电路 控制电路时整个电路的核心,主要由单片机 来完成。AT89S51单片机的管脚图如图(1)所示。 单片机执行指令是在时钟脉冲控制下进行的,因 此,单片机必须外接振荡器构成时钟电路才能正 常工作。另外,还应该在单片机的RES端外接电 阻电容构成复位电路,当单片机运行错误时可以 给一个复位信号使其复位。 单片机的对接口电路的控制是由软件向单片 机的I/O口(即P0~P3口)来实现的。AT89S51 单片机内部由两个定时/计数器,可以用其中一个 定时/计数器来对时间进行计数,而另一个可以对 显示器的显示延时进行定时并通过中断把相应的 数据通过I/O 口送给显示器显示。同时,通过对图1 A T89S51管脚图 外部按键的状态判断来进行时间的调整。 2. 显示电路 作为显示电路,采用16个LED灯来进行显示,实现全亮、全灭、交错显示、流水灯显示等。 3. 驱动电路 由于单片机的I/O口输出电流比较弱,不够驱动一位LED数码管,因此,必须在I/O 口和LED数码管之间接一驱动器和限流电阻来驱动LED数码管。 4. 电源电路 由于外部的干扰如电压、电流的波动可能造成直流电源的不稳定,因此,可在电源两端接上滤波器来降低外部干扰对电源造成的影响。 三、单元电路设计 1.时钟电路 单片机执行指令是在时钟脉冲控制下进行的,因此时钟信号时单片机的基本工作条件。可以通过测量第30脚ALE是否有输出时钟脉冲的六分频信号来判断时钟信号是否正常。 时钟可以由内部和外部两种方式产生,本设计采用内部方式。如图(2)所示,在XTAL1和XTAL2引脚上外接定时元件。定时元件通常采用振荡器和电容组成的并联谐振电路。X1为振荡器,C1、C2为电容。振荡器的振荡频率主要取决于晶体,电容对振荡频率由微调作用。外接晶体振荡器时,电容值可选在30pF左右。 图2 内部时钟电路图3 电源滤波电路2.电源电路 如图(3)所示,为了提高电源的稳定,由两个电容并联连接电源两极构成电源滤波电路。C4电容值比较大,用于滤低频;C5容值比较小,用于滤高频。 3.复位电路 一个时钟周期为振荡周期的2倍,6个时钟周期构成一个机器周期,即12个时钟周期构成一个机器周期。在RES引脚上输入一个超过两个机器周期的高电平信号,单片机就可以复位。如时钟频率为12MHz,则有效的复位信号至少应保持2μs以上。 复位电路可以有两种方式:上电复位电路和外部按键复位电路。图(4)所示为单片机的上电复位电路。在上电瞬间,因为电容两端的电压不能突变,RST引脚上电位与Vcc相同。随着电容器充电过程的进行,RST引脚上的电位逐渐下降。只要适当选择C和R的数值,即可顺利实现复位操作。

基于单片机电子万年历的毕业设计说明

单片机课程设计报告 电子万年历设计 姓名:建强 学号: 专业班级: 08电气(2)班指导老师:吴永 所在学院:科技学院 2011年6月30日

摘要 随着科技的快速发展,时间的流逝,至从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。 具体实现功能: (1)显示年月日时分秒及星期信息 (2)具有可调整日期和时间功能 (3)与即时时间同步

目录 1方案论证 (3) 1.1单片机芯片的选择方案和论证 (3) 1.2显示模块选择方案和论证 (3) 1.3时钟芯片的选择方案和论证 (4) 1.4电路设计最终方案决定 (4) 2系统的硬件设计与实现 (5) 2.1电路设计框图 (5) 2.2系统硬件概述 (5) 2.3主要单元电路的设计 (5) 2.3.1单片机主控制模块的设计 (5) 2.3.2时钟电路模块的设计 (6) 2.3.3电路原理及说明 (7) 2.3.4显示模块的设计 (8) 3系统的软件设计 (9) 3.1程序流程框图 (9) 4测试与结果分析 (11) 4.1硬件测试 (10) 4.2软件测试 (10) 4.3测试结果分析与结论 (10) 4.3.1 测试结果分析 (10) 4.3.2 测试结论 (10) 5prodeus软件仿真........................................ ..........错误!未定义书签。 5.1Proteus ISIS简介 (12) 5.2Proteus运行流程 (13) 5.3Proteus功能仿真 (13) 6课程设计总结与体会.......................................... .....错误!未定义书签。 参考文献...........................................................错误!未定义书签。 附录一:系统电路图.................................................错误!未定义书签。 附录二:系统程序...................................................错误!未定义书签。

微机原理课程设计跑马灯

微机原理课程设计走马灯 运用8086最小模式和8255等芯片设计出一个跑马灯电路,要求至少有5中花式,在ISIS 7 Professional软件中运行。 设计电路图如图所示:

源代码 DATA SEGMENT DATA ENDS CODE SEGMENT ASSUME CS:CODE ,DS:DATA START :MOV AX,DATA MOV DS,AX MOV AL,10010000B OUT 96H,AL A0: IN AL,90H NOT AL MOV BL,AL OUT 92H,AL CMP AL,1 JNZ A3

A2: MOV DL,AL ;第一个开关实现从上至下的流水 OUT 92H,AL IN AL,90H NOT AL CMP AL,BL JNZ A0 MOV CX,50000 A1: LOOP A1 MOV AL,DL ROL AL,1 JMP A2 A3: CMP AL,2 ; 实现第二个开关从下至上的流水 JNZ A6 MOV AL,80H A5: MOV DL,AL OUT 92H,AL MOV CX,50000 A4: LOOP A4 IN AL,90H NOT AL CMP AL,BL JNZ A0

ROR AL,1 JMP A5 A6: CMP AL,4 ;第三个开关实现相隔的两个灯自上而下流水 JNZ A9 MOV AL, 05H A8: MOV DL,AL OUT 92H,AL MOV CX,20000 A7: LOOP A7 IN AL,90H NOT AL CMP AL,BL JNZ A0 MOV AL,DL ROL AL,1 JMP A8 A9: CMP AL,8 ;第四个开关实现相隔的两个灯从下而上流水 JNZ A12 MOV AL,0A0H

基于单片机的万年历实习报告

基于单片机的万年历实习报告

————————————————————————————————作者: ————————————————————————————————日期:

桂林理工大学信息科学与工程学院“电子系统设计创新与实践” 课程设计(实习)报告 题目: 具有温湿度测量功能的万年历设计专业(方向):电子信息工程 班级:电信二班 指导老师:蒋存波

2016年3月27日 目次 1. 绪论----------------------------------------------- 1 2. 总体设计方案--------------------------------------- 2 2.1 技术方案比较----------------------------------- -- 2 2.2总体技术方案------------------------------------- 3 3.硬件系统设计---------------------------------------- 4 3.1 硬件总体原理框图--------------------------------- 4

3.2关键元件介绍-------------------------------------- 4 3.2.1 LCD602显示屏-------------------------------- 4 3.2.3 DS1302时钟芯片------------------------------ 7 3.2.2 SHT10温湿度感应器--------------------------- 9 3.3 硬件设计------------------------------------------ 10 3.3.1 复位电路设计-------------------------------- 10 3.3.2晶振电路设计-------------------------------- 10 3.3.3 时钟芯片电路设计---------------------------- 10 3.3.4 温湿度感应器模块电路设计-------------------- 11 3.3.5按键模块电路设计---------------------------- 11 3.3.6 LCD1602显示模块电路设计--------------------- 11 3.3.7 电量检测报警电路设计------------------------- 12 3.3.8 蜂鸣器报警电路设计--------------------------12 3.3.6 总体电路原理图------------------------------- 12 4. 软件系统设计------------------------------------------13 4.1 软件功能设计-------------------------------------- 13 4.2 程序设计总体方案----------------------------------13 4.2.1 总体设计思路--------------------------------- 13

万年历_开题报告

xxxxx 毕业论文(设计) 开题报告 题目基于年历设计 学院电气工程学院 年级 xxx级 专业电子信息工程 姓名宋飞 学号 2011588693 指导教师欧阳飞 教务处制表 2012年12月10日

一、选题依据 课题来源、选题依据和背景情况;课题研究目的、学术价值或实际应用价值时间对人们来说总是那么宝贵,工作的忙碌和繁杂容易使人忘记当前的时间。然而遇到重大事情的时候,一旦忘记时间,就会给自己和他人带来很大的麻烦。平时我们要求上班准时,约会或召开会议必然要提及时间:火车要准点到达,航班要准点起飞;工业生产中,很多环节都需要用时间来确定工序替换时刻。所以说能随时准确的知道时间并利用时间,是我们生活和工作中必不可少的。 想知道时间,手表当然是一个很好的选择,但是,在忙碌当中,我们还需要个“助理”及时的给我们提醒时间。所以,计时器最好能够拥有个定时系统,随时提醒容易忘记时间的人。最早能够定时、报时的时钟属于机械式钟农,但这种时钟受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。 电子万年历是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭、车站、码头办公室等公共场所,成为人们日常生活中不可少的必须品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时报警、按时自动打铃、定时广播、自动启闭灯箱、通断动力设备、甚至各种定时电气的自动启动等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。单片机开发技术已成为电子信息、电气、通信、自动化、机电一体化等专业技术人员必须掌握的技术。在国内:单片机的学习呈上升趋势,但很多人学习是无头绪,不知道从何入手,行业发展迅速,国内生产技术不断提升。国内企业为了获得更大的投资收益,在生产规模和产品质量上不断提升,开发单片机呈必然趋势。我国生产的电子万年历有很多,总体上来说是研究多功能电子万年历为主,使万年历除了具有原来的时间、日期等基本功能外,还具有闹钟,报警等功能,商家生产的电子万年历更从质量、价格、实用上考虑不断改变电子万年历的设计,使其更有市场。在科技发达的今天,智能化必将是以后的发展趋势,所以开发活和学习单片机是社会发展的必然需求。

单片机课程设计报告-跑马灯

单片机课程设计报告-跑马灯

武汉纺织大学 单 片 机 课 程 设 计 报 告 设计课题:跑马灯 指导教师:刘丰

姓名:颜珊曹坤 班级:应电092 一、设计任务 利用单片机制作让LED灯依次闪烁时间间隔为0.5S二次后时间加快为 0.2S并循环闪烁的跑马灯. 二、设计要求 (1)采用单片机STC89C52来控制,下载器由芯片MAX232来对程序的下载。 (2)LED灯的闪烁间隔时间为0.5S-0.25S-1S,每循环两圈更改闪烁速度。 (3)供电采用USB方口的方式。 三、方案设计与论证 跑马灯电路的组成方框图为: 四,主要元件介绍 (1)单片机STC89C52引脚介绍 stc89c52的内核和AT51系列单片机一样,故引脚也相同: 1~8:I/OP1口(P1.0~P1.7); 9:复位脚(RST/Vpd);

10~17:I/OP3口(P3.0=RXD,P3.1=TXD,P3.2=-INT0,P3.3=-INT1,P3.4=T0,P3.5=T1,P3.6=-WR,P3.7=-RD)主要是此引脚; 18、19:晶振(18=XTAL2,19=XTAL1);20:地(Vss); 21~28:I/OP2口(P2.0~P2.7); 29:-PSEN; 30:ALE/-PROG; 31:-EA/Vpp 32~39:I/OP0口(P0.7~P0.0); 40:+5V电源。 注:引脚功能前加“-”,说明其是低电平有效。如P3.2=-INT0。 (2)MAX232介绍 MAX232芯片是美信公司专门为电脑的RS-2 32标准串口设计的接口电路,使用+5v单电源供电。

基于AT89C51单片机的电子万年历的设计_课程设计报告

课程设计报告 设计名称:电子万年历设计 专业班级:自动化10101班 完成时间:2013年6月9日 报告成绩:

摘要 本文介绍了基于AT89C51单片机的多功能电子万年历的硬件结构和软硬件设计方法。系统以AT89C51单片机为控制器,以串行时钟日历芯片DS1302记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。万年历采用直观的数字显示,可以在LED上同时显示年、月、日、周日、时、分、秒,还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,具有广阔的市场前景。 关键字AT89C51;电子万年历; DS1302

1 绪论 1.1 课题研究的背景 随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89C51单片机作为核心,功耗小,能在3V 的低压工作,电压可选用3~5V电压供电。 此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 1.2课题的研究目的与意义 二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。所以说电子万年历的开发是国家之所需,社会之所需,人民之所需。 由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。 1.3课题解决的主要内容 本课题所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容包括以下几个方面: (1)选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。 (2)根据选用的电子万年历芯片设计外围电路和单片机的接口电路。 (3)在硬件设计时,结构要尽量简单实用、易于实现,使系统电路尽量简单。 (4)根据设计的硬件电路,编写控制AT89C51芯片的单片机程序。 (5)通过编程、编译、调试,把程序下载到单片机上运行,并实现本设计的功能。 (6)在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。 (7)软件设计时必须要有完善的思路,要做到程序简单,调试方便。

基于单片机的万年历时钟设计【文献综述】

毕业设计开题报告 测控技术与仪器 基于单片机的万年历时钟设计 1前言部分 在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响。为了更好的利用我们自己的时间,需要一款灵活、稳定而又功能强大的自动定时控制系统,以规范本单位的作息时间或定时控制一些设备。目前,市面上出现的一些时控设备或功能单一,或使用烦琐,或价格昂贵,总有一些不尽如人意的地方[1]。我们必须对时间有一个度量,因此产生了钟表。钟表的发展是非常迅速的,17 世纪中叶, 由荷兰人C. Huygens来发明的第一个钟摆与以前任何计时装置相比, 摆钟的精确度提高了上百倍,而他随后发明的螺旋平衡弹簧,又进一步提高精度、减小体积, 导致了怀表的出现。然而再好的摆钟,其精度也只能达到每年误差不超过一秒[2]。1939年出现了利用石英晶体振动计时的石英钟, 每天误差只有千分之二秒, 到二次大战后精度提高到30 年才差一秒。很快, 测年的技术又推进到原子层面, 1948 年出现第一台原子钟, 1955年又发明了铯原子钟, 利用Cs133原子的共振频率计时,现在精度已经高达每天只差十亿分之一秒[2]。 从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能——计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一,无法更大程度上的满足人们的需求。发展到现在人们广泛使用的万年历。万年历在家庭居室、学校、车站和广场使用越来越广泛,给人们的生活、学习、工作带来极大的方便[3]。电子万年历具有信息量大、直观清晰、经济实用等优点,正成为家庭、商场、公共场所等新的消费热点,具有重要的开发价值[4]。随着科技的不断发展,家用电子产品不但种类日益丰富,而且变得更加经济实用,,功能也越来越齐全,除了公历年月、日、时分秒、星期显示及闹铃外,又增加了农历、温度、24节气及l2生肖等显示。甚至还有语音报时等独特功能。再加上造型新颖别致,附带立体动感画面,

电子台历开题报告

毕业设计开题报告 学生姓名:班级:测控一班学号: 题目:基于单片机的电子台历设计 1课题研究的背景 随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V 的低压工作,电压可选用3~5V电压供电。 此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 2课题的研究目的与意义 二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。所以说电子万年历的开发是国家之所需,社会之所需,人民之所需。 由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。 3课题解决的主要内容 本课题所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容包括以下几个方面: (1)选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。 (2)根据选用的电子万年历芯片设计外围电路和单片机的接口电路。 (3)在硬件设计时,结构要尽量简单实用、易于实现,使系统电路尽量简单。 (4)根据硬件电路图,在开发板上完成器件的焊接。 (5)根据设计的硬件电路,编写控制AT89S52芯片的单片机程序。 (6)通过编程、编译、调试,把程序下载到单片机上运行,并实现本设计的功能。 (7)在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。

PROTEUS 跑马灯 单片机课程设计

微型计算机技术课程设计报告 专业:通信工程 班级:xxxxxxxxx 姓名:XXX 学号:xxxxxxx 指导教师:XX 时间:xxx 通信与电子信息工程学院

8255扩展 一、课设目的、内容; 1.目的:为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的课程设计。通过设计使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。 (1).通过本设计,使学生综合运用《微型计算机技术》、《C语言程序设计》以及《数字电路》、《模拟电路》等课程的内容,为以后从事电子产品设计、软件编程、系统控制等工作奠定一定的基础。 (2).学会使用KEIL C和PROTEUS等软件,用C语言或汇编语言编写一个较完整的实用程序,并仿真运行,保证设计的正确性。 (3).了解单片机接口应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等。 2.内容:8155或8255扩展用8155或8255扩展IO实现16个LED的跑马灯,提供多种跑马灯运行模式 二、问题分析、方案的提出、设计思路及原因; 本次课程设计的题目是8255的扩展,利用AT89C52驱动扩展8255数据输出口来实现16个LED跑马灯的显示。但是在80C52系列单片机中,有四个8位I/O 端口,但真正能够提供给用户使用的只有P1口,因为P0口和P2口通常需要用来传送外部存储器的地址和数据,P3口也需要使用它的第二功能。因此,单片机提供给用户的I/O接口线并不多,对于复杂的一些的应用系统都应该进行I/O 口的扩展。8255具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB 口和PC口.而8255又有多种运行模式,而这些操作模式完全由控制寄存器的控制字决定。利用8255的控制字模式来定义8255输出口的个数,驱动所需的LED 灯的个数,实现课题目的。 在仿真实验中,两个按键分别控制跑马灯的顺序显示、跳跃显示两种运行方式,顺序显示分别是一个、两个、四个、八个LED灯依次亮。跳跃显示分别是一个、两个、四个LED灯跳跃显示

单片机课程设计--基于51单片机的万年历

单片机课程设计报告 万年历的设计

基于51单片机的万年历 摘要: 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分、秒进行计时,使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,LCD显示电路,以及调时按键电路等组成。在单片机的选择上本人使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用了1602液晶显示,并且使用蜂鸣器实现了整点报警的功能,温度测试的功能实现使用了DS18B20,并实现了温度过高或过低时的温度报警。 软件方面主要包括日历程序、时间调整程序,显示程序等。程序采用C语言编写。所有程序编写完成后,在KeilC51软件中进行调试,

确定没有问题后,在Proteus软件中嵌入单片机内进行仿真,并最终实现基本要求。 综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 一、设计要求 基本要求: 1,8 个数码管上显示,显示时间的格式为(假如当前时间是19:32:20)“19-32-20”; 2,具有日历功能; ③时间可以通过按键调整。 发挥部分: ④具有闹钟功能(可以设定多个)。 二:总体设计 电路设计框图

电子万年历的毕业设计

毕业设计(论文) 论文题目:基于AT89S51的电子万年历 所属系部: 专业: 学生姓名:班级 指导老师: 二零一一年五月二十七日

电子万年历 摘要:本设计以数字集成电路技术为基础,单片机技术为核心。软件设计采用模块化结构,汇编语言编程。系统通过LED显示数据,可以显示公历日期(年、月、日、时、分、秒)。在内容安排上首先描述系统硬件工作原理,着重介绍了各硬件接口技术和各个接口模块的功能;其次,详细的阐述了程序的各个模块和实现过程。 关键词:单片机;万年历 Electronic calendar LIU TAO Xian aviation technology college Abstract: The design is based on digital integrate circuit, microcontroller technology is the core of the system. The software design uses module structure and adapts microcontroller assemble language. The system can display calendar date, including year, month, week, hour, minute, second and week. The work principle of the system is discussed in this paper, hardware interface and module function are reported primarily in the system. 目录 前言……………………………………………………………………………………...II

嵌入式系统课程设计 跑马灯报告

嵌入式系统 课程设计报告 学部 专业 学号 姓名 指导教师 日期 一、实验内容

设计msp430单片机程序并焊接电路板,利用msp430单片机芯片实现对跑马灯、按键识别及数码显示这三大模块的控制 二、实验目的 1.熟悉电路原理图,了解单片机芯片与各大模块间的控制关系 2.增强看图和动手设计能力,为将来从事这个专业及相关知识奠定基础 3.在焊接的同时,理解源程序是如何实现相应功能的 三、实验设备及器材清单 实验设备:电烙铁、烙铁架、尖嘴钳、斜口钳、镊子、万用表等 器材清单: 模块元器件名称单位(个/块) 电源 78051 AMS11171 电容10V100u3 二极管IN40071 104电容2 晶振32768Hz1 33电容2 8MHz2跑马灯发光二极管8 100欧电阻8 74LS5731 104电容2 键盘按键8 10K电阻9 104电容3 103电容1 HD74HC212数码显示7段数码显示(共阴极)1 24脚插座1 74HC1641 14脚插座1复位电路二极管IN40071 电容10V100u1 按键1 10K电阻1 14脚下载口1电路板1 MSP430F149芯片及插座1 四、硬件电路框图

五、程序清单 跑马灯程序#include #define uchar unsigned char #define uint unsigned int int main( void ) { void delay( ); WDTCTL = WDTPW + WDTHOLD; unsigned char i=0,j=0; P2DIR=0XFF; P2SEL=0X00; while(1) { for(i=0;i<10;i++) { P2OUT=0XFF; delay(50); P2OUT=0X00; delay(50); } for(j=0;j<10;j++) { P2OUT=0X55;

基于51单片机的万年历设计

目录 第一章绪论 (3) 第二章设计要求及设计框图 (4) 2.1 设计要求 (4) 2.2 设计框图 (4) 第三章知识要点 (4) 3.1 LMO16L液晶模块 (4) 3.1.1 LM016L引脚说明 (5) 3.1.2 控制指令 (5) 3.1.3 基于Proteus ISIS 7的液晶模块仿真 (6) 3.2 单片机A T89C51 (8) 3.2.1 主要特性 (8) 3.2.2 管脚说明 (9) 3.2.3 振荡器特性 (11) 3.2.4 芯片擦除 (11) 3.3 时钟芯片DS1302 (11) 3.3.1 DS1302的控制字节 (12) 3.3.2 数据输入输出(I/O) (12) 3.3.3 DS1302的寄存器 (12) 3.4 DS18B20数字温度传感器 (13) 3.4.1技术性能描述 (13) 3.4.2 DS18B20主要的数据部件 (14) 3.4.3 DS18B20温度处理过程 (15) 3.4.4 DS18B20的主要特性 (17) 3.4.5 DS18B20的外形和内部结构 (17) 3.4.6 DS18B20工作原理 (18) 3.4.7 DS18B20的应用电路 (21) 3.4.8 DS18B20使用中注意事项 (23) 第四章硬件设计 (24) 4.1 Proteus软件 (24) 4.1.1 Proteus软件介绍 (24) 4.1.2 功能特点 (24) 4.1.3 革命性的特点 (24) 4.1.4 基本操作 (25) 4.1.5 选择要使用的元件 (25) 4.1.6 功能模块 (26) 4.2 基于89C51的万年历与温度显示器的硬件设计 (28) 4.2.1 设计框图 (29) 4.2.2 电路原理图 (29) 4.3 元件清单 (30) 第五章软件设计 (30)

万年历毕业设计

常州轻工职业技术学院 电子制作论文(设计) 题目:基于51单片机的电子万年历的制作专业:电子信息工程 作者: 指导教师(职称): (副教授)二0一0年五月二十六日

基于51单片机的电子万年历制作 电子信息工程专业 【关键词】单片机万年历温度传感器DS18B20 时钟芯片DS1302 【绪论】万年历,就是记录一定时间范围内(比如100年或更多)的具体阳历与阴历的日期的年历,方便有需要的人查询使用。万年只是一种象征,表示时间跨度大。这次设计通过对万年历系统的设计,详细介绍了51 单片机应用中的按键处理、液晶、定时中断、温度传感器DS18B20原理。该系统能够显示年、月、日、小时、分钟、秒、星期、农历、温度,通过按键可以修改时间和设定闹钟等功能。此系统结构简单、功能齐全,具有一定的推广价值。 1.系统说明 1.1方案选择 ●方案一:采用日历时钟芯片DS1302来产生时间,数据经单片机处理后送到液晶显示。DS1302 内部有晶体振荡器、振荡电路、充电电路和可充电锂电池。此外,片内有114B的RAM。 ●方案二:采用纯单片机制作。 方案一中因为有了日历时钟芯片,这就使得单片机的软件部分简单很多。但是考虑到制作简单,因此采用方案一。 1.2 系统方框图: 如图1-1所示: 1.3 说明 系统由51系列单片机stc89c52、按键、温度采集、液晶显示、闹钟报时,电源等部分构成。单片机部分包括时钟电路、复位电路;按键部分能够实现对时间的调整和定时时间的设定。四个按键的功能分

别为:退出、闹钟、设置、修改。温度采集部分包括温度传感器。传感器采样进来的信号经自身A/D转换后送给单片机,经软件处理后送至液晶1602管显示。 2.电路模块说明 2.1 单片机电路 2.1.1 时钟电路 时钟系统是单片机的心脏,在本次设计中,包括中央处理器在内的所有单片机都是时钟系统所提供的节拍工作的。 时钟电路由外接谐振器的时钟振荡器、时钟发生器及关断控制信号等组成。时钟振荡器是单片机的时钟源,时钟发生器对振荡器的输出信号进行二分频。 CPU的时钟振荡信号有两个来源:一是采用内部振荡器,此时需要在XTAL1和XTAL2脚连接一只频率范围为0—33MHZ的晶体振荡或陶瓷振荡器及两只30pf电容。二是采用外部振荡,此时应将外部振荡器的输出信号接至XTAL1脚,将XTAL2脚浮空。 利用单片机内部的定时功能来实现时钟的走时,通过编程实现每50毫秒产生一次中断,中断20 次后,秒单元加1,秒单元加到60时,跳回到零再继续加,同时分单元加1。以次类推,从而实现秒、分、小时、年的走时。 本次设计中采用的是内部振荡器,频率为12MHZ的晶体振荡器及30pf的瓷片电容。如图2-1所示。 图2-1时钟电路 2.1.2复位电路 复位是指在规定的条件下,单片机自动将CPU以及与程序运行相关的主要功能部件、I/O口等设置为确定初始状态的过程。如果电路参数不符合规定的条件或干扰导致单片机不能正确的复位,系统将无法进行正常的工作,因此,复位电路除了要符合厂家规定的参数外,还要滤除可能的干扰。 AT89S52单片机内部有一个由施密特触发器等组成的复位电路。复位信号是从其9脚,即RST脚输入的。AT89S52单片机规定,当其处于正常工作状态,且振荡器工作稳定后,在RST端有从高电平到低电平,且高电平时间大于两个机器周期的复位信号时,CPU将完成对系统的复位。有两点需要注意:一、复位信号是高电平有效,二、高电平的保持时间必须大于两个机器周期,可见高电平保持时间与振荡频率有关。本次设计中采用上电复位电路,上电复位是指在系统上电时,RST端自动产生复位所需要的信号将单片机复位,本次设计中的上电复位电路如图所示。上电时,RST端高电平的维持时间取决于R(1k)和C(22uF)的值。要使单片机可靠的复位,设计中使其维持的时间足够长。如图2-2所示。

相关主题
文本预览
相关文档 最新文档