summaryrefslogtreecommitdiff
path: root/drivers/lcd
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/lcd')
-rw-r--r--drivers/lcd/hd44780.c48
-rw-r--r--drivers/lcd/st7565.c16
2 files changed, 32 insertions, 32 deletions
diff --git a/drivers/lcd/hd44780.c b/drivers/lcd/hd44780.c
index ccc50117ab..9b4e2f0226 100644
--- a/drivers/lcd/hd44780.c
+++ b/drivers/lcd/hd44780.c
@@ -57,67 +57,67 @@ static const pin_t data_pins[4] = HD44780_DATA_PINS;
57#define HD44780_ENABLE_DELAY_US 1 57#define HD44780_ENABLE_DELAY_US 1
58 58
59static void hd44780_latch(void) { 59static void hd44780_latch(void) {
60 writePinHigh(HD44780_E_PIN); 60 gpio_write_pin_high(HD44780_E_PIN);
61 wait_us(HD44780_ENABLE_DELAY_US); 61 wait_us(HD44780_ENABLE_DELAY_US);
62 writePinLow(HD44780_E_PIN); 62 gpio_write_pin_low(HD44780_E_PIN);
63} 63}
64 64
65void hd44780_write(uint8_t data, bool isData) { 65void hd44780_write(uint8_t data, bool isData) {
66 writePin(HD44780_RS_PIN, isData); 66 gpio_write_pin(HD44780_RS_PIN, isData);
67 writePinLow(HD44780_RW_PIN); 67 gpio_write_pin_low(HD44780_RW_PIN);
68 68
69 for (int i = 0; i < 4; i++) { 69 for (int i = 0; i < 4; i++) {
70 setPinOutput(data_pins[i]); 70 gpio_set_pin_output(data_pins[i]);
71 } 71 }
72 72
73 // Write high nibble 73 // Write high nibble
74 for (int i = 0; i < 4; i++) { 74 for (int i = 0; i < 4; i++) {
75 writePin(data_pins[i], (data >> 4) & (1 << i)); 75 gpio_write_pin(data_pins[i], (data >> 4) & (1 << i));
76 } 76 }
77 hd44780_latch(); 77 hd44780_latch();
78 78
79 // Write low nibble 79 // Write low nibble
80 for (int i = 0; i < 4; i++) { 80 for (int i = 0; i < 4; i++) {
81 writePin(data_pins[i], data & (1 << i)); 81 gpio_write_pin(data_pins[i], data & (1 << i));
82 } 82 }
83 hd44780_latch(); 83 hd44780_latch();
84 84
85 for (int i = 0; i < 4; i++) { 85 for (int i = 0; i < 4; i++) {
86 writePinHigh(data_pins[i]); 86 gpio_write_pin_high(data_pins[i]);
87 } 87 }
88} 88}
89 89
90uint8_t hd44780_read(bool isData) { 90uint8_t hd44780_read(bool isData) {
91 uint8_t data = 0; 91 uint8_t data = 0;
92 92
93 writePin(HD44780_RS_PIN, isData); 93 gpio_write_pin(HD44780_RS_PIN, isData);
94 writePinHigh(HD44780_RW_PIN); 94 gpio_write_pin_high(HD44780_RW_PIN);
95 95
96 for (int i = 0; i < 4; i++) { 96 for (int i = 0; i < 4; i++) {
97 setPinInput(data_pins[i]); 97 gpio_set_pin_input(data_pins[i]);
98 } 98 }
99 99
100 writePinHigh(HD44780_E_PIN); 100 gpio_write_pin_high(HD44780_E_PIN);
101 wait_us(HD44780_ENABLE_DELAY_US); 101 wait_us(HD44780_ENABLE_DELAY_US);
102 102
103 // Read high nibble 103 // Read high nibble
104 for (int i = 0; i < 4; i++) { 104 for (int i = 0; i < 4; i++) {
105 data |= (readPin(data_pins[i]) << i); 105 data |= (gpio_read_pin(data_pins[i]) << i);
106 } 106 }
107 107
108 data <<= 4; 108 data <<= 4;
109 109
110 writePinLow(HD44780_E_PIN); 110 gpio_write_pin_low(HD44780_E_PIN);
111 wait_us(HD44780_ENABLE_DELAY_US); 111 wait_us(HD44780_ENABLE_DELAY_US);
112 writePinHigh(HD44780_E_PIN); 112 gpio_write_pin_high(HD44780_E_PIN);
113 wait_us(HD44780_ENABLE_DELAY_US); 113 wait_us(HD44780_ENABLE_DELAY_US);
114 114
115 // Read low nibble 115 // Read low nibble
116 for (int i = 0; i < 4; i++) { 116 for (int i = 0; i < 4; i++) {
117 data |= (readPin(data_pins[i]) << i); 117 data |= (gpio_read_pin(data_pins[i]) << i);
118 } 118 }
119 119
120 writePinLow(HD44780_E_PIN); 120 gpio_write_pin_low(HD44780_E_PIN);
121 121
122 return data; 122 return data;
123} 123}
@@ -171,20 +171,20 @@ void hd44780_set_ddram_address(uint8_t address) {
171} 171}
172 172
173void hd44780_init(bool cursor, bool blink) { 173void hd44780_init(bool cursor, bool blink) {
174 setPinOutput(HD44780_RS_PIN); 174 gpio_set_pin_output(HD44780_RS_PIN);
175 setPinOutput(HD44780_RW_PIN); 175 gpio_set_pin_output(HD44780_RW_PIN);
176 setPinOutput(HD44780_E_PIN); 176 gpio_set_pin_output(HD44780_E_PIN);
177 177
178 for (int i = 0; i < 4; i++) { 178 for (int i = 0; i < 4; i++) {
179 setPinOutput(data_pins[i]); 179 gpio_set_pin_output(data_pins[i]);
180 } 180 }
181 181
182 wait_ms(HD44780_INIT_DELAY_MS); 182 wait_ms(HD44780_INIT_DELAY_MS);
183 183
184 // Manually configure for 4-bit mode - can't use hd44780_command() yet 184 // Manually configure for 4-bit mode - can't use hd44780_command() yet
185 // HD44780U datasheet, Fig. 24 (p46) 185 // HD44780U datasheet, Fig. 24 (p46)
186 writePinHigh(data_pins[0]); // Function set 186 gpio_write_pin_high(data_pins[0]); // Function set
187 writePinHigh(data_pins[1]); // DL = 1 187 gpio_write_pin_high(data_pins[1]); // DL = 1
188 hd44780_latch(); 188 hd44780_latch();
189 wait_ms(5); 189 wait_ms(5);
190 // Send again 190 // Send again
@@ -194,7 +194,7 @@ void hd44780_init(bool cursor, bool blink) {
194 hd44780_latch(); 194 hd44780_latch();
195 wait_us(64); 195 wait_us(64);
196 196
197 writePinLow(data_pins[0]); // DL = 0 197 gpio_write_pin_low(data_pins[0]); // DL = 0
198 hd44780_latch(); 198 hd44780_latch();
199 wait_us(64); 199 wait_us(64);
200 200
diff --git a/drivers/lcd/st7565.c b/drivers/lcd/st7565.c
index 47ee02804b..4fce40edbe 100644
--- a/drivers/lcd/st7565.c
+++ b/drivers/lcd/st7565.c
@@ -92,10 +92,10 @@ static void InvertCharacter(uint8_t *cursor) {
92} 92}
93 93
94bool st7565_init(display_rotation_t rotation) { 94bool st7565_init(display_rotation_t rotation) {
95 setPinOutput(ST7565_A0_PIN); 95 gpio_set_pin_output(ST7565_A0_PIN);
96 writePinHigh(ST7565_A0_PIN); 96 gpio_write_pin_high(ST7565_A0_PIN);
97 setPinOutput(ST7565_RST_PIN); 97 gpio_set_pin_output(ST7565_RST_PIN);
98 writePinHigh(ST7565_RST_PIN); 98 gpio_write_pin_high(ST7565_RST_PIN);
99 99
100 st7565_rotation = st7565_init_user(rotation); 100 st7565_rotation = st7565_init_user(rotation);
101 101
@@ -488,18 +488,18 @@ void st7565_task(void) {
488__attribute__((weak)) void st7565_task_user(void) {} 488__attribute__((weak)) void st7565_task_user(void) {}
489 489
490void st7565_reset(void) { 490void st7565_reset(void) {
491 writePinLow(ST7565_RST_PIN); 491 gpio_write_pin_low(ST7565_RST_PIN);
492 wait_ms(20); 492 wait_ms(20);
493 writePinHigh(ST7565_RST_PIN); 493 gpio_write_pin_high(ST7565_RST_PIN);
494 wait_ms(20); 494 wait_ms(20);
495} 495}
496 496
497spi_status_t st7565_send_cmd(uint8_t cmd) { 497spi_status_t st7565_send_cmd(uint8_t cmd) {
498 writePinLow(ST7565_A0_PIN); 498 gpio_write_pin_low(ST7565_A0_PIN);
499 return spi_write(cmd); 499 return spi_write(cmd);
500} 500}
501 501
502spi_status_t st7565_send_data(uint8_t *data, uint16_t length) { 502spi_status_t st7565_send_data(uint8_t *data, uint16_t length) {
503 writePinHigh(ST7565_A0_PIN); 503 gpio_write_pin_high(ST7565_A0_PIN);
504 return spi_transmit(data, length); 504 return spi_transmit(data, length);
505} 505}