1、增加墨水屏显示:
创建epaper文件夹并加入下图所示的spi驱动、墨水屏显示、绘画、字库等:
2、main.c的实现:
#include
#include
#include "sensor_renesas_hs300x.h"
#include "drv_gpio.h"
#include
#include "Display_EPD_w21.h"
#include "Display_EPD_W21_spi.h"
#include "fonts.h"
#include "GUI_Paint.h"
#define LED_PIN GET_PIN(0, 0)
#define USE_SECONDS_FOR_ALARM 10
#define LONG_GLITCH_DELAY_MS 100u /* in ms /
#define RTC_INTERRUPT_PRIORITY 3u
void set_rtc_alarm_date_time(void);
cyhal_rtc_t rtc_obj;
unsigned char BlackImage[4736];//Define canvas space
extern struct hs300x_device temp_humi_dev;
int main(void)
{
cy_rslt_t result;
float temp, humi;
uint8_t show_str[20] = {0};
EPD_GPIO_Init(); //EPD GPIO initialization
__enable_irq();
rt_pin_mode(LED_PIN, PIN_MODE_OUTPUT);
Paint_NewImage(BlackImage, 128, 296, 270, WHITE); //Set screen size and display orientation
Paint_SelectImage(BlackImage);//Set the virtual canvas data storage location
Paint_NewImage(BlackImage, EPD_WIDTH, EPD_HEIGHT, 270, WHITE); //Set screen size and display orientation
Paint_SelectImage(BlackImage);//Set the virtual canvas data storage location
EPD_DeepSleep();
/ Initialize RTC /
cyhal_rtc_enable_event(&rtc_obj, CYHAL_RTC_ALARM, RTC_INTERRUPT_PRIORITY, true);
set_rtc_alarm_date_time();
for (;;)
{
/ Go to deep sleep /
cyhal_syspm_deepsleep();
set_rtc_alarm_date_time();
hs300x_read_data(&temp_humi_dev, &humi, &temp);
EPD_HW_Init(); //Electronic paper initialization
EPD_HW_Init_GUI(); //EPD init GUI
Paint_Clear(WHITE);
sprintf(show_str,"温度%02d.%02d℃",(int)temp, (int)(temp100)%100);
Paint_DrawString_CN(40,0,show_str, &Font24CN, WHITE, BLACK);
sprintf(show_str,"湿度%02d.%02d%%",(int)humi, (int)(humi*100)%100);
Paint_DrawString_CN(40,40,show_str, &Font24CN, WHITE, BLACK);
EPD_Display(BlackImage); //display image
EPD_DeepSleep();//EPD_DeepSleep,Sleep instruction is necessary, please do not delete!!!
}
}
实现的效果:
上传开发板以后工作电流为19MA,休眠电流为450uA左右。
-
SPI接口
+关注
关注
0文章
260浏览量
34621 -
RTC
+关注
关注
2文章
544浏览量
67134 -
GPIO
+关注
关注
16文章
1217浏览量
52480 -
温湿度计
+关注
关注
1文章
23浏览量
8181
发布评论请先 登录
相关推荐
基于PSoC62开发板的智能室内环境监测系统
如何在PSoC62 Evaluation kit开发板上运行RT-Thread呢?
![如何在<b class='flag-5'>PSoC62</b> Evaluation kit开发板上运行RT-Thread呢?](https://file1.elecfans.com/web2/M00/C1/40/wKgZomXdTiCALqQxAABSO4fFgn4963.jpg)
![](https://file.elecfans.com/web2/M00/AA/09/pYYBAGR7QxqAHk-AAAJ7Zw4oCD4091.png)
英飞凌PSoC62 实现超低功耗温湿度计
TDR测试过程静电危害及其预防
![TDR<b class='flag-5'>测试过程</b>静电危害及其预防](https://file1.elecfans.com//web2/M00/A6/17/wKgZomUMO7CAeru4AAAUjCN50-A131.jpg)
手动撕破强度测试仪测试过程的详细解析
英飞凌联合 RT-Thread 发布 PSoC™ 62 with CAPSENSE ™ evaluation kit开发板
防静电ESD测试过程展示
![防静电ESD<b class='flag-5'>测试过程</b>展示](https://file.elecfans.com/web2/M00/02/C4/pYYBAGDSzfeAP86XAAAO5PbqJbI698.png)
基于PSOC62 CAPSENSE evaluation kit的远程空调遥控器设计
![基于<b class='flag-5'>PSOC62</b> CAPSENSE evaluation kit的远程空调遥控器设计](https://file1.elecfans.com/web2/M00/8D/2C/wKgZomS3i6GACADQAAC2v1BiYVA672.jpg)
评论