標(biāo)題: 基于STM32單片機(jī)設(shè)計(jì)OLED顯示屏字體大小 [打印本頁]

作者: 自己想安靜    時間: 2024-4-25 09:28
標(biāo)題: 基于STM32單片機(jī)設(shè)計(jì)OLED顯示屏字體大小
請各位大佬們幫忙看看FontSize為字體大小,應(yīng)該如何修改才能在主函數(shù)中自己設(shè)定字體大小

  1. /**
  2.   * @brief  OLED顯示數(shù)字(十進(jìn)制,正數(shù))
  3.   * @param  Line 起始行位置,范圍:1~4
  4.   * @param  Column 起始列位置,范圍:1~16
  5.   * @param  Number 要顯示的數(shù)字,范圍:0~4294967295
  6.   * @param  Length 要顯示數(shù)字的長度,范圍:1~10
  7.   * @retval 無
  8.   */
  9. void OLED_ShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length,uint8_t FontSize)
  10. {
  11.         uint8_t i;
  12.         for (i = 0; i < Length; i++)                                                        
  13.         {
  14.                 OLED_ShowChar(Line, Column + i, Number / OLED_Pow(10, Length - i - 1) % 10 + '0', FontSize);
  15.         }
  16. }

  17. void OLED_ShowChinese(uint8_t Line,uint8_t Column,uint8_t num)
  18. {
  19.         uint8_t i;
  20.         OLED_SetCursor((Line-1)*2,(Column-1)*16);
  21.         for(i=0;i<16;i++)
  22.         {
  23.                 OLED_WriteData(Font_Chinese[2*num][i]);
  24.         }
  25.         OLED_SetCursor((Line-1)*2+1,(Column-1)*16);
  26.         for(i=0;i<16;i++)
  27.         {
  28.                 OLED_WriteData(Font_Chinese[2*num+1][i]);
  29.         }
  30. }
復(fù)制代碼

作者: devcang    時間: 2024-4-25 12:03
這是點(diǎn)陣的,要有對應(yīng)的大小的點(diǎn)陣字模,才好顯示




作者: yzwzfyz    時間: 2024-4-25 15:53
與程序無關(guān),主要是字庫。
1、基礎(chǔ)字庫:直接從字庫從取點(diǎn)陣,丟到OLED對應(yīng)的點(diǎn)上。
2、大小改變:選擇不同大小的字庫,丟到OLED對應(yīng)的點(diǎn)上。
3、以基礎(chǔ)字庫為基準(zhǔn),改變大小,這就需要你建立一個縮小、放大的方案。將方案寫成程序,經(jīng)程序計(jì)算后丟到OLED對應(yīng)的點(diǎn)上到顯示。
估計(jì)你是調(diào)用別人現(xiàn)成的函數(shù),自己對原理又不懂,而別人的函數(shù)不全面,或者你還不理解這些函數(shù),故有此問。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1