
飞利浦半导体
初步数据
XA的16位微控制器系列
32K FLASH / 1K RAM ,看门狗, 2个UART
XA-G39
串口控制寄存器
串口控制和状态寄存器的特殊功能
注册SnCON中的RB8_n ,如图16所示,该寄存器包含不仅
模式选择位,同时也是第9位数据的发送和
接收(和的TB8_n RB8_n )和中断标志位串行端口( TI_n
和RI_n ) 。
TI标志
为了允许容易地使用该双缓冲UART发送器的
特点, TI_n标志由硬件两岁以下设置
条件。第一个条件是在完成任何字节的
传输。这发生在停止位在模式结束1,2,或
3 ,或者在第8数据位在模式0的第二端
条件是当SnBUF的写入,而UART发送器
空闲。在这种情况下, TI_n标志,以指示该设置
第二UART发送缓冲器仍然是可用的。
通常情况下, UART发送器生成每个字节一个中断
传输。在对应XA UART的情况下,一个附加的中断是
生成由规定的条件的定义与设置TI_n
标志。如果双缓冲这种额外的中断不会发生
绕过如下面所解释。注意,如果一个字符取向
方法被用于通过UART发送数据,有可能是
第二个中断的每个字符传输,视
写操作的时序SBUF 。出于这个原因,它通常是更好的
当UART发送器采用的是旁路双缓冲
面向字符的模式。这也是真实的,如果UART被调查
而不是中断驱动,而当传输字符
导向而不是消息或字符串导向。中断发生
在发送时,在UART变为空闲的最后字节结束。
除其他事项外,这允许一个程序,以确定何时一个
邮件已发送彻底。中断服务
例程应该处理这个额外的中断。
使用双缓冲中的推荐方法
应用程序是具有在中断服务程序处理一个
每个中断发生单个字节。以这种方式在
程序基本上不需要任何特殊的注意事项
双缓冲。除非更高优先级的中断的原因延误
UART发送中断服务,双缓冲
将导致传输的字节被致密无
干预的差距。
9位模式
请注意,第九位数据( TB8 )不是双缓冲。关怀
必须注意保证该TB8位中包含期望的数据
在它被发送的点。该UART的双缓冲
发射机可以绕过作为同步的简单方法
TB8到数据流的其余部分。
绕过双缓冲
UART发送器也可使用,如果它是单缓冲的。该
推荐UART发送中断服务程序( ISR )
技术绕过双缓冲首先在清除TI_n标志
进入中断服务程序,在标准的做法。这将清除中断
该激活ISR 。其次, TI_n标志被清除
马上每个写SnBUF的下面。这将清除中断
标志,否则将引导程序写入到所述第二
发送缓冲区。如果有任何可能性,即具有较高优先级
中断写之间可能会变得活跃,以SnBUF的和
该TI_n标志的清零时,中断系统可能必须
通过清除,然后设置该序列中暂时禁用
在IEL寄存器中的EA位。
2002年03月13日
26