找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1519|回復(fù): 2
收起左側(cè)

請教一個(gè)問題,困擾幾天了 調(diào)用OLED_Char導(dǎo)致USART通訊也亂了

[復(fù)制鏈接]
ID:1092152 發(fā)表于 2024-4-4 17:42 | 顯示全部樓層 |閱讀模式
用的板子是STM32F407ZGT6,源代碼是用的江科大老師的,源代碼沒有問題。我做的改變就是將ascall碼數(shù)組存進(jìn)w25q64中,要用的時(shí)候取出數(shù)組。單個(gè)的使用或者連續(xù)調(diào)用OLED_ShowChar函數(shù)沒有問題,但一旦放進(jìn)循環(huán)里面就會(huì)出錯(cuò)。弄了幾天,各種辦法也試過了,就是會(huì)出錯(cuò)。懇求大佬們指教
//一般OLED只會(huì)顯示第一個(gè)字符

調(diào)用OLED_ShowChar后USART出錯(cuò)(發(fā)送的數(shù)字跟OLED_ShowChar中的字符有關(guān),會(huì)一起變化,而且for循環(huán)不能結(jié)束

調(diào)用OLED_ShowChar后USART出錯(cuò)(發(fā)送的數(shù)字跟OLED_ShowChar中的字符有關(guān),會(huì)一起變化,而且for循環(huán)不能結(jié)束

試了好多別的字符,大部分都是直接結(jié)束

試了好多別的字符,大部分都是直接結(jié)束

這是OLED_ShowChar函數(shù)

這是OLED_ShowChar函數(shù)

這個(gè)是未調(diào)用OLED_ShowChar函數(shù)時(shí),USART發(fā)送正常

這個(gè)是未調(diào)用OLED_ShowChar函數(shù)時(shí),USART發(fā)送正常

kkkkk.zip

3.72 MB, 下載次數(shù): 1

出問題的源代碼

回復(fù)

使用道具 舉報(bào)

ID:1092152 發(fā)表于 2024-4-5 09:33 | 顯示全部樓層
解決了,在Show_Char函數(shù)內(nèi)部定義一個(gè)局部變量,把傳進(jìn)來的X坐標(biāo)賦值給它,然后使用局部變量是正常的。難道是X在經(jīng)過一次計(jì)算后內(nèi)存被釋放了,導(dǎo)致值變了?
回復(fù)

使用道具 舉報(bào)

ID:1092152 發(fā)表于 2024-4-6 09:32 | 顯示全部樓層
原來是在showchar函數(shù)里面定義了一個(gè)data作為數(shù)組的起始地址,卻沒有給予長度,導(dǎo)致數(shù)據(jù)覆蓋了
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表