f423的串口配置中,增加了RS485的硬件流控功能,不需要再手动用代码去修改方向了。但我的485电路上已经设计成了自动换向,所以,这部分也不再配置了。
而且支持RX与TX的交换功能,这样在设计电路时,不小心没有在硬件上进行交叉连接,在软件上也可以进行配置,省去下PCB电路改版的工作。
arduino接口上的串口使用的是串口2,这里配置串口2为异步模式,115200的波特率。
RS485模块,使用自有接口的模块。直接插在arduino转换板上就可以了。
如下所示:
代码上,发送一串字符:
while(1)
{
/* add user code begin 3 */
gpio_bits_toggle(R_LED_GPIO_PORT,R_LED_PIN);//gpio_bits_toggle(GPIOE,GPIO_PINS_0);
for(i=0;i<sizeof(usart2_tx_buffer);i++)
{
while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
usart_data_transmit(USART2,usart2_tx_buffer[i]);
}
//usart_data_transmit(USART2,0x1234);
delay_ms(200);
/* add user code end 3 */
}
最后的运行结果
在使用了一段时间的AT32IDE后,有一些建议:
一、
IDE有单独可以直接下载的图标快捷方式,是很人性化的,在在下载代码,要先选中工程才能下载,否则会有如下提示。
其实这里没有必要的,可以直接下载当前活跃的那个工程就可以了。
这样每次都去点一下工程,有一些繁琐。
二、
当关闭Debug,不能自动跳回到编辑界面,还停留在debug界面,要手动点一下才能返回。
|