aboutsummaryrefslogtreecommitdiff
path: root/docs/feature_hd44780.md
diff options
context:
space:
mode:
authorNick Brassel <[email protected]>2024-05-30 12:00:41 +1000
committerGitHub <[email protected]>2024-05-30 12:00:41 +1000
commit6ef97172889ccd5db376b2a9f8825489e24fdac4 (patch)
tree334e3bf41c8554d4bee73a140822f95f60eb64e9 /docs/feature_hd44780.md
parent395766657ff98a4b1fd0dcba5917557f8acbb9e4 (diff)
downloadqmk_firmware-6ef97172889ccd5db376b2a9f8825489e24fdac4.tar.gz
qmk_firmware-6ef97172889ccd5db376b2a9f8825489e24fdac4.zip
Vitepress conversion of docs. (#23795)
Diffstat (limited to 'docs/feature_hd44780.md')
-rw-r--r--docs/feature_hd44780.md84
1 files changed, 42 insertions, 42 deletions
diff --git a/docs/feature_hd44780.md b/docs/feature_hd44780.md
index dcbd656bbe..6b4209333b 100644
--- a/docs/feature_hd44780.md
+++ b/docs/feature_hd44780.md
@@ -1,6 +1,6 @@
-# HD44780 LCD Driver :id=hd44780-lcd-driver
+# HD44780 LCD Driver {#hd44780-lcd-driver}
-## Supported Hardware :id=supported-hardware
+## Supported Hardware {#supported-hardware}
LCD modules using [HD44780U](https://www.sparkfun.com/datasheets/LCD/HD44780.pdf) IC or equivalent, communicating in 4-bit mode.
@@ -11,7 +11,7 @@ LCD modules using [HD44780U](https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
To run these modules at 3.3V, an additional MAX660 voltage converter IC must be soldered on, along with two 10µF capacitors. See [this page](https://www.codrey.com/electronic-circuits/hack-your-16x2-lcd/) for more details.
-## Usage :id=usage
+## Usage {#usage}
Add the following to your `rules.mk`:
@@ -19,7 +19,7 @@ Add the following to your `rules.mk`:
HD44780_ENABLE = yes
```
-## Basic Configuration :id=basic-configuration
+## Basic Configuration {#basic-configuration}
Add the following to your `config.h`:
@@ -33,9 +33,9 @@ Add the following to your `config.h`:
|`HD44780_DISPLAY_LINES`|`2` |The number of visible lines on the display |
|`HD44780_WRAP_LINES` |*Not defined* |If defined, input characters will wrap to the next line |
-## Examples :id=examples
+## Examples {#examples}
-### Hello World :id=example-hello-world
+### Hello World {#example-hello-world}
Add the following to your `keymap.c`:
@@ -46,7 +46,7 @@ void keyboard_post_init_user(void) {
}
```
-### Custom Character Definition :id=example-custom-character
+### Custom Character Definition {#example-custom-character}
Up to eight custom characters can be defined. This data is stored in the Character Generator RAM (CGRAM), and is not persistent across power cycles.
@@ -77,15 +77,15 @@ void keyboard_post_init_user(void) {
}
```
-## API :id=api
+## API {#api}
-### `void hd44780_init(bool cursor, bool blink)` :id=api-hd44780-init
+### `void hd44780_init(bool cursor, bool blink)` {#api-hd44780-init}
Initialize the display.
This function should be called only once, before any of the other functions can be called.
-#### Arguments :id=api-hd44780-init-arguments
+#### Arguments {#api-hd44780-init-arguments}
- `bool cursor`
Whether to show the cursor.
@@ -94,7 +94,7 @@ This function should be called only once, before any of the other functions can
---
-### `void hd44780_clear(void)` :id=api-hd44780-clear
+### `void hd44780_clear(void)` {#api-hd44780-clear}
Clear the display.
@@ -102,7 +102,7 @@ This function is called on init.
---
-### `void hd44780_home(void)` :id=api-hd44780-home
+### `void hd44780_home(void)` {#api-hd44780-home}
Move the cursor to the home position.
@@ -110,13 +110,13 @@ This function is called on init.
---
-### `void hd44780_on(bool cursor, bool blink)` :id=api-hd44780-on
+### `void hd44780_on(bool cursor, bool blink)` {#api-hd44780-on}
Turn the display on, and/or set the cursor properties.
This function is called on init.
-#### Arguments :id=api-hd44780-on-arguments
+#### Arguments {#api-hd44780-on-arguments}
- `bool cursor`
Whether to show the cursor.
@@ -125,17 +125,17 @@ This function is called on init.
---
-### `void hd44780_off(void)` :id=api-hd44780-off
+### `void hd44780_off(void)` {#api-hd44780-off}
Turn the display off.
---
-### `void hd44780_set_cursor(uint8_t col, uint8_t line)` :id=api-hd44780-set-cursor
+### `void hd44780_set_cursor(uint8_t col, uint8_t line)` {#api-hd44780-set-cursor}
Move the cursor to the specified position on the display.
-#### Arguments :id=api-hd44780-set-cursor-arguments
+#### Arguments {#api-hd44780-set-cursor-arguments}
- `uint8_t col`
The column number to move to, from 0 to 15 on 16x2 displays.
@@ -144,48 +144,48 @@ Move the cursor to the specified position on the display.
---
-### `void hd44780_putc(char c)` :id=api-hd44780-putc
+### `void hd44780_putc(char c)` {#api-hd44780-putc}
Print a character to the display. The newline character `\n` will move the cursor to the start of the next line.
The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set.
-#### Arguments :id=api-hd44780-putc-arguments
+#### Arguments {#api-hd44780-putc-arguments}
- `char c`
The character to print.
---
-### `void hd44780_puts(const char *s)` :id=api-hd44780-puts
+### `void hd44780_puts(const char *s)` {#api-hd44780-puts}
Print a string of characters to the display.
-#### Arguments :id=api-hd44780-puts-arguments
+#### Arguments {#api-hd44780-puts-arguments}
- `const char *s`
The string to print.
---
-### `void hd44780_puts_P(const char *s)` :id=api-hd44780-puts-p
+### `void hd44780_puts_P(const char *s)` {#api-hd44780-puts-p}
Print a string of characters from PROGMEM to the display.
On ARM devices, this function is simply an alias of `hd44780_puts()`.
-#### Arguments :id=api-hd44780-puts-p-arguments
+#### Arguments {#api-hd44780-puts-p-arguments}
- `const char *s`
The PROGMEM string to print (ie. `PSTR("Hello")`).
---
-### `void hd44780_define_char(uint8_t index, uint8_t *data)` :id=api-hd44780-define-char
+### `void hd44780_define_char(uint8_t index, uint8_t *data)` {#api-hd44780-define-char}
Define a custom character.
-#### Arguments :id=api-hd44780-define-char-arguments
+#### Arguments {#api-hd44780-define-char-arguments}
- `uint8_t index`
The index of the custom character to define, from 0 to 7.
@@ -194,13 +194,13 @@ Define a custom character.
---
-### `void hd44780_define_char_P(uint8_t index, const uint8_t *data)` :id=api-hd44780-define-char-p
+### `void hd44780_define_char_P(uint8_t index, const uint8_t *data)` {#api-hd44780-define-char-p}
Define a custom character from PROGMEM.
On ARM devices, this function is simply an alias of `hd44780_define_char()`.
-#### Arguments :id=api-hd44780-define-char-p-arguments
+#### Arguments {#api-hd44780-define-char-p-arguments}
- `uint8_t index`
The index of the custom character to define, from 0 to 7.
@@ -209,21 +209,21 @@ On ARM devices, this function is simply an alias of `hd44780_define_char()`.
---
-### `bool hd44780_busy(void)` :id=api-hd44780-busy
+### `bool hd44780_busy(void)` {#api-hd44780-busy}
Indicates whether the display is currently processing, and cannot accept instructions.
-#### Return Value :id=api-hd44780-busy-arguments
+#### Return Value {#api-hd44780-busy-arguments}
`true` if the display is busy.
---
-### `void hd44780_write(uint8_t data, bool isData)` :id=api-hd44780-write
+### `void hd44780_write(uint8_t data, bool isData)` {#api-hd44780-write}
Write a byte to the display.
-#### Arguments :id=api-hd44780-write-arguments
+#### Arguments {#api-hd44780-write-arguments}
- `uint8_t data`
The byte to send to the display.
@@ -232,67 +232,67 @@ Write a byte to the display.
---
-### `uint8_t hd44780_read(bool isData)` :id=api-hd44780-read
+### `uint8_t hd44780_read(bool isData)` {#api-hd44780-read}
Read a byte from the display.
-#### Arguments :id=api-hd44780-read-arguments
+#### Arguments {#api-hd44780-read-arguments}
- `bool isData`
Whether to read the current cursor position, or the character at the cursor.
-#### Return Value :id=api-hd44780-read-return
+#### Return Value {#api-hd44780-read-return}
If `isData` is `true`, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag.
---
-### `void hd44780_command(uint8_t command)` :id=api-hd44780-command
+### `void hd44780_command(uint8_t command)` {#api-hd44780-command}
Send a command to the display. Refer to the datasheet and `hd44780.h` for the valid commands and defines.
This function waits for the display to clear the busy flag before sending the command.
-#### Arguments :id=api-hd44780-command-arguments
+#### Arguments {#api-hd44780-command-arguments}
- `uint8_t command`
The command to send.
---
-### `void hd44780_data(uint8_t data)` :id=api-hd44780-data
+### `void hd44780_data(uint8_t data)` {#api-hd44780-data}
Send a byte of data to the display.
This function waits for the display to clear the busy flag before sending the data.
-#### Arguments :id=api-hd44780-data-arguments
+#### Arguments {#api-hd44780-data-arguments}
- `uint8_t data`
The byte of data to send.
---
-### `void hd44780_set_cgram_address(uint8_t address)` :id=api-hd44780-set-cgram-address
+### `void hd44780_set_cgram_address(uint8_t address)` {#api-hd44780-set-cgram-address}
Set the CGRAM address.
This function is used when defining custom characters.
-#### Arguments :id=api-hd44780-set-cgram-address-arguments
+#### Arguments {#api-hd44780-set-cgram-address-arguments}
- `uint8_t address`
The CGRAM address to move to, from `0x00` to `0x3F`.
---
-### `void hd44780_set_ddram_address(uint8_t address)` :id=api-hd44780-set-ddram-address
+### `void hd44780_set_ddram_address(uint8_t address)` {#api-hd44780-set-ddram-address}
Set the DDRAM address.
This function is used when printing characters to the display, and setting the cursor.
-#### Arguments :id=api-hd44780-set-ddram-address-arguments
+#### Arguments {#api-hd44780-set-ddram-address-arguments}
- `uint8_t address`
The DDRAM address to move to, from `0x00` to `0x7F`.