久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

nrf51822移植stm32單片機 LCD程序的問題

查看數: 2568 | 評論數: 21 | 收藏 1
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2024-1-15 23:55

正文摘要:

單片機nrf51822,在移植stm32lcd的例程中發現程序報錯,報錯顯示如下 .\Peripheral\inc\FONT.h(446): error:  #144: a value of type "char [4]" cannot be used to initialize an entity of type ...

回復

ID:458247 發表于 2024-1-22 13:06
forcexda 發表于 2024-1-20 22:05
可是這個例程的字庫是調用存在rom里的字庫,不是外部字庫,根本沒有flash,我在stm32最小系統板上嘗試過 ...

還沒成功么
ID:384109 發表于 2024-1-21 09:27
你這里不同字號用了不同的函數,那么字體的字節數就固定了,但函數里確還要計算字節數,既然調試有問題,就把函數盡量簡化吧
ID:551154 發表于 2024-1-20 22:05
人中狼 發表于 2024-1-19 18:51
感覺還是你選的例程的問題,你選的例程是從外部字庫芯片取字體數據,并不適合你現在這種字庫的調用方式

可是這個例程的字庫是調用存在rom里的字庫,不是外部字庫,根本沒有flash,我在stm32最小系統板上嘗試過是正常的
ID:384109 發表于 2024-1-19 18:51
感覺還是你選的例程的問題,你選的例程是從外部字庫芯片取字體數據,并不適合你現在這種字庫的調用方式
ID:458247 發表于 2024-1-19 08:38
forcexda 發表于 2024-1-18 19:15
上圖是gb2312的運行情況,什么字符都不顯示

你改成GB2312,把project清空一遍,中文重新打一遍,然后重新編譯下載,有stlink的話,最好是仿真看看哪一步出了問題
ID:458247 發表于 2024-1-18 15:31
forcexda 發表于 2024-1-18 15:16
不刷圖片和其他文字的話,字符出來還是有問題,主要是間距問題

拍個效果圖看看,我看代碼沒看出有啥問題。另外你用utf-8的話,應該是無法顯示才對啊
ID:551154 發表于 2024-1-18 15:16
yzw846562238 發表于 2024-1-18 14:14
測試中文的時候,不要刷圖片、其他文字。不然你分不清是誰的問題。然后文字編碼格式要改成GB2312的,因為ut ...

不刷圖片和其他文字的話,字符出來還是有問題,主要是間距問題
ID:458247 發表于 2024-1-18 14:14
測試中文的時候,不要刷圖片、其他文字。不然你分不清是誰的問題。然后文字編碼格式要改成GB2312的,因為utf-8是三個字節的,跟你這個代碼沒法兼容。

BLE.7z

1.72 MB, 下載次數: 2

ID:458247 發表于 2024-1-18 13:57
forcexda 發表于 2024-1-17 19:36
代碼我打包上傳了,麻煩大佬幫我看看,ide用的是keil,版本5.23

容我看看
ID:551154 發表于 2024-1-18 11:20
人中狼 發表于 2024-1-18 10:55
好好參考一下原來的例程吧,感覺你把漢字顯示部分自己改復雜了

沒有哦,這里只做了移植,沒有改過漢字部分的代碼
ID:384109 發表于 2024-1-18 10:55
好好參考一下原來的例程吧,感覺你把漢字顯示部分自己改復雜了
ID:551154 發表于 2024-1-17 20:56
yzw846562238 發表于 2024-1-17 13:01
"unsigned char [2]"
  "???",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10 ...

似乎不行,雖然可以顯示了,但是顯示還是不算正常,無法正確顯示字符間距
ID:551154 發表于 2024-1-17 20:33
yzw846562238 發表于 2024-1-17 13:01
"unsigned char [2]"
  "???",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10 ...

剛才發現,也有gb2312的鍋,必須把gb2312改成utff-8,不然字符不顯示,大佬這個字符編碼有沒有萬金油的那種,就是所有的字符都可以用的那種【捂臉哭】,有點打腦闊
ID:551154 發表于 2024-1-17 20:22
yzw846562238 發表于 2024-1-17 13:01
"unsigned char [2]"
  "???",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10 ...

大佬,我順著你的思路,把unsigned char Index[2];        改成char Index[4];居然編譯通過了,然后正常顯示字符,但是我還是沒明白為什么[笑哭],大佬你看一下代碼,給我指點一下吧
ID:551154 發表于 2024-1-17 19:36
yzw846562238 發表于 2024-1-17 13:01
"unsigned char [2]"
  "???",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10 ...

代碼我打包上傳了,麻煩大佬幫我看看,ide用的是keil,版本5.23

BLE.7z

464.4 KB, 下載次數: 4

ID:458247 發表于 2024-1-17 13:01
forcexda 發表于 2024-1-16 21:18
忘了加代碼了,那個結構體是這樣的
typedef struct
{

"unsigned char [2]"
  "???",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10,0x84,0x10,

感覺是你的中文被解析成了4字節,其實gb2312應該是2字節的。
ID:458247 發表于 2024-1-17 13:00
forcexda 發表于 2024-1-16 21:18
忘了加代碼了,那個結構體是這樣的
typedef struct
{

是keil么,還是其他ide,代碼看著沒啥問題,要不把工程打包發上來看看?
ID:551154 發表于 2024-1-16 21:18
yzw846562238 發表于 2024-1-16 08:58
你用的keil?中文編碼格式用的是GB2312嗎?typFNT_GB16這個結構體類型定義的可能存在問題,在這個單片機編譯 ...

忘了加代碼了,那個結構體是這樣的
typedef struct
{
        unsigned char Index[2];       
        unsigned char Msk[32];
}typFNT_GB16;


const typFNT_GB16 tfont16[]={
"中",0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10,0x84,0x10,
0x84,0x10,0x84,0x10,0xFC,0x1F,0x84,0x10,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,/*"中",0*/
"景",0xF8,0x0F,0x08,0x08,0xF8,0x0F,0x08,0x08,0xF8,0x0F,0x80,0x00,0xFF,0x7F,0x00,0x00,
0xF8,0x0F,0x08,0x08,0x08,0x08,0xF8,0x0F,0x80,0x00,0x84,0x10,0xA2,0x20,0x40,0x00,/*"景",1*/
"園",0x00,0x00,0xFE,0x3F,0x02,0x20,0xF2,0x27,0x02,0x20,0x02,0x20,0xFA,0x2F,0x22,0x21,
0x22,0x21,0x22,0x21,0x12,0x29,0x12,0x29,0x0A,0x2E,0x02,0x20,0xFE,0x3F,0x02,0x20,/*"園",2*/
"電",0x80,0x00,0x80,0x00,0x80,0x00,0xFC,0x1F,0x84,0x10,0x84,0x10,0x84,0x10,0xFC,0x1F,
0x84,0x10,0x84,0x10,0x84,0x10,0xFC,0x1F,0x84,0x50,0x80,0x40,0x80,0x40,0x00,0x7F,/*"電",3*/
"子",0x00,0x00,0xFE,0x1F,0x00,0x08,0x00,0x04,0x00,0x02,0x80,0x01,0x80,0x00,0xFF,0x7F,
0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xA0,0x00,0x40,0x00,/*"子",4*/

};
ID:551154 發表于 2024-1-16 18:53
yzw846562238 發表于 2024-1-16 08:58
你用的keil?中文編碼格式用的是GB2312嗎?typFNT_GB16這個結構體類型定義的可能存在問題,在這個單片機編譯 ...

是GB2312,我需要修改成UTF-8嗎,大佬經驗好豐富,一眼就看出來是GB2312編碼格式了,麻煩大佬細說一下,我還是沒明白應該怎么修改
ID:458247 發表于 2024-1-16 08:58
你用的keil?中文編碼格式用的是GB2312嗎?typFNT_GB16這個結構體類型定義的可能存在問題,在這個單片機編譯器上不能這么寫

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚州视频在线 | 亚洲一区二区三区免费在线观看 | 国产精品高潮呻吟久久av野狼 | 国产精品毛片无码 | 亚洲日本视频 | 中文在线播放 | www..99re| 羞羞色在线观看 | 男女视频91 | jizz在线看片 | 亚洲综合在线一区二区 | 国产精品精品视频一区二区三区 | 午夜免费视频 | 精品国产99 | 国产日韩久久 | 日韩视频在线观看 | 中文字幕一二三区 | 999久久久久久久 | 91久久国产综合久久 | 色爱综合网 | 中文字幕av亚洲精品一部二部 | 精品国产欧美日韩不卡在线观看 | 亚洲国产高清免费 | 国产成人午夜高潮毛片 | 四虎成人免费电影 | 国产高清精品在线 | 国产一区视频在线 | 久久亚洲一区 | 精品久久久一区二区 | 国产精品99免费视频 | 夜夜摸夜夜操 | 一区精品国产欧美在线 | 91色站 | 国产精品欧美精品日韩精品 | 中文字幕av色| 亚洲区一| 超碰在线播 | 久久久久国产一区二区三区四区 | 色婷婷综合久久久中文字幕 | 四虎永久免费影院 | 91精品麻豆日日躁夜夜躁 |