From ff19c0aa0f05a42aa2533842a097c392d10c6dd7 Mon Sep 17 00:00:00 2001 From: atc1441 Date: Tue, 15 Feb 2022 16:18:27 +0100 Subject: [PATCH] Better partial refresh, better minute refresh --- Firmware/ATC_Paper.bin | Bin 89580 -> 89824 bytes Firmware/ATC_Paper.bin.bak | Bin 131072 -> 0 bytes Firmware/src/app.c | 16 ++++++++-------- Firmware/src/epd.c | 4 +--- Firmware/src/nfc.c | 8 ++++++++ 5 files changed, 17 insertions(+), 11 deletions(-) delete mode 100644 Firmware/ATC_Paper.bin.bak diff --git a/Firmware/ATC_Paper.bin b/Firmware/ATC_Paper.bin index ec3b681acef6a5c047182d9b933948e9906fa2df..514321025cef3357b1c60d671a1ec088113b0b63 100644 GIT binary patch delta 10463 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 D1pwZ> diff --git a/Firmware/ATC_Paper.bin.bak b/Firmware/ATC_Paper.bin.bak deleted file mode 100644 index b4f4515e363b5ca5a892cfa676ddb40b1599064b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131072 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

{Pf(|qx4gfLcADJ$e9(ZX&n0Zk(s{oWVk5!={S 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�#*R_zio% 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 LAW$H%Hw6A4Yn|My diff --git a/Firmware/src/app.c b/Firmware/src/app.c index 80cf5c8..ed87f17 100644 --- a/Firmware/src/app.c +++ b/Firmware/src/app.c @@ -18,8 +18,8 @@ RAM uint8_t battery_level; RAM uint16_t battery_mv; RAM int16_t temperature; -RAM uint8_t count_epd_refresh = 60; -RAM uint8_t hour_refresh = 0; +RAM uint8_t hour_refresh = 100; +RAM uint8_t minute_refresh = 100; // Settings extern settings_struct settings; @@ -53,18 +53,18 @@ _attribute_ram_code_ void main_loop(void) battery_mv = get_battery_mv(); battery_level = get_battery_level(battery_mv); temperature = get_temperature_c(); - set_adv_data(EPD_read_temp()*10, battery_level, battery_mv); + set_adv_data(EPD_read_temp() * 10, battery_level, battery_mv); ble_send_battery(battery_level); - ble_send_temp(EPD_read_temp()*10); + ble_send_temp(EPD_read_temp() * 10); } - if (time_reached_period(Timer_CH_2, 60)) + uint8_t current_minute = (get_time() / 60) % 60; + if (current_minute != minute_refresh) { - count_epd_refresh++; + minute_refresh = current_minute; uint8_t current_hour = ((get_time() / 60) / 60) % 24; - if ((count_epd_refresh > 60) || (current_hour != hour_refresh)) + if (current_hour != hour_refresh) { - count_epd_refresh = 0; hour_refresh = current_hour; epd_display(get_time(), battery_mv, temperature, 1); } diff --git a/Firmware/src/epd.c b/Firmware/src/epd.c index 7b4aef9..0149e56 100755 --- a/Firmware/src/epd.c +++ b/Firmware/src/epd.c @@ -21,7 +21,6 @@ RAM uint8_t epd_temperature_is_read = 0; RAM uint8_t epd_temperature = 0; uint8_t epd_buffer[epd_buffer_size]; -RAM uint8_t epd_buffer_old[epd_buffer_size]; uint8_t epd_temp[epd_buffer_size]; // for OneBitDisplay to draw into OBDISP obd; // virtual display structure TIFFIMAGE tiff; @@ -275,7 +274,7 @@ _attribute_ram_code_ void EPD_Display(unsigned char *image, int size, uint8_t fu int i; for (i = 0; i < size; i++) { - EPD_WriteData(epd_buffer_old[i]); + EPD_WriteData(~epd_buffer[i]); } } // load image data to EPD @@ -283,7 +282,6 @@ _attribute_ram_code_ void EPD_Display(unsigned char *image, int size, uint8_t fu // trigger display refresh EPD_WriteCmd(0x12); - memcpy(epd_buffer_old, epd_buffer, size); epd_update_state = 1; } diff --git a/Firmware/src/nfc.c b/Firmware/src/nfc.c index 62b574c..8add246 100644 --- a/Firmware/src/nfc.c +++ b/Firmware/src/nfc.c @@ -6,8 +6,11 @@ #include "nfc.h" #include "main.h" +uint8_t nfc_reset[] = {0x03, 0xb5, 0xa0}; + _attribute_ram_code_ void init_nfc(void) { + gpio_write(NFC_CS, 1); gpio_set_func(NFC_CS, AS_GPIO); gpio_set_output_en(NFC_CS, 1); gpio_set_input_en(NFC_CS, 0); @@ -17,4 +20,9 @@ _attribute_ram_code_ void init_nfc(void) gpio_set_output_en(NFC_IRQ, 0); gpio_set_input_en(NFC_IRQ, 1); gpio_setup_up_down_resistor(NFC_IRQ, PM_PIN_PULLUP_10K); + + gpio_write(NFC_CS, 0); + sleep_us(500); + send_i2c(0xae, nfc_reset, sizeof(nfc_reset)); + gpio_write(NFC_CS, 1); }