用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

MB89P475的UART/SIO结构与应用

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 22:21:23
【本文由PB创新网为您整理】
摘要:MB89P475是富士通公司生产的八位单片机。该单片机具有丰富的软、硬件资源和良好的EMC性能,可广泛应用于家电控制等产品中。该器件内含两路UART/SIO接口,非常适用于计算机集中控制和管理的多级通信控制系统中。文中介绍了该单片机的特点和UART/SIO结构,给出了MB89P475在LSP300型中央空调的计算机集控系统中的设计应用方法。

    关键词:MB89P475;单片机;中央空调;计算机集控系统

MB89P475是富士通公司生产的F2MC-8L MB89470单片机系列产品。该产品具有丰富的软、硬件资源和良好的EMC性能,javascript:window.open(this.src);" style="cursor:pointer;"/>而且其程序空间(16k×8bits PROM)和数据空间(512×8bits RAM)大小适中,定时器资源和中断资源丰富。双路UART/SIO接口的设置是该产品的一大特点。在指令设计方面,利用该单片机可以直接进行16位数据的比较和算术运算。MB89P475的高性价比和合理的资源配置,使其可以广泛应用于家用电器控制和工业控制等应用领域。此外,在多级数据通信控制系统的开发设计中,MB89P475也是一款不可多得的单片机产品。

1 MB89P475简介

1.1 引脚功能

MB89P475(OTP型号)相应的掩膜(MASK)产品型号为MB89475,它具有两种封装形式,分别是48-pin Plastic SH-DIP和48-pin Plastic QFP封装。本文以SH-DIP封装形式为例来介绍其引脚定义,图1所示是该封装的引脚排列图,现将各引脚的功能说明如下:

X0,X1:振荡器输入、输出;

MODE:模式设定引脚,使用时,该引脚通常直接接地;

RST:复位脚,低电平复位;

P00/AN0~P07/AN7:通用I/O口或A/D输入口;

P10~P13:通用I/O口或沿触发中断输入口;

P14~P17:通用I/O口或定时器输入(EC)、输出口(TO);

P20~P22:通用I/O口或UART/SIO1的时钟输入、数据输出和输入口;

P23:通用I/O口或PWC(脉宽测量)输入口;

P24:通用I/O口或PWM(脉宽调制)输出口;

P25~P27:通用I/O口或UART/SIO2的数据输入、数据输出、时钟输入口;

P30*~P36*:大电流驱动输出口,其中,P30/BUZ*可作蜂鸣器驱动口;javascript:window.open(this.src);" style="cursor:pointer;"/>

P40~P41:在MB89P475(102)(单时钟系统)中为通用输入口,在MB89P475(202)(双时钟系统)中为副时钟连接引脚;

P42:通用输入口;

P50~P54:通用I/O口或电平触发中断输入口(低电平中断);

C:接0.1μF电容到地;

Vcc、Vss:电源(+5V)和接地(GND)引脚;

Avcc、Avss:A/D电路的参考电源和地。

1.2 主要特点

MB89P475内含六个定时器,分别为:PWC(脉宽测量)定时器(可用作时间间隔定时器)、PWM(脉宽调制)定时器(可用作时间间隔定时器)、2个8/16bit 定时/计数器、一个21-bit时间基准定时器和一个Watch比例器。此外,MB89P475还具有如下特点:

●带有蜂鸣器驱动,可由程序选择7种驱动信号频率;

●可外部中断,包括4个沿触发中断通道和5个电平触发中断通道;

●内含8通道10位A/D转换器;

图3

    ●内含UART/SIO 异步/同步数据接收/发射器;

●可低功耗工作,具有Stop模式、Sleep模式、副时钟模式、Watch模式等多种工作模式;

●带有Watchdog 定时复位功能;

●最大可用39路I/O口。

2 MB89P475的UART/SIO结构

MB89P475的最大特点就是内部集成了一个UART/SIO通用串行数据通信接口,可通过片内双缓冲器实现全双工双向通信同时UART/SIO可编程配置为异步或同步通信模式;其内部波特率发生器既可以选择14种不同的波特率也可由外部时钟设置波特率其数据传输格式见表1所列。该数据传输格式基于NRZ(不归零)系统。

表1 UART/SIO数据格式

模  式数据长度(Bit)通信模式停止位长度
无校验有校验
078异步1bit或2bits
89
18同步--

MB89P475内含六个寄存器,分述如下:

Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0
MDPENTDPSBLCLCLK2CLK1CLK0

(1) SMC11/21:模式控制寄存器1(地址:0026H/002BH,初始化值:00000000H)的格式如下:

其中,MD为通信模式控制位,该位为0为异步通信(UART),为1时同步通信(SIO);

PEN为校验控制位,该位为0表示无校验,为1表示有校验(由Bit5选择奇、偶校验);

TDP为奇、偶校验位,0为偶校验,1为奇校验;

SBL是停止位长度控制位,0 为选择1Bit停止位,1为选择2 Bit停止位;

CL为字符长度控制位,0 为选择7 Bit数据长度,1为选择8 Bit数据长度;

CLK2~CLK0:通信时钟选择位,具体操作见表2所列。

表2 时钟选择

CLK2CLK1CLK0

选  择  时  钟

0002个指令周期
0018个指令周期
01032个指令周期
011波特率发生器控制
100外部时钟

(2)SMC12/22:模式控制寄存器2(地址:0027H/002CH,初始化值:00000000H)的格式如下:

Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0
RERCRXETXEBRGETXOESCKERIETIE

其中,RERC:各接收标志清除位。置0时,清除所有错误标志,置1无效;

RXE:数据接收允许位,置0时禁止接收,置1时允许接收;

TXE:数据发射允许位,置0时禁止发射,置1时允许发射;

BRGE:波特率发生器启动位,0为停止,1为启动;

TXOE:串行数据输出允许位,置0时,P21/SO1、P26/SO2为通用I/O口,置1时,P21/SO1、P26/SO2为串行数据输出口;

SCKE:串行时钟输出允许位,置0时,P20/SCK1、P27/SCK2为通用I/O口或串行时钟输入口,置1时,P20/SCK1、P27/SCK2为串行时钟输出口;

RIE:接收中断允许位,置0时,接收中断禁止,置1时,接收中断允许;

TIE:发射中断允许位,置0时,发射中断禁止,置1时,发射中断允许。

(3) SSD1/2:状态与数据寄存器(地址:0028H/002DH,初始化值:00001---H),格式如下:

Bit7Bit6Bit5BIT4Bit3Bit2Bit1Bit0
PREOVEFERRDRFTDRE------

其中,PRE:为校验错误标志,0为无校验错误,1为校验错误;

OVE:溢出错误标志,0为无溢出错误,1为溢出错误;

FER:帧错误标志,0为无帧错误,1为帧错误;

RDRF:接收数据寄存器满标志,0为寄存器空,1为接收数据满;

TDRE:发射数据寄存器空标志,0为发射数据满,1为寄存器空。javascript:window.open(this.src);" style="cursor:pointer;"/>

这里,SSD1/2是只读寄存器。若接收中断允许(RIE=1),那么任何错误标志置“1”都将产生接收中断。因此,在程序中将RERC(SMC12/22中的Bit7)置“1”,可将各错误标志清零。

(4)SRC1/2:波特率控制寄存器(地址:002AH/002FH,初始化值:xxxxxxxxH)

当SMC11/SMC21寄存器中的CLK2 ~ CLK0设为“011”时,由于选择的是波特率发生器作为串行时钟(异步通信方式使用),因此,只有在UART/SIO停止工作时,写入SRC1/2的数据才有效。此时,波特率计算方法如下(CLK2~CLK0设为“011”):

波特率=1/(16nTint)

式中,n为写入SRC1/2的数值,Tint为指令周期,其值可通过对相关寄存器编程设定为4/fch、8/fch、16/fch、64/fch(其中fch为系统时钟振荡器频率)。

(5) SIDR1/2: 输入数据寄存器(地址:0029H/002EH,初始化值:xxxxxxxxH)

该寄存器用于存放接收到的数据。当数据接收完成时,RSRF位(SSD1/2中的Bit4)被置“1”,此时若接收中断允许,将产生接收中断请求。读出接收数据后,RSRF位自动清“0”。

系统检测到接收中断请求后,应检查RSRF位是否为“1”,若为“0”,说明该中断是由于接收错误产生的,SIDR1/2并未接收到数据,此时应在相应的程序中作相应处理。

(6) SODR1/2:输出数据寄存器(地址:0029H/002EH,初始化值:xxxxxxxxH)

SODR1/2与SIDR1/2具有相同的地址。发射允许时,将发射数据写入该寄存器即可直接转送到发射寄存器,并通过发射移位寄存器发送到串行数据输出口(SO1/2)。

图5

   

[1] [2]  下一页

Tags:

作者:佚名
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:1,625.00000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号