void draw_qr_code() { g_fill_white(); uint8_t mult = 7; uint8_t xoff = 44; uint8_t yoff = 4; lcd_set_cursor(xoff, yoff); lcd_write_index(0x022); uint16_t row, col, y, rowi, coli; y = yoff; for (row = 0; row < 33; row++) { for (rowi = 0; rowi < mult; rowi++) { lcd_end_gfx(); lcd_set_cursor(y, xoff); lcd_start_gfx(); for (col = 0; col < 33; col++) { for (coli = 0; coli < mult; coli++) { lcd_write_data_body(code[row*33 + col]); } } y++; } } lcd_end_gfx(); }
static void lcd_set_cursor(uint16_t x, uint16_t y){ uint16_t temp; temp = y; y = x; x = MAX_Y - 1 - temp; lcd_write_reg(0x0020, x); lcd_write_reg(0x0021, y); lcd_write_index(0x0022); }
void g_fill_white() { lcd_set_cursor(0, 0); lcd_write_index(0x022); uint16_t x, y; lcd_start_gfx(); for (x = 0; x < LCD_X; x++) { for (y = 0; y < LCD_Y; y++) { lcd_write_data_body(0xFFFF); } } lcd_end_gfx(); }
void g_fill_rgb() { lcd_set_cursor(0, 0); lcd_write_index(0x022); uint16_t x, y; lcd_select(); lcd_write_data_start(); for (x = 0; x < LCD_X; x++) { for (y = 0; y < LCD_Y; y++) { lcd_write_data_body((x << 8) | y); } } lcd_end_gfx(); }
__INLINE uint16_t lcd_read_reg(uint16_t reg){ lcd_write_index(reg); return lcd_read_data(); }
__INLINE void lcd_write_reg(uint16_t reg, uint16_t val){ lcd_write_index(reg); lcd_write_data(val); }