TA的每日心情 | 怒 2019-11-20 15:01 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、设计目的和要求' r- F$ }1 A3 i' u3 a
单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞+ V; b. ~; A9 D7 e- k
机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和( c! G5 b' Y, \& u
数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等, 这些都离不开单片机。
1 o: k5 h% d2 w; E9 @单片机是集 CPU ,RAM ,ROM定 , 时,计数和多种接口于一体的微控制器。 它体积小,成本低,) ]- l' H1 f' Y
功能强,广泛应用于智能产业和工业自动化上。而51 系列单片机是各单片机中最为典型
+ d3 Q5 B4 i/ L: f和最有代表性的一种。这次课程设计通过对它的学习,应用,从而达到学习、设计、开发! N! @* l2 d7 z' h. A8 C- _
软、硬的能力。通过对一个基于单片机的能实现电子日历功能电子时钟的设计,从而达
$ M+ ~ c$ R$ a4 `, z到学习、了解单片机相关指令在各方面的应用。系统由主控制器AT89C51、时钟电路DS1302、: o$ F5 G) {5 N F5 V
显示电路、和复位电路等部分构成,能实现时钟日历显示的功能,能进行时、分、秒的显
0 p+ u6 m! j# b8 Y$ a, Z示。
# p- U3 H- F' L0 x* i系统设计要求:电子日历能显示,能调整。基于51 系列的单片机进行的电子万年历设6 C( l2 c9 j) B: K" _. F3 J
计可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机 K" k3 |+ e S' v: _" A1 [2 l
的理论基础和外围扩展知识进行了比较全面准备。具体实现功能:显示年月日时分秒及星
+ J' L! b( p/ N) q; q期信息,具有可调整日期和时间功能,与即时时间同步。, I [1 a; U+ r* }
主要使用到的工具和器件:
3 a! ?3 z8 N. m0 q/ QKeilc51+ E8 I$ }0 R9 M2 _7 o$ S0 k
Protues
6 k4 d8 f" N C/ e& ^4 `4 i* ~DS1302
6 j( D) _- c, }# e+ t! B. L, eAT89S52
- q: Q" f' i2 U" nLCD12864 X$ @" S* |3 T6 t/ x4 V+ D
基于单片机的电子日历设计! L `: @* H# Z2 u1 X4 ^
20 ^4 [# H5 }1 t7 b
二、方案设计
( ]9 N1 m) }% p6 m8 }每一系统都有几个核心的模块。它对整个系统的性能有非常大的影响。比如
/ d2 P2 Q3 f( H系统的主控。
$ u; E2 | Y r9 `) h; b8 ~ U2.1 主控芯片选择方案论证; t/ y# E Q$ q
方案一:选择51 系列的单片机; AT89S52 是一种低功耗、高性能CMOS8位微控制器,
' S. M; l' T8 W `- ]" _* w6 u2 L具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,- K7 N3 s, |/ F+ N- e+ @; T
与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适5 n" e& P2 R" P! U# |
于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S524 u$ l, g1 l# W) f* e" q5 e
为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:
. R o2 P8 }+ H e8 L; v% s8k 字节Flash,256 字节RAM, 32 位I/O 口线,看门狗定时器, 2 个数据指针,三个16 位
8 C. D( z. n, M9 Y+ [# I定时器/ 计数器,一个6 向量2 级中断结构,全双工串行口, 片内晶振及时钟电路。另外,) w+ R! ^) E* N6 t- y1 }
AT89S52 可降至0Hz 静态逻辑操作, 支持2 种软件可选择节电模式。空闲模式下, CPU 停
* N# A8 }/ I$ u6 {止工作,允许RAM、定时器/ 计数器、串口、中断继续工作。掉电保护方式下, RAM内容
- ^' k4 |- ^3 M5 {/ ?被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
1 S5 O! f ^$ N. \- G$ v) ^方案二:选择msp430 系列单片机; MSP430 系列单片机是一个16 位的单片机,采用& Y: V4 B, b5 q3 M
了精简指令集( RISC)结构,具有丰富的寻址方式( 7 种源操作数寻址、4 种目的操作数) [+ L2 J& S6 l; y$ L
寻址)、简洁的27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器
+ v6 F, R% b; `/ V都可参加多种运算; 还有高效的查表处理指令。这些特点保证了可编制出高效率的源程序。7 x0 V; E; W1 n
MSP430 系列单片机的各系列都集成了较丰富的片内外设。它们分别是看门狗( WDT)、模% W% i! {& i1 C! G# W
拟比较器A、定时器A0(Timer_A0)、定时器A1(Timer_A1)、定时器B0(Timer_B0)、UART、
% t* I4 ?. z7 ~; O3 \. x) |SPI、I2C、硬件乘法器、液晶驱动器、10 位/12 位ADC、16 位Σ-Δ ADC、DMA、I/O 端口、
0 s: R$ ~: i/ F& _基本定时器( Basic Timer)、实时时钟( RTC)和USB控制器等若干外围模块的不同组合。
1 d |! p' X3 B* |7 X# ]8 h6 S其中,看门狗可以使程序失控时迅速复位; 模拟比较器进行模拟电压的比较, 配合定时器,
! z$ \/ v: N8 [% Q$ N! q可设计出A/D 转换器; 16 位定时器( Timer_A 和Timer_B)具有捕获/ 比较功能,大量的7 u0 R4 }' f% w7 Z2 _. n2 l
捕获/比较寄存器,可用于事件计数、时序发生、PWM 等;有的器件更具有可实现异步、
% J# w0 I c' h* W$ F' x同步及多址访问串行通信接口可方便的实现多机通信等应用;具有较多的I/O 端口, P0、) e( Z- Y% M7 A: G$ B9 C
P1、P2 端口能够接收外部上升沿或下降沿的中断输入; 10/12 位硬件A/D 转换器有较高
6 Q2 R& C& K) M& s的转换速率,最高可达200kbps ,能够满足大多数数据采集应用; 能直接驱动液晶多达160
# N/ x7 Y! b* u' ]0 \$ L段;实现两路的12 位D/A 转换;硬件I2C串行总线接口实现存储器串行扩展;以及为了! o( P8 k/ x1 [# Z% t, N
基于单片机的电子日历设计
+ |$ e0 V0 Q2 N T( [# `0 i3' n2 H8 [4 o" d$ L: s0 N
增加数据传输速度, 而采用的DMA 模块。MSP430 系列单片机的这些片内外设为系统的单
1 d( i4 q3 B' Q; e* U" n片解决方案提供了极大的方便。
& u6 h& o& a. j. {. b方案对比:% x# H) [: Z7 i8 \& C
运算周期:时钟显示最小单位为秒, 51 和msp430 的运算周期都在1 秒之内,这
7 d i' Q! A6 f4 |( B7 A一点都满足要求。9 G# \% v) R( y" m6 D
IO 口是否满足系统设计要求: 51 有32 个IO 口, msp430 的IO 口则更多。这一点
4 d: T2 t9 p# K. @$ z都满足要求。
* A8 ?9 \- M5 e; @是否需要外加时钟芯片: 采用定时器, 误差较大。Msp430 内部就有时钟RTC单元,% f }) Z* }5 J: u3 i# v3 b5 D; V5 N
51 单片机需要外加。
' \( \8 i' ^8 r, w选择51 单片机作为系统的主控;
+ k" r4 y( B7 h2.2 显示模块方案选择# M( E) k) ^' t, g
方案一:用数码管显示:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字
/ K0 K, r. u7 j" Q1 P! ~5 ^& I合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,并且人站在远处夜能观
% W( W' I9 T% t看到时间。, ^: C) q& Y' Z$ r' {7 X# G
方案二:用LCD显示:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文 C4 ^: z k9 X' G" t# r
字,图形,显示多样,清晰可见,并且使用串行接口占用IO 数比使用数码管少,但是人站在远4 X2 Y- p! i: m/ ]: X. }$ u; R# L
处观看很难看清时间,且成本较高。, |) T# q& b% B6 p" o8 C* E1 _
方案对比:由于这次是实验式课程设计,采用LCD显示,接线简单且编程简单。 T, m0 W: m' \, x9 V& V3 j
2.3 时钟模块选择
7 c/ r' L/ U3 T/ x" P2 G7 {方案一:用专用时钟模块DS1302:DS1302 是美国DALLAS公司推出的一种高性能、低4 j0 S9 p+ D2 P4 G/ C; X
功耗、带RAM 的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有
9 m, S2 Z. N8 h, S, f闰年补偿功能,工作电压为2.0V~5.5V。采用三线接口与CPU进行同步通信,并可采用突
! E' M* k7 w% c# [% k- u9 L! c发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8 的用于临时
4 A3 h6 D% ~ V! I. a) j性存放数据的RAM 寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主! N- t3 L) D* I/ x
电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。
I6 P+ K7 i4 R7 _- T- V9 O% k使用DS1302,接线简单,编程简单,并且断电时,可使用电池保持DS1302继续工作,4 ? Y5 x7 x( m
确保时间正确。% G' i+ X* l1 G8 h0 T$ p
方案二:用主控芯片的定时器:用定时器最为时钟源,误差大,编程复杂。0 ~; x: R: X, \6 n9 `
综上所述:采用51 单片机, LCD显示和时钟模块DS1302。7 A$ q" u, R: c7 `6 O* ]0 x) \( h
" N# g! ?( L- F8 p' A
|
|