基于单片机的跑马灯课程设计 下载本文

单片机:一片AT89S51/52或其他51系列兼容单片机,本设计采用STC89C52RC。

接口电路:具有人机交互接口。具有一定的可扩展性,单片机I/O口可方便地与其他电路板连接。

通过该最小系统,我们可以用keil软件进行编程从而实现对一些外设的控制!比如一些简单的实验:闪烁灯、跑马灯、数码管和蜂鸣器的展示等等!籟丛妈羥为贍偾蛏练淨。 2.3.1、STC89C52RC介绍

STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。預頌圣鉉儐歲龈讶骅籴。 主要特性如下:

1. 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051.渗釤呛俨匀谔鱉调硯錦。 2. 工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机) 3. 工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作

频率可达48MHz

4. 用户应用程序空间为8K字节 5. 片上集成512字节RAM

6. 通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。铙誅卧泻噦圣骋贶頂廡。 7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片擁締凤袜备訊顎轮烂蔷。 8. 具有EEPROM功能 9. 具有看门狗功能

10. 共3个16位定时器/计数器。即定时器T0、T1、T2

11. 外部中断4路,下降沿中断或低电平触发电路,Power Down模式可

9

由外部中断低电平触发中断方式唤醒

12. 通用异步串行口(UART),还可用定时器软件实现多个UART 13. 工作温度范围:-40~+85℃(工业级)/0~75℃(商业级) 14. PDIP封装

STC89C52RC单片机的工作模式

? 掉电模式:典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原

程序

? 空闲模式:典型功耗2mA

? 正常工作模式:典型功耗4Ma~7mA

? 掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备

图1

10

STC89C52RC引脚图

STC89C52RC引脚功能说明

VCC(40引脚):电源电压 VSS(20引脚):接地

P0端口(P0.0~P0.7,39~32引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。此时,P0口内部上拉电阻有效。在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。贓熱俣阃歲匱阊邺镓騷。 P1端口(P1.0~P1.7,1~8引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电

11

流()。坛摶乡囂忏蒌鍥铃氈淚。 此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体参见下表:蜡變黲癟報伥铉锚鈰赘。 在对Flash ROM编程和程序校验时,P1接收低8位地址。 P1.0和P1.1引脚复用功能

引脚号 P1.0 P1.1 功能特性 T2(定时器/计数器2外部计数输入),时钟输出 T2EX(定时器/计数器2捕获/重装触发和方向控制) P2端口(P2.0~P2.7,21~28引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流(

)。買鲷鴯譖昙膚遙闫撷凄。 在访问外部程序存储器和16位地址的外部数据存储器(如执行“MOVX @DPTR”指令)时,P2送出高8位地址。在访问8位地址的外部数据存储器(如执行“MOVX @R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。綾镝鯛駕櫬鹕踪韦辚糴。 在对Flash ROM编程和程序校验期间,P2也接收高位地址和一些控制信号。 P3端口(P3.0~P3.7,10~17引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流(

)。驅踬髏彦浃绥譎饴憂锦。 在对Flash ROM编程或程序校验时,P3还接收一些控制信号。 P3口除作为一般I/O口外,还有其他一些复用功能,如下表所示: P3口引脚复用功能 引脚号 P3.0 复用功能 RXD(串行输入口) 12