U8g2简介U8g2图形库是一个用于嵌入式设备的单色图形库,支持多种单色OLED和LCD显示控制器,如SSD1306,ST7920等。U8g2库可以从Arduino IDE的库管理器安装,也可以移植到STM32等平台。U8g2库支持三种绘图模式:全屏缓存模式,页面缓存模式和U8x8字符模式。U8g2库的使用需要选择合适的构造函数,初始化显示器,设置引脚号,编写回调函数和绘图指令。 U8g2图形库的优点是可以使用多种字体,支持中文显示,提供丰富的图形程序,如线条,框,圆,位图等。U8g2图形库的缺点是需要占用一定的内存空间,速度较慢,不支持无控制器的显示屏。U8g2图形库的应用场景有:显示传感器数据,制作时钟,显示菜单,显示动画等。U8g2图形库是一个功能强大,兼容性好,易于使用的单色图形库。
效果图
关于晶振的问题我晶振用的8Mhz的,时钟树配置那PLL参数我修改过,使MCU工作主频168Mhz,如果换用其他频率的晶振需要修改参数,具体怎么改自行百度。
修改的地方如下: stm32f4xx.h 文件的137行。
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */ // 这里的8000000改成你的晶振频率,单位Hz
system_stm32f4xx.c 文件的364行和394行。
#if defined(STM32F40_41xxx) || defined(STM32F427_437xx) || defined(STM32F429_439xx) || defined(STM32F401xx) || defined(STM32F469_479xx) /* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLL_M) * PLL_N */ #define PLL_M 4 // 这里4对应下面时钟树图片中的 /M 的 /4
#if defined (STM32F40_41xxx)
#define PLL_N 168
// 这里168对应下面时钟树图片中的 *N 的 x168
元件购买地址代码 |