请教怎么用USART接收发送数据串

[复制链接]
2224|6
 楼主| joypark159 发表于 2013-7-18 14:52 | 显示全部楼层 |阅读模式
比如我用串口助手发送00 11 22 33,希望在串口助手也接到00 11 22 33,下面附上发送接收单个字符的程序
void USART3_IRQHandler(void)
{
                       
         unsigned char i;
        //GPIO_ResetBits(GPIOB,GPIO_Pin_14);
        if(USART_GetITStatus(USART3,USART_IT_RXNE)==SET)
        {
                        if(USART_GetFlagStatus(USART3, USART_FLAG_RXNE) ==RESET)
                        {        }
                        else
                        i= USART_ReceiveData(USART3);
                                USART_ClearITPendingBit(USART3,USART_IT_RXNE);
                        GPIO_SetBits(GPIOB,GPIO_Pin_14);                       
        USART_SendData(USART3,i);
        while(USART_GetFlagStatus(USART3, USART_FLAG_TXE) == RESET);       

                        USART_ITConfig(USART3, USART_IT_RXNE, DISABLE);
        }
}
cool_coder 发表于 2013-7-18 16:57 | 显示全部楼层
发送数据串用DMA比较高效;接收时DMA不太好用……
zeluo 发表于 2013-7-18 19:15 | 显示全部楼层
不是很了解这一块   楼主  帮你顶一个  看看别人的意见吧   顶一个
 楼主| joypark159 发表于 2013-7-20 11:11 | 显示全部楼层
cool_coder 发表于 2013-7-18 16:57
发送数据串用DMA比较高效;接收时DMA不太好用……

我现在是接收能接收到数组,但是发送不出去
haibian826 发表于 2013-7-20 13:13 | 显示全部楼层
只要把接收到的数据,作为发送即可。
我上传了一个例程,你直接改就好了

芯嵌STM32_USART1_串口查询_OK.rar

882.36 KB, 下载次数: 7

 楼主| joypark159 发表于 2013-7-22 08:46 | 显示全部楼层
haibian826 发表于 2013-7-20 13:13
只要把接收到的数据,作为发送即可。
我上传了一个例程,你直接改就好了 ...

感谢啊,我参考下
 楼主| joypark159 发表于 2013-8-6 11:48 | 显示全部楼层
数据接到完成后,USART_ITConfig(USART2,USART_IT_TXE,ENABLE);       
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

30

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部