TA的每日心情 | 怒 2019-11-20 15:01 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、设计目的和要求
8 |1 Q) u( P: ^% Q% r5 S3 p+ Q单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞5 j" j) W* ]) v, W6 T2 y
机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和 {- n' a- ~; l! s; ^* r4 `' V
数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等, 这些都离不开单片机。$ j2 y5 { _0 J1 e' p# K, Q
单片机是集 CPU ,RAM ,ROM定 , 时,计数和多种接口于一体的微控制器。 它体积小,成本低,' U0 a+ m+ ~# E: Z! i& l3 @. I
功能强,广泛应用于智能产业和工业自动化上。而51 系列单片机是各单片机中最为典型9 _( O1 L) C2 p8 y% R- G5 m, }
和最有代表性的一种。这次课程设计通过对它的学习,应用,从而达到学习、设计、开发7 c3 L' \9 Z8 { P
软、硬的能力。通过对一个基于单片机的能实现电子日历功能电子时钟的设计,从而达4 M% n1 t _0 P
到学习、了解单片机相关指令在各方面的应用。系统由主控制器AT89C51、时钟电路DS1302、
; F2 r( q: X6 o. m! l. p显示电路、和复位电路等部分构成,能实现时钟日历显示的功能,能进行时、分、秒的显
" a$ h- m" B* x" M示。$ g: |' z3 F+ {! K s- K. J7 ?
系统设计要求:电子日历能显示,能调整。基于51 系列的单片机进行的电子万年历设8 c8 V0 P9 G) W/ j( c# X! g) `
计可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机
: G) D& o0 V% }8 \7 j( v O的理论基础和外围扩展知识进行了比较全面准备。具体实现功能:显示年月日时分秒及星
1 k. j4 U9 j- o9 l! A期信息,具有可调整日期和时间功能,与即时时间同步。
/ N# O7 @; `: @1 F主要使用到的工具和器件:
6 V, a: l; ^1 bKeilc517 u# ?) {! w$ M8 B
Protues
3 d/ A2 x" ]6 w8 TDS1302
& H% Z3 c" p: ]5 C$ ^# R* [8 qAT89S52
8 r- G( V0 G% c5 Q, |! \LCD128641 E. t$ U) c; F: w3 S2 y
基于单片机的电子日历设计
% d, b( n# T9 M. J, W' ?2
( u1 q! v8 W1 a4 H ~1 g二、方案设计
! x W) k" m7 m, U! [% E每一系统都有几个核心的模块。它对整个系统的性能有非常大的影响。比如$ Y ?' t3 _! ^
系统的主控。
6 X5 y5 u) u" l" _6 x0 a2.1 主控芯片选择方案论证6 `/ ^# B; ]1 C' w
方案一:选择51 系列的单片机; AT89S52 是一种低功耗、高性能CMOS8位微控制器,
* x: ~" @, ?% c5 f: Z8 k具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,
# ]' W# s- X: O" H$ z1 M9 l+ S4 G与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适
! f( Z$ l$ R) _于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52
# |% j% E2 F9 X# h' g为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:7 D6 e, U! L1 g& r" L7 e
8k 字节Flash,256 字节RAM, 32 位I/O 口线,看门狗定时器, 2 个数据指针,三个16 位
' M' q; d0 ?$ q& x" U; t定时器/ 计数器,一个6 向量2 级中断结构,全双工串行口, 片内晶振及时钟电路。另外,
4 e4 i$ E& d, f3 A, n" cAT89S52 可降至0Hz 静态逻辑操作, 支持2 种软件可选择节电模式。空闲模式下, CPU 停
' Y: }; P6 L" D' d1 w; G/ y1 U止工作,允许RAM、定时器/ 计数器、串口、中断继续工作。掉电保护方式下, RAM内容
( A, ~0 a$ a! p. j3 r1 }被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
- `" J& i7 J9 F# z! W( I方案二:选择msp430 系列单片机; MSP430 系列单片机是一个16 位的单片机,采用 a* w/ \$ L( E8 U, |
了精简指令集( RISC)结构,具有丰富的寻址方式( 7 种源操作数寻址、4 种目的操作数1 R6 g- R! i" j5 {
寻址)、简洁的27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器
2 P. V1 ?4 X8 S' W* `都可参加多种运算; 还有高效的查表处理指令。这些特点保证了可编制出高效率的源程序。
, U4 e/ U, W$ I# `$ {9 zMSP430 系列单片机的各系列都集成了较丰富的片内外设。它们分别是看门狗( WDT)、模" p* h' ^, z3 F; ]% m. Z3 F% ?
拟比较器A、定时器A0(Timer_A0)、定时器A1(Timer_A1)、定时器B0(Timer_B0)、UART、
& q/ m) q) c( e8 a& E" y# lSPI、I2C、硬件乘法器、液晶驱动器、10 位/12 位ADC、16 位Σ-Δ ADC、DMA、I/O 端口、& {4 M5 g$ z4 `" D6 _
基本定时器( Basic Timer)、实时时钟( RTC)和USB控制器等若干外围模块的不同组合。
: T9 Y9 \- r9 |! ]2 x其中,看门狗可以使程序失控时迅速复位; 模拟比较器进行模拟电压的比较, 配合定时器,$ q) c" N$ L/ ] o! x
可设计出A/D 转换器; 16 位定时器( Timer_A 和Timer_B)具有捕获/ 比较功能,大量的- Z/ [! E K. D5 q0 k% \1 ~
捕获/比较寄存器,可用于事件计数、时序发生、PWM 等;有的器件更具有可实现异步、$ T! i8 \% J1 |+ m6 H
同步及多址访问串行通信接口可方便的实现多机通信等应用;具有较多的I/O 端口, P0、- Q6 T7 `( g2 B/ v3 ^0 C$ i
P1、P2 端口能够接收外部上升沿或下降沿的中断输入; 10/12 位硬件A/D 转换器有较高
# E3 _% k# [# |' V0 b的转换速率,最高可达200kbps ,能够满足大多数数据采集应用; 能直接驱动液晶多达160
" b' d" S) p+ w" T! P) @# g/ X- c段;实现两路的12 位D/A 转换;硬件I2C串行总线接口实现存储器串行扩展;以及为了) y, Z* @6 J' b9 Q3 U9 T
基于单片机的电子日历设计
% F/ C: I3 O4 h" ]3
/ T" ~( ~2 }$ x: i% q8 l( I增加数据传输速度, 而采用的DMA 模块。MSP430 系列单片机的这些片内外设为系统的单
% g8 u ]. c2 A' E) I3 I2 E9 O片解决方案提供了极大的方便。
6 X) X6 r: N0 _; \1 k/ U方案对比:% K0 G( K' b. l6 ~
运算周期:时钟显示最小单位为秒, 51 和msp430 的运算周期都在1 秒之内,这
# r2 m9 i% O. q* Z$ a. S' d4 D1 ~一点都满足要求。
9 D4 q: w5 n7 h9 r+ LIO 口是否满足系统设计要求: 51 有32 个IO 口, msp430 的IO 口则更多。这一点
, \, x3 r* i( B都满足要求。
: W( R% R" a$ n, O' Q4 @+ r- {是否需要外加时钟芯片: 采用定时器, 误差较大。Msp430 内部就有时钟RTC单元,
4 f9 ^# i0 P/ R$ d51 单片机需要外加。
h. ?0 _8 ?4 M' P4 X1 e选择51 单片机作为系统的主控;. |2 A4 ~5 \: F" \
2.2 显示模块方案选择, k- I8 Q. u5 z$ b) `" z
方案一:用数码管显示:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字
C1 e4 l9 W2 H V合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,并且人站在远处夜能观 ?$ p1 w, x% t' r" ]8 c
看到时间。+ l& O j( x' b m7 w e
方案二:用LCD显示:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文
; }$ I. M& M6 S+ f字,图形,显示多样,清晰可见,并且使用串行接口占用IO 数比使用数码管少,但是人站在远
+ b Z; d( j$ }: Y* p$ u7 _处观看很难看清时间,且成本较高。' b( T% G/ `2 b5 P* Z3 B' W1 N
方案对比:由于这次是实验式课程设计,采用LCD显示,接线简单且编程简单。% X, C( J' X; b! x" o* R6 \0 W
2.3 时钟模块选择
' C: t& n# h' v! L, m方案一:用专用时钟模块DS1302:DS1302 是美国DALLAS公司推出的一种高性能、低
: Z+ d4 t% R, o }+ D7 ]功耗、带RAM 的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有' o1 H c6 a0 k/ e8 K
闰年补偿功能,工作电压为2.0V~5.5V。采用三线接口与CPU进行同步通信,并可采用突. i9 ?2 x4 I/ Z4 ]4 c; `4 }
发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8 的用于临时$ T1 s7 I; Q+ y* ?. C% l: W
性存放数据的RAM 寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主& I$ q' G8 d6 `! d* @6 u" E
电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。2 Y1 X Y! H" d! O7 s) N
使用DS1302,接线简单,编程简单,并且断电时,可使用电池保持DS1302继续工作,* @( a; O1 d4 A8 f% u- Z; g3 A4 o
确保时间正确。; y$ m* m( R' J8 `, x
方案二:用主控芯片的定时器:用定时器最为时钟源,误差大,编程复杂。
# |; L' Q) B9 F# u- W2 A综上所述:采用51 单片机, LCD显示和时钟模块DS1302。+ t+ ~! T h6 T# H2 A: |4 X
$ |( s: s: v' ~) k: h6 C
|
|