
飞利浦半导体
初步数据
XA的16位微控制器系列
32K FLASH / 1K RAM ,看门狗, 2个UART
XA-G39
UART中断方案
还有每个UART的发送独立的中断向量和
接收功能。
表6.向量单元的UART接口的XA
向量地址
A0H - A3H
A4H - A7H
A8H - ABH
ACH - AFH
中断源
UART接收器0
UART 0变送器
UART接收器1
UART 1变送器
7
8
9
10
仲裁
考虑到从机地址或地址。所有的奴隶可能
通过使用广播地址联系。有两个特殊功能
寄存器用来定义从机地址:SADDR和
地址屏蔽SADEN。 SADEN用来定义哪些位在
SADDR内被使用,哪些位是“不关心” 。该SADEN
面膜可以逻辑与SADDR打造的“给定”
地址,主机会使用该地址对每一个奴隶。
使用地址让多个从机被认可
而排除其他人。下述实施例将有助于显示
多功能这项计划:
从机0
SADDR =
SADEN =
一定
=
SADDR =
SADEN =
一定
=
1100 0000
1111 1101
1100 00X0
1100 0000
1111 1110
1100 000X
注意:
发送和接收的载体可包含相同的ISR
地址上班像8051中断方案
错误处理,状态标志和间隔检测
在XA的UART接口有如下错误标志;见图15 。
SLAVE 1
多机通信
模式2和3对多处理器的特别规定
通信。在这些模式中,第9个数据位被接收。第9
1进入RB8 。接着进来一个停止位。该端口可以是
编程,使得当收到停止位,串行端口
中断只有当RB8 = 1 ,此功能在启用将被激活
置位SCON内SM2位。一种方法使用多处理器这一功能
系统如下:
当主机需要一个数据块传送给一个
几个奴隶,它首先发送一个地址字节,以辨认
目标从机。一个地址字节的不同之处在于,一个数据字节
第9位是1,数据字节的地址字节和0 。当SM2 = 1 ,无
从机的数据字节中断。一个地址字节,但是,
将中断所有从机,这样每个从机可以检查接收到的
字节,看它是否得到解决。从机地址将清除
SM2位以准备接收的数据字节,将要到来。
那些没有被寻址的从机的SM2S设置和
继续他们的工作,忽略进来的数据字节。
SM2在模式0无影响,并且在模式1可用于检查
停止位,虽然这个有效期是更好的做
帧错误( FE )的标志。在接收模式1中,如果SM2 = 1,
接收中断不会被激活,除非一个有效的停止位为
收到。
自动地址识别
自动地址识别是一种功能,它允许UART
通过识别某些地址的串行比特流
硬件进行比较。此功能可节省大量
通过省去了该软件的软件开销
检测通过串口每一个串行地址。这
功能通过设置SCON的SM2位使能。在9位UART
模式,模式2和模式3 ,接收中断标志( RI )将
当接收到的字节中包含“给定”自动设置
地址或“广播”地址。在9位模式下要求
第9个信息位为1 ,以指示所接收的信息
是一个地址,而不是数据。自动地址识别显示
在图18中。
使用自动地址识别功能可以让一个主机
通过调用一个或多个从机选择沟通
在上面的例子中SADDR相同,而SADEN数据是
使用的两个从机之间进行区分。从机0要求0
位0而忽略位1。从机1要求0位1和位0
忽略不计。一个独特的地址从0会是1100 ,因为0010
从1需要0位1.唯一地址从1人
1100 0001由于1位0将排除从0奴隶都可以
同时由具有位0 = 0的地址选择(对于
从0 )和位1 = 0 (从机1 ) 。因此,既可以解决
1100 0000 。
在一个更复杂的系统下面可以用来选择
从站1和2,而不会从0 :
从机0
SADDR =
SADEN =
一定
=
SADDR =
SADEN =
一定
=
SADDR =
SADEN =
一定
=
1100 0000
1111 1001
1100 0XX0
1110 0000
1111 1010
1110 0X0X
1110 0000
1111 1100
1110 00XX
SLAVE 1
SLAVE 2
在上面的例子中的3个从站的区别是在
下3个地址位。从机0要求位0 = 0,它可以是
通过1110 0110从1唯一寻址要求位1 = 0,
它可以通过1110和0101从被唯一解决的,需要2
该位2 = 0 ,其独特的地址是1110 0011。要选择从站0
1 ,不包括从2使用地址1110 0100 ,因为它是
需要使位2 = 1 ,以排除从站2 。
广播地址为每个从站通过采取创建
逻辑SADDR和SADEN的OR 。在这个结果零teated为
无关位。在大多数情况下,解释无关位为那些中,
广播地址为FFH 。
复位时SADDR和SADEN都含有0。这将产生
所有给定地址“不关心”,以及一个广播地址
所有“无关” 。这将有效地禁止了自动
寻址模式,允许微控制器使用标准
UART驱动器不使用此功能。
2002年03月13日
28