- 积分
- 1095
- 在线时间
- 1377 小时
- 最后登录
- 2018-11-9
- 阅读权限
- 70
- 精华
- 1
 
- UID
- 3197
- 帖子
- 933
- 精华
- 1
- 经验
- 1095 点
- 金钱
- 836 ¥
- 注册时间
- 2005-3-1
|
单片机与胆机似乎是风马牛不相及的事。但是目前单片机的价格已经很低,功能很完善,用到胆机里也不是不可以,例如作为延时开、关机,遥控,甚至用单片机来对管子的工作状态进行调整等,也是可以使用的。当然延时电路使用延时继电器既简单又方便,单片机毫无优势可言。然而,你把开路保护,过流保护等电路集成进去,单片机的作用就发挥出来了。本文以51系列单片机为例,介绍下单片机的运用。为简单起见,本文不打算详细阐述单片机的工作原理,而是简单介绍一些必要的知识后直接进入应用部分。需要用的或需要说明的知识随时补充。
51系列单片机基础知识
AT89S52是ATMEL公司生产的兼容标准MCS-51指令系统及80C51引脚结构的低功耗,高性能CMOS 8位单片机。与MCS-51相比,S52内建了8kB的可在系统编程(ISP)的闪存,可反复擦写1000次。ISP的建立,为应用此款单片机提供了极大的便利:稍有动手能力的朋友都可以做一个并口烧写器,其成本仅20多元。
除了ISP功能外,S52还构建了内部看门狗(watchdog),使得芯片使用起来更加可靠;RAM的数量增加到了256个字节。主要功能特性如下:
· 兼容MCS-51指令系统 · 8k可反复擦写(>1000次)ISP Flash ROM
· 32个双向I/O口 · 4.5-5.5V工作电压
· 3个16位可编程定时/计数器 · 时钟频率0-33MHz
· 全双工UART串行中断口线 · 256x8bit内部RAM
· 2个外部中断源 · 低功耗空闲和省电模式
· 中断唤醒省电模式 · 3级加密位
· 看门狗(WDT)电路 · 软件设置空闲和省电功能
· 灵活的ISP字节和分页编程 · 双数据寄存器指针
S52的引脚定义如下:
<img src="attachments/dvbbs/2006-1/200615131932891.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt=\'Click here to open new window\nCTRL+Mouse wheel to zoom in/out\';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor=\'hand\'; this.alt=\'Click here to open new window\nCTRL+Mouse wheel to zoom in/out\';}" onclick="if(!this.resized) {return true;} else {window.open(\'attachments/dvbbs/2006-1/200615131932891.gif\');}" onmousewheel="return imgzoom(this);" alt="" />
管脚定义:VCC、GND--+5v电源和地;P0.0/AD0--P0.7/AD7为I/O及地址/数据复用口,也就是说,当仅使用片内存储器而无外部地址/数据访问时,32-39脚仅作为I/O(输入in/输出out)使用,如有外部地址/数据访问时,32-39脚作为地址/数据复用口使用,此时32-39脚不能简单地作为I/O口使用。所谓地址/数据复用,就是在一个访问周期内,此8个引脚首先输出低8位的地址(AD0-AD7),经外部锁存器锁存后作为地址总线输出,随即此8个脚作为数据总线,用来输出或者输入8位数据。
同样的,P2.0-P2.7(21-28)脚也是多用口,与P0口的区别是访问外部存储器时,P2口仅作为地址总线的高8位。P1口的P1.0、P1.1的第2功能是定时计数器2的外部输入端及定时计数器启动/停止端;P1.5、P1.6、P1.7为ISP的功能引脚。
RST(9)脚为复位脚,用于系统上电复位及其他复位,高电平有效。
P3口的第2功能分别是:TXD、RXD—串行通信口的发送、接收端。INT0、INT1,外部中断输入端。T0、T1,定时器0、1的外部输入端。WR、RD为使用外部存储器时的写/读信号。ALE/PROG(30)为访问外部存储器时的允许地址锁存信号。当ALE为高时,P0口送出16位地址的低8位,并在ALE下降时锁存。即使不访问外部存储器,ALE也以系统时钟的1/6的频率送出周期性的正脉冲。但需注意:当执行MOVX指令时(访问外部数据存储器)时,将跳过一个ALE脉冲。PLOG为EPROM型单片机的编程信号。S52不使用此功能。
PSEN为外部程序存储器读选通信号,低电平有效。
EA脚用于区分内部程序存储器还是外部程序存储器。当EA为低电平时,单片机仅使用外部程序存储器。当EA接高电平时,程序不超过8K(0X1FFF)时使用内部程序存储器,超过8K时访问外部程序存储器。因此编制程序时要注意,当系统使用P0和P2口时,一旦系统访问外部程序存储器,将导致这2个口的16条I/O口线出现不可预料的结果。
XTAL1、XTAL2是内部时钟发生器。接下来说说与ISP有关的几个管脚,分别是6脚(MOSI串行信号输入)7脚(MISO串行信号输出)8脚(SCK串行时钟)和9脚(RST复位)。具体连接图如下:
<img src="attachments/dvbbs/2006-1/200615191433176.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt=\'Click here to open new window\nCTRL+Mouse wheel to zoom in/out\';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor=\'hand\'; this.alt=\'Click here to open new window\nCTRL+Mouse wheel to zoom in/out\';}" onclick="if(!this.resized) {return true;} else {window.open(\'attachments/dvbbs/2006-1/200615191433176.gif\');}" onmousewheel="return imgzoom(this);" alt="" />
这里我们先不去讨论具体细节,只要按图做好就可以了。25脚DB25插头连接电脑的并行口,MISO、SCK、MOSI、RST等几根信号线连到单片机上,当然单片机的时钟和电源要先准备好。建议使用6M或12M的晶体。下载软件可以去这里下载:http://www.atmel.com/dyn/resources/prod_documents/at89isp.zip
好了,硬件部分暂时告一段落。建议朋友们用一块试验板来学习单片机,CPU使用40脚双列直插的,先在板上焊好插座。
|
评分
-
查看全部评分
|