AT91RM9200串口问题,欢迎大家交流

tungbov 2006-04-20 03:00:47
RM9200四个串口,普通232模式调试通过,485模式下,US0和US2不能接收,经检查,RTS没信号。根据RM9200 datasheet,对这两个串口配置io如下:
//
__inline void YAT91F_US0_CfgPIO (void)
{
// Configure PIO controllers to periph mode
AT91F_PIO_CfgPeriph(
AT91C_BASE_PIOA, // PIO controller base address
((unsigned int) AT91C_PA17_TXD0 ) |
((unsigned int) AT91C_PA21_RTS0 ) |
((unsigned int) AT91C_PA18_RXD0 ) |
((unsigned int) AT91C_PA20_CTS0 ), // Peripheral A
0); // Peripheral B
}
//
__inline void YAT91F_US2_CfgPIO (void)
{
// Configure PIO controllers to periph mode
AT91F_PIO_CfgPeriph(
AT91C_BASE_PIOA, // PIO controller base address
((unsigned int) AT91C_PA23_TXD2 ) |
((unsigned int) AT91C_PA22_RXD2 ), // Peripheral A
((unsigned int) AT91C_PA30_CTS2 ) |
((unsigned int) AT91C_PA31_RTS2 )); // Peripheral B
}
问题在哪?欢迎探讨指点。msn: yangzhengyong@hotmail.com
...全文
191 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ningxin 2006-04-21
  • 打赏
  • 举报
回复
没有用过9200。但最好直接读取相应的状态寄存器,如果寄存器配置正确,那就应该是硬件没连出来;如果寄存器配置不正确,就可能是你的配置代码有误。还有一种可能,是RTS引脚在其它程序里,复用作了其它信号。
tungbov 2006-04-21
  • 打赏
  • 举报
回复
棒棒,你好!这个问题我今天询问了Atmel公司中国代理,他们说这是芯片问题:在最新版datasheet page 660有这个问题的描述。我们只能通过io方式人工给出rts信号了。欢迎交流交流:msn:yangzhengyong@hotmail.com

21,616

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧