你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

HAL库STM32串口2发送数组给串口1异常

[复制链接]
gmydsg 提问时间:2018-10-24 11:24 /
刚结束STM32,所以想请教一下。就是我想用串口2接收数据然后发送给串口1,串口1接收后再发送出去,可是怎么调试也不对,下面贴上我的代码,请大佬们帮个忙,纠结死了。(这部分是接收)  HAL_UART_Receive_DMA(&huart2,u1buf,21);
下面是判断部分的代码  
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
        UNUSED(huart);
        if(huart->Instance == USART1) //判断由哪个串口触发中断
        {
             HAL_UART_Transmit_DMA(&huart1,u1buf,21,0xFFFF);  //接收到数据马上用串口1发送
                  HAL_UART_Receive_DMA(&huart1,u1buf,21);    //串口1重新使能
        }
            if(huart->Instance == USART2)
                        {
                                 HAL_UART_Transmit_DMA(&huart2,u2buf,21,0xFFFF); //接收到数据马上用串口2发送
                                  HAL_UART_Receive_DMA(&huart2,u2buf,21);         //串口2重新使能
                        }
}
收藏 评论9 发布时间:2018-10-24 11:24

举报

9个回答
gmydsg 回答时间:2018-10-24 11:27:59
是用Cubemx直接工程生成的代码,其他部分基本都是直接生成,就没贴上去。
废鱼 回答时间:2018-10-24 11:33:29
不用DMA发送,直接用查询发送,可以发出去吗?另外注意下,是否进入回调函数。

评分

参与人数 1蝴蝶豆 +3 收起 理由
STMCU + 3

查看全部评分

gmydsg 回答时间:2018-10-24 11:36:43
安 发表于 2018-10-24 11:33
不用DMA发送,直接用查询发送,可以发出去吗?另外注意下,是否进入回调函数。 ...

百度查询发现DMA发送不会丢数据,所以我就使用了这个。那请问一下,如果用DMA发送的话,我这串代码是否有需要更改的地方
gmydsg 回答时间:2018-10-24 11:38:23
安 发表于 2018-10-24 11:33
不用DMA发送,直接用查询发送,可以发出去吗?另外注意下,是否进入回调函数。 ...

说可以找官方例程,可是我刚接触,暂时不清楚哪里可以找到我所用芯片信号的例程
废鱼 回答时间:2018-10-24 11:38:28
使用上没有问题。主要是看是否进入了回调函数。确定发送失败的原因。
奏奏奏 回答时间:2018-10-24 13:38:59
版主的意思是说HAL_UART_Transmit_IT才是用在中断回调函数中的,HAL_UART_Transmit_DMA用的不合适,对吧?

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

wenyangzeng 回答时间:2018-10-24 13:57:31
建议楼主如果是刚接触STM32,应该先从最基本的例程开始,USART使用DMA等基本通讯调试成功后再进阶。ST官方有例程可参考:
UART.rar (184.9 KB, 下载次数: 5)

评分

参与人数 1蝴蝶豆 +3 收起 理由
STMCU + 3

查看全部评分

gmydsg 回答时间:2018-10-24 15:20:55
wenyangzeng 发表于 2018-10-24 13:57
建议楼主如果是刚接触STM32,应该先从最基本的例程开始,USART使用DMA等基本通讯调试成功后再进阶。ST官方有 ...

谢谢!
gmydsg 回答时间:2018-10-24 15:22:11
wenyangzeng 发表于 2018-10-24 13:57
建议楼主如果是刚接触STM32,应该先从最基本的例程开始,USART使用DMA等基本通讯调试成功后再进阶。ST官方有 ...

基本通讯已经今天调通了,就是在好奇如何用串口助手给串口2发数据,串口2再把这个数据发给串口1,串口1最后再发出来。

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版