標(biāo)題: STM32 OLED顯示屏實驗程序 [打印本頁]

作者: 樂觀的知覺    時間: 2018-12-29 17:13
標(biāo)題: STM32 OLED顯示屏實驗程序
oled顯示屏實驗

   
硬件資源:
    1,DS0(連接在PB5),DS1(連接在PE5)
    2,按鍵KEY0(PE4)/KEY1(PE3)/KEY2(PE2)/KEY_UP(PA0,也稱之為WK_UP)
    3,串口1(波特率:115200,PA9/PA10連接在板載USB轉(zhuǎn)串口芯片CH340上面)
    4,串口3(波特率:115200,PB10/PB11)
    5,通用定時器3、通用定時器5
   
實驗現(xiàn)象:
     OLED 顯示了三種尺寸的字符:24*12(ALIENTEK)、16*8(0.96’ OLED TEST)和12*6(剩下的內(nèi)容)。
     說明我們的實驗是成功的,實現(xiàn)了三種不同尺寸 ASCII 字符的顯示,在最后一行不停的顯示 ASCII 字符以及其碼值。

ALIENTEK STM32開發(fā)板SYSTEM文件夾,采用V3.5庫的頭文件(stm32f10x.h、system_stm32f10x.h和
core_cm3.h等幾個文件放在:SYSTEM\sys 文件夾里面),使得代碼可以完美移植到庫函數(shù)里面使用,
不過需要注意,在新建工程的時候,請在:Options for Target-->C/C++ 選項卡里面 Preprocessor
Symbols 欄定義你的STM32芯片容量。比如:ALIENTEK戰(zhàn)艦STM32開發(fā)板用戶,使用的是大容量的STM32
芯片,則在Define欄輸入:STM32F10X_HD

對于STM32F103系列芯片,設(shè)置原則如下:
16KB≤FLASH≤32KB       選擇:STM32F10X_LD
64KB≤FLASH≤128KB      選擇:STM32F10X_MD
256KB≤FLASH≤512KB     選擇:STM32F10X_HD
單片機源程序如下:
  1. /**************************************************************************
  2.         * 函 數(shù) 名:主函數(shù)
  3.         * 函數(shù)功能:
  4.         * 輸    入:無
  5.         * 輸    出:無
  6. *************************************************************************/
  7. #include "sys.h"        
  8. #include "delay.h"
  9. #include "led.h"
  10. #include "usart.h"
  11. #include "oled.h"

  12. int main(void)
  13. {        
  14.          u8 t=0;                    
  15.          Stm32_Clock_Init(9);        //系統(tǒng)時鐘設(shè)置
  16.         delay_init(72);                            //延時初始化
  17.         uart_init(72,115200);        //串口初始化
  18.         LED_Init();                                  //初始化與LED連接的硬件接口
  19.         OLED_Init();                        //初始化OLED
  20.   OLED_ShowString(0,0,"ALIENTEK",24);  
  21.         OLED_ShowString(0,24, "0.96' OLED TEST",16);  
  22.          OLED_ShowString(0,40,"ATOM 2015/1/14",12);  
  23.          OLED_ShowString(0,52,"ASCII:",12);  
  24.          OLED_ShowString(64,52,"CODE:",12);  
  25.         OLED_Refresh_Gram();        //更新顯示到OLED         
  26.         t=' ';  
  27.         while(1)
  28.         {               
  29.                 OLED_ShowChar(36,52,t,12,1);//顯示ASCII字符        
  30.                 OLED_ShowNum(94,52,t,3,12);        //顯示ASCII字符的碼值   
  31.                 OLED_Refresh_Gram();//更新顯示到OLED
  32.                 t++;
  33.                 if(t>'~')t=' ';  
  34.                 delay_ms(500);
  35.                 LED0=!LED0;
  36.         }        
  37. }
復(fù)制代碼

所有資料51hei提供下載:
oled顯示實驗.7z (238.57 KB, 下載次數(shù): 124)



作者: admin    時間: 2018-12-29 21:16
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣
作者: 混沌未開    時間: 2018-12-30 08:58
樓主,我想問一下
oled顯示字體變虛了,這是怎么回事啊

IMG20181230085105.jpg (592.85 KB, 下載次數(shù): 104)

IMG20181230085105.jpg

作者: wuxishun    時間: 2019-1-1 09:17
看不懂程序
作者: link01    時間: 2019-2-9 11:49
看的不是很懂啊
作者: huatuo    時間: 2019-8-19 11:17
看的不是很懂啊

作者: MQS1994    時間: 2019-9-21 15:32
希望能夠分享一下謝謝





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