最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

使用Cubemx 串口dma傳輸失敗發(fā)現(xiàn)的cubemx巨坑

2023-03-24 20:28 作者:不姓崔的依拓答辯  | 我要投稿

最近使用cubemx開(kāi)發(fā)stm32f103c8t6工程,使用串口dma接收航模遙控器的ibus信號(hào),但是讀取串口dma時(shí)老是失敗,由于代碼是從之前一個(gè)已經(jīng)調(diào)通的工程里復(fù)制過(guò)來(lái)的,我堅(jiān)信我寫(xiě)的代碼是沒(méi)問(wèn)題的,經(jīng)過(guò)兩個(gè)工程的對(duì)比調(diào)試,發(fā)現(xiàn)問(wèn)題出現(xiàn)在cubemx生成的工程模板中。


不好使的工程,cubemx初始化部分的函數(shù)如下:

不好使的工程,dma初始化在uart后面


可以發(fā)現(xiàn),其中DMA初始化在UART初始化后面,由于uart初始化需要一部分dma的信息,如果uart初始化的時(shí)候dma尚未初始化,將出現(xiàn)問(wèn)題。


但問(wèn)題在于這個(gè)bug好像是隨機(jī)出現(xiàn)的,我另外幾個(gè)工程dma初始化均在uart之前,比如這個(gè):

另一個(gè)好使的工程,如果我用i2c2搭配dma,我猜這個(gè)工程也不好使

有點(diǎn)離譜,現(xiàn)在我的解決方案就是在這一長(zhǎng)串初始化前面自己補(bǔ)一個(gè)dma初始化函數(shù),這樣無(wú)論他生成的是正的還是反的,最終都不影響使用,而且dma重復(fù)初始化也沒(méi)有任何問(wèn)題,否則,每次他生成出來(lái)無(wú)法使用的工程,都需要手操把這兩個(gè)函數(shù)換一下位置,我現(xiàn)在的寫(xiě)法如下:

在最上面手動(dòng)加上dma初始化


最后翻了翻稚暉君的工程,人家的每個(gè)工程生成的都沒(méi)什么問(wèn)題,可能與cubemx版本有關(guān),我的cubemx使用的是6.5.0,這是能打開(kāi)稚暉君以往工程的最后一個(gè)版本,另外,網(wǎng)上有一位老哥使用6.3.0版本也遇到了同樣的問(wèn)題,望周知。

https://blog.csdn.net/ricefat609/article/details/119620557

使用Cubemx 串口dma傳輸失敗發(fā)現(xiàn)的cubemx巨坑的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
开化县| 乃东县| 定日县| 兴义市| 莒南县| 临海市| 紫金县| 炎陵县| 德阳市| 海晏县| 都江堰市| 陇南市| 万荣县| 安化县| 蒙山县| 新泰市| 三亚市| 淄博市| 广元市| 天峻县| 雷州市| 长兴县| 海口市| 锡林浩特市| 沅江市| 灵璧县| 仲巴县| 筠连县| 沙雅县| 曲周县| 德化县| 大同市| 山阳县| 阿坝县| 伊吾县| 垦利县| 和平县| 桦甸市| 萍乡市| 青河县| 九江市|