欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
關(guān)于OLED顯示程序的問題 OLED_P8x16Str函數(shù) 如何識別我要顯示的字符串正確顯示出來
[打印本頁]
作者:
zhang32568
時間:
2024-4-12 15:45
標(biāo)題:
關(guān)于OLED顯示程序的問題 OLED_P8x16Str函數(shù) 如何識別我要顯示的字符串正確顯示出來
在學(xué)習(xí)OLED12864顯示。其中顯示字符串函數(shù)。
const unsigned char code F8X16[]= //
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,// 0
0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x30,0x00,0x00,0x00,//!1
0x00,0x10,0x0C,0x06,0x10,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//"2
}更多的代碼沒有貼上,大家知道意思。
函數(shù)
void OLED_P8x16Str(unsigned char x,unsigned char y,unsigned char ch[])
{
unsigned char c=0,i=0,j=0;
while (ch[j]!='\0')
{
c =ch[j]-32;
if(x>122){x=0;y++;}
OLED_Set_Pos(x,y);
for(i=0;i<8;i++)
OLED_WrDat(F8X16[c*16+i]);
OLED_Set_Pos(x,y+1);
for(i=0;i<8;i++)
OLED_WrDat(F8X16[c*16+i+8]);
x+=8;
j++;
}
}
主程序
void main()
{
OLED_P8x16Str(1,1,"123ABC")
while(1)
}
現(xiàn)在研究了半天,OLED_P8x16Str(1,1,"123ABC")函數(shù) 如何識別我要顯示的字符串正確顯示出來
作者:
bingbingbom
時間:
2024-4-12 21:19
你搜索查下 ASCII 代碼,字符是從32開始的,所以代碼里有-32這個。
作者:
bingbingbom
時間:
2024-4-12 21:25
字符代碼的可以用 PCtoLCD 字模提取等這些取字模工具生成代碼。也可以在設(shè)置那里了解下具體是怎么規(guī)格去生成的,每個點就是0,1的區(qū)別,點組成字就這樣。
作者:
jintaiyang
時間:
2024-4-12 21:35
改成這樣試試
while (ch[j]!='\0')
{
c =ch[j]-32;
if(x>122){x=0;y++;}
OLED_Set_Pos(x,y);
for(i=0;i<8;i++)
OLED_WrDat(F8X16[c*160x20+i]);
OLED_Set_Pos(x,y+1);
for(i=0;i<8;i++)
OLED_WrDat(F8X16[c*16-0x20+i+8]);
x+=8;
j++;
}
復(fù)制代碼
作者:
Graves
時間:
2024-4-13 09:22
while是把要顯示的字符串遍歷一遍,F(xiàn)8X16里面包含了各個字母的畫點字節(jié),按順序排列。查表法來一個個顯示出來,所以F8X16這個數(shù)組必須要排列正確,不能換位置
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1