点亮SSD1306 这个我用的是IIC点亮的。用的是RT-Thread的软件包。
点击工程中的设置,调出添加软件包,然后搜索SSD1306,选通用的加入:(不是通用的好像加不上)
右键软件包,选配置项,如下设置:
注意我的版本选择V1.00,不为什么我是通过这个版本点亮地。
然后点选软件包旁边的硬件,如下设置:
管脚是板子上的8,9脚,本来是46 47为什么这么印,我也不晓得。
然后键入如下程序:
#include <rtthread.h>
#include <rtdevice.h>
#include "drv_gpio.h"
#include "ssd1306.h"
//#include "ssd1306_tests.h"
#define LED_PIN GET_PIN(0, 0)
#define BOTTOM GET_PIN(6,2)
int main(void)
{
rt_pin_mode(BOTTOM,PIN_MODE_INPUT_PULLUP);
rt_pin_mode(LED_PIN, PIN_MODE_OUTPUT);
rt_pin_mode(64,PIN_MODE_OUTPUT_OD);
rt_pin_mode(65,PIN_MODE_OUTPUT_OD);
rt_kprintf("Hello eeworld!!!");
ssd1306_Init();//添加代码,显示屏初始化
ssd1306_SetCursor(2, 6);//添加代码,设置显示光标位置
ssd1306_WriteString("Hello", Font_11x18, White);//添加代码,设置显示内容
ssd1306_SetCursor(12, 20);//添加代码,设置显示光标位置
ssd1306_WriteString("eeworld", Font_11x18, White);//添加代码,设置显示内容
ssd1306_UpdateScreen();////添加代码,更新显示屏信息
for (;;)
{
rt_pin_write(LED_PIN, PIN_HIGH);
rt_thread_mdelay(500);
rt_pin_write(LED_PIN, PIN_LOW);
rt_thread_mdelay(500);
if(rt_pin_read(BOTTOM) == 0)
{
rt_kprintf("pressing....");
while(rt_pin_read(BOTTOM));
}
}
}
运行结果如下: