CH32V307 非字節(jié)對齊訪問

RISC-V系列MCU不支持非對齊訪問? - 沁恒微電子社區(qū) (wch.cn)

看到此前有老哥,提到過這個問題,目前我也碰到了這個問題,具體體現(xiàn)在對結構體元素的強制類型轉換上。

icon_rar.gifCH32V307 Test.zip

對一個函數(shù)傳入定義的形參(結構體指針),在函數(shù)內對結構體指針元素做強制類型轉換,如下圖,硬件報錯mcause4,和此前貴公司工程師解釋的內容似乎并不一致,希望可以得到一個合理的解釋。

image.pngimage.png

提供的代碼中,對結構體使用了packed,后續(xù)也使用了__aligned__(4),但都會產生報錯


您好,RISC-V MCU 不支持非對齊訪問,rt_uint32_t是您定義的unsigned int 類型,默認32 bits對齊,然后強轉之后也是通過這種類型訪問,這種方式很可能引起硬件錯誤。

將變量類型重新定義,修改對齊即可。

typedef unsigned int rt_uint32_t __attribute__((aligned(1)));


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频