新手上路
- 积分
- 36
- 金钱
- 36
- 注册时间
- 2017-10-18
- 在线时间
- 9 小时
|

楼主 |
发表于 2017-10-25 18:08:03
|
显示全部楼层
本帖最后由 枫彦堂 于 2017-10-25 18:15 编辑
#include "main.h"
#include "delay.h"
#include "usart2.h"
#include "rs485.h"
int main(void)
{
u16 rs232_len;
u16 rs485_len;
delay_init(); //
Usart2_init(9600); //9600
RS485_Init(9600); //9600
while(1)
{
// while(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
// {
// if(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
// {
// RS485_RX_TX=1;
//485接收电脑指令 从232发送给外设
if(RS485_RX_STA&0x8000) //RS485_RX_STA位15 表示接收完成
{
rs485_len=RS485_RX_STA&0x3fff;
RS485_RX_BUF[rs485_len]='\0' ;
u2_printf("%s\r\n",RS485_RX_BUF); //RS232将RS485接收到的信息发到外设上
RS485_printf("你发送的数据"”%s\r\n",RS485_RX_BUF);
RS485_RX_STA=0;
}
// RS485_RX_TX=0;
// while(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
// else if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
// {
//RS232从外设接收信息 用485打印在电脑上
if(USART2_RX_STA&0x8000)
{
rs232_len=USART2_RX_STA&0x3fff;
USART2_RX_BUF[rs232_len]='\0' ;
RS485_printf("你接收的数据%s\r\n",USART2_RX_BUF);
USART2_RX_STA=0;
// }
delay_ms(10);
}
}
这个代码这么写可以吗 |
|