打印

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

[复制链接]
1673|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不太好用……

我现在是接收能接收到数组,但是发送不出去

使用特权

评论回复
5
haibian826| | 2013-7-20 13:13 | 只看该作者
只要把接收到的数据,作为发送即可。
我上传了一个例程,你直接改就好了

芯嵌STM32_USART1_串口查询_OK.rar

882.36 KB

使用特权

评论回复
6
joypark159|  楼主 | 2013-7-22 08:46 | 只看该作者
haibian826 发表于 2013-7-20 13:13
只要把接收到的数据,作为发送即可。
我上传了一个例程,你直接改就好了 ...

感谢啊,我参考下

使用特权

评论回复
7
joypark159|  楼主 | 2013-8-6 11:48 | 只看该作者
数据接到完成后,USART_ITConfig(USART2,USART_IT_TXE,ENABLE);       

使用特权

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

本版积分规则

8

主题

30

帖子

0

粉丝