打印
[应用相关]

STM8 IrDA红外功能

[复制链接]
907|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2021-10-18 09:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
摘要: STM8 IrDA红外功能通过设置UART_CR5寄存器的IREN位选择IrDA模式。UART_CR3寄存器的STOP位必须设置成"1个停止位"。在IRDA模式里,下列位必须保持清零:UART_CR3寄存器的LINEN,STOP和CLKEN位UART_CR5寄存器的SCEN和HDS ...


STM8 IrDA红外功能
通过设置UART_CR5寄存器的IREN位选择IrDA模式。UART_CR3寄存器的STOP位必须设置成"1个停止位"。在IRDA模式里,下列位必须保持清零:
  • UART_CR3寄存器的LINEN,STOP和CLKEN位
  • UART_CR5寄存器的SCEN和HDSEL位。
注意:STM8红外功能只适用于UART1和UART2。
IrDA SIR物理层规定使用反相归零调制方案(RZI),该方案用一个红外光脉冲代表逻辑'0'(见图114)。
SIR发送编码器对从UART输出的NRZ(非归零)比特流进行调制。输出脉冲流被传送到一个外部输出驱动器和红外LED。对于SIR ENDEC应用,UART最高只支持到115.2Kbps速率。在正常模式里,脉冲宽度规定为一个位周期的3/16。
SIR接收解码器对来自红外接收器的归零位比特流进行解调,并将接收到的NRZ串行比特流输出到UART。在空闲状态里,解码器输入通常是高(标记状态marking state)。发送编码器输出的极性和解码器的输入相反。当解码器输入低时,检测到一个起始位。
  • IrDA是一个半双工通信协议。如果发送器忙(也就是UART正在送数据给IrDA编码器),IrDA接收线上的任何数据都将被IrDA解码器所忽略。如果接收器忙(也就是UART正在接收从IrDA解码器来的解码数据),从UART的TX上到IrDA的数据将不会被IrDA编码。当接收数据时,应该避免发送,因为将被发送的数据可能被破坏。
  • SIR发送逻辑把'0'作为高脉冲发送,把'1'作为低电平发送。脉冲的宽度规定为正常模式时位周期的3/16(见图115)。
  • SIR解码器把接收到的IrDA信号转变成比特流后发送给UART。
  • SIR接收逻辑把高电平状态解释为'1',把低脉冲解释为'0'。
  • 发送编码器输出与解码器输入有着相反的极性。当空闲时,SIR输出处于低状态。
  • IrDA规范要求脉冲要宽于1.41us。脉冲宽度是可编程的。接收器端的尖峰脉冲检测电路会过对宽度小于2个PSC周期的脉冲进行过滤操作(PSC是在UART_GTPR中编程的预分频值)。宽度小于1个PSC周期的脉冲一定会被过滤掉,但是那些宽度大于1个而小于2个PSC周期的脉冲可能被接收或滤除,那些宽度大于2个周期的将被视为一个有效的脉冲。当PSC=0时,IrDA编码器/解码器不工作。
  • 接收器可以与一低功耗发送器通信。
  • 在IrDA模式里,UART_CR2寄存器上的STOP位必须配置成1个停止位。
IrDA红外低功耗模式
IrDA可以工作在正常模式,也可以工作在低功耗模式。选择低功耗模式需要把UART_CR5寄存器的IRLP位置1。
发送器
在低功耗模式,脉冲宽度不再持续3/16个位周期。取而代之,脉冲的宽度是低功耗波特率时钟周期的3倍,该波特率的频率最小可以是1.42MHz。通常这个值是1.8432MHz(1.42 MHz<PSC<2.12 MHz)。一个低功耗模式可编程分频器把系统时钟进行分频以达到这个值。
接收器
低功耗模式的接收类似于正常模式的接收。
为了滤除尖峰干扰脉冲,UART应该滤除宽度短于1个周期的脉冲。只有持续时间大于2个周期的IrDA低功耗波特率时钟(UART_GTPR中的PSC)的低电平信号才被接受为有效的信号。
注意:1.宽度小于2个大于1个PSC周期的脉冲可能会也可能不会被滤除。
2.接收器的建立时间应该由软件管理。IrDA物理层技术规范规定了在发送和接收之间最小要有协10ms的延时(IrDA是一个半双工议)。

(图114:STM8_IrDA SIR ENDEC–框图)

(图115:STM8_IrDA数据调制(3/16)–普通模式)


使用特权

评论回复
沙发
drer| | 2021-11-5 14:39 | 只看该作者
需要外扩芯片吗

使用特权

评论回复
板凳
nawu| | 2021-11-5 14:40 | 只看该作者
功能这么强大啊

使用特权

评论回复
地板
kxsi| | 2021-11-5 14:43 | 只看该作者
只能半双工吗

使用特权

评论回复
5
gwsan| | 2021-11-5 14:44 | 只看该作者
如果米有保持零呢

使用特权

评论回复
6
aoyi| | 2021-11-5 14:45 | 只看该作者
我就奇怪了 为甚总删掉呢

使用特权

评论回复
7
aoyi| | 2021-11-5 14:46 | 只看该作者
功耗达到多少啊

使用特权

评论回复
8
shang21ic| | 2021-12-27 11:09 | 只看该作者
省事就用YiRTX05e万能红外编解码芯片,UART接口。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1197

主题

3037

帖子

0

粉丝