标题: LPC55S69-EVK开发板 寻板小记 [打印本页]
作者: jinglixixi 时间: 2020-11-8 21:50
标题: LPC55S69-EVK开发板 寻板小记
受LPC55S69物趣系列的吸引,渐感LPC55S69系列开发板的强大潜能。先得到的是一款体型小巧的OKDEE1开发板,甚觉好用,其使用效果如图1所示。
图1 OKDEE1显示效果
然要想将它用于物趣系列上,就感到为体型而瘦身的不足,当有些功能需要时,却发现引脚被裁剪了!
无奈之余只好再寻LPC55S69-EVK开发板,本可早些寻得,然近月之期仍是杳无踪影,只好另求挚友相助,无他三日即见,深感欣然。
拆箱之见,如图2及图3所示。
图2 包装外观
图3箱内器件
上电后,其效果如图3所示,并无特殊之处,只是在安装驱动之后虚拟出串口。
图4 上电效果
图5 虚拟串口
物以尽其用为荣,特献小戏以谢挚友为乐。同样也愿其能对喜好者有所收益。
图6 mini版相框1
图7 mini版相框2
该mini版相框,以SPI接口的彩色OLED屏为显示器件,借用LPC55S69的强大内存即可显示图片,若存放更多的图片,则可倚仗板载的SD卡来完成。
图8 图片原图
OLED显示屏的引脚连接为:
CLK--- GPIO1_20
DIN--- GPIO1_21
RST--- GPIO1_2
D/C--- GPIO1_3
CS --- GPIO0_26
BLK--- GPIO1_0
相关引脚输出高低电平的语句定义为:
#define OLED_SCLK_Clr() GPIO_PinWrite(GPIO, 1u, 20u, 0)//CLK
#define OLED_SCLK_Set() GPIO_PinWrite(GPIO, 1u, 20u, 1)
#define OLED_SDIN_Clr() GPIO_PinWrite(GPIO, 1u, 21u, 0)//DIN
#define OLED_SDIN_Set() GPIO_PinWrite(GPIO, 1u, 21u, 1)
#define OLED_RST_Clr() GPIO_PinWrite(GPIO, 1u, 2u, 0) //RES
#define OLED_RST_Set() GPIO_PinWrite(GPIO, 1u, 2u, 1)
#define OLED_DC_Clr() GPIO_PinWrite(GPIO, 1u, 3u, 0) //DC
#define OLED_DC_Set() GPIO_PinWrite(GPIO, 1u, 3u, 1)
#define OLED_CS_Clr() GPIO_PinWrite(GPIO, 0u, 26u, 0) //CS
#define OLED_CS_Set() GPIO_PinWrite(GPIO, 0u, 26u, 1)
#define OLED_BLK_Clr() GPIO_PinWrite(GPIO, 1u, 1u, 0) //BLK
#define OLED_BLK_Set() GPIO_PinWrite(GPIO, 1u, 1u, 1)
OLED屏的引脚配置函数为:
- void app_oled_init(void)
- {
- gpio_pin_config_t gpioPinConfig;
- gpioPinConfig.pinDirection = kGPIO_DigitalOutput;
- gpioPinConfig.outputLogic = 1u;
- GPIO_PinInit (GPIO, 1u, 20u, &gpioPinConfig);
- GPIO_PinInit (GPIO, 1u, 21u, &gpioPinConfig);
- GPIO_PinInit (GPIO, 1u, 2u, &gpioPinConfig);
- GPIO_PinInit (GPIO, 1u, 3u, &gpioPinConfig);
- GPIO_PinInit (GPIO, 0u, 26u, &gpioPinConfig);
- GPIO_PinInit (GPIO, 1u, 1u, &gpioPinConfig);
- OLED_BLK_Set();
- }
复制代码
图片的显示函数为:
- void LCD_ShowPicturea(u16 x1,u16 y1,u16 x2,u16 y2)
- {
- int i;
- LCD_Address_Set(x1,y1,x2,y2);
- for(i=0;i<12800;i++)
- {
- LCD_WR_DATA8(gImage_fj[i*2]);
- LCD_WR_DATA8(gImage_fj[i*2+1]);
- }
- }
复制代码
显示效果的主程序为:
- int main(void)
- {
- POWER_SetBodVbatLevel(kPOWER_BodVbatLevel1650mv, kPOWER_BodHystLevel50mv, false);
- BOARD_BootClockFROHF96M();
- CLOCK_EnableClock(kCLOCK_Iocon);
- SystemCoreClockUpdate();
- app_oled_init();
- Lcd_Init();
- LCD_Clear(BLACK);
- LCD_ShowPicturea(0,0,159,79);
- while(1);
- }
复制代码
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |