![]() |
LibDriver SSD1306
|
driver ssd1306 source file More...
Go to the source code of this file.
Functions | |
| uint8_t | ssd1306_clear (ssd1306_handle_t *handle) |
| clear the screen | |
| uint8_t | ssd1306_gram_update (ssd1306_handle_t *handle) |
| update the gram data | |
| uint8_t | ssd1306_write_point (ssd1306_handle_t *handle, uint8_t x, uint8_t y, uint8_t data) |
| write a point | |
| uint8_t | ssd1306_read_point (ssd1306_handle_t *handle, uint8_t x, uint8_t y, uint8_t *data) |
| read a point | |
| uint8_t | ssd1306_gram_write_point (ssd1306_handle_t *handle, uint8_t x, uint8_t y, uint8_t data) |
| write a point in the gram | |
| uint8_t | ssd1306_gram_read_point (ssd1306_handle_t *handle, uint8_t x, uint8_t y, uint8_t *data) |
| read a point from the gram | |
| uint8_t | ssd1306_gram_write_string (ssd1306_handle_t *handle, uint8_t x, uint8_t y, char *str, uint16_t len, uint8_t color, ssd1306_font_t font) |
| draw a string in the gram | |
| uint8_t | ssd1306_gram_fill_rect (ssd1306_handle_t *handle, uint8_t left, uint8_t top, uint8_t right, uint8_t bottom, uint8_t color) |
| fill a rectangle in the gram | |
| uint8_t | ssd1306_gram_draw_picture (ssd1306_handle_t *handle, uint8_t left, uint8_t top, uint8_t right, uint8_t bottom, uint8_t *img) |
| draw a picture in the gram | |
| uint8_t | ssd1306_init (ssd1306_handle_t *handle) |
| initialize the chip | |
| uint8_t | ssd1306_deinit (ssd1306_handle_t *handle) |
| close the chip | |
| uint8_t | ssd1306_set_interface (ssd1306_handle_t *handle, ssd1306_interface_t interface) |
| set the chip interface | |
| uint8_t | ssd1306_get_interface (ssd1306_handle_t *handle, ssd1306_interface_t *interface) |
| get the chip interface | |
| uint8_t | ssd1306_set_addr_pin (ssd1306_handle_t *handle, ssd1306_address_t addr_pin) |
| set the chip iic address | |
| uint8_t | ssd1306_get_addr_pin (ssd1306_handle_t *handle, ssd1306_address_t *addr_pin) |
| get the chip iic address | |
| uint8_t | ssd1306_set_low_column_start_address (ssd1306_handle_t *handle, uint8_t addr) |
| set the low column start address | |
| uint8_t | ssd1306_set_high_column_start_address (ssd1306_handle_t *handle, uint8_t addr) |
| set the high column start address | |
| uint8_t | ssd1306_set_memory_addressing_mode (ssd1306_handle_t *handle, ssd1306_memory_addressing_mode_t mode) |
| set the memory addressing mode | |
| uint8_t | ssd1306_set_column_address_range (ssd1306_handle_t *handle, uint8_t start_addr, uint8_t end_addr) |
| set the column address range | |
| uint8_t | ssd1306_set_page_address_range (ssd1306_handle_t *handle, uint8_t start_addr, uint8_t end_addr) |
| set the page address range | |
| uint8_t | ssd1306_set_fade_blinking_mode (ssd1306_handle_t *handle, ssd1306_fade_blinking_mode_t mode, uint8_t frames) |
| set the fade blinking mode | |
| uint8_t | ssd1306_set_right_horizontal_scroll (ssd1306_handle_t *handle, uint8_t start_page_addr, uint8_t end_page_addr, ssd1306_scroll_frame_t frames) |
| set the right horizontal scroll | |
| uint8_t | ssd1306_set_left_horizontal_scroll (ssd1306_handle_t *handle, uint8_t start_page_addr, uint8_t end_page_addr, ssd1306_scroll_frame_t frames) |
| set the left horizontal scroll | |
| uint8_t | ssd1306_set_vertical_right_horizontal_scroll (ssd1306_handle_t *handle, uint8_t start_page_addr, uint8_t end_page_addr, uint8_t rows, ssd1306_scroll_frame_t frames) |
| set the vertical right horizontal scroll | |
| uint8_t | ssd1306_set_vertical_left_horizontal_scroll (ssd1306_handle_t *handle, uint8_t start_page_addr, uint8_t end_page_addr, uint8_t rows, ssd1306_scroll_frame_t frames) |
| set the vertical left horizontal scroll | |
| uint8_t | ssd1306_deactivate_scroll (ssd1306_handle_t *handle) |
| deactivate the scroll | |
| uint8_t | ssd1306_activate_scroll (ssd1306_handle_t *handle) |
| activate the scroll | |
| uint8_t | ssd1306_set_display_start_line (ssd1306_handle_t *handle, uint8_t l) |
| set the display start line | |
| uint8_t | ssd1306_set_contrast (ssd1306_handle_t *handle, uint8_t contrast) |
| set the display contrast | |
| uint8_t | ssd1306_set_charge_pump (ssd1306_handle_t *handle, ssd1306_charge_pump_t enable) |
| enable or disable the charge pump | |
| uint8_t | ssd1306_set_segment_remap (ssd1306_handle_t *handle, ssd1306_segment_column_remap_t remap) |
| set the segment remap | |
| uint8_t | ssd1306_set_vertical_scroll_area (ssd1306_handle_t *handle, uint8_t start_row, uint8_t end_row) |
| set the vertical scroll area | |
| uint8_t | ssd1306_set_entire_display (ssd1306_handle_t *handle, ssd1306_entire_display_t enable) |
| enable or disable the entire display | |
| uint8_t | ssd1306_set_display_mode (ssd1306_handle_t *handle, ssd1306_display_mode_t mode) |
| set the display mode | |
| uint8_t | ssd1306_set_multiplex_ratio (ssd1306_handle_t *handle, uint8_t multiplex) |
| set the multiplex ratio | |
| uint8_t | ssd1306_set_display (ssd1306_handle_t *handle, ssd1306_display_t on_off) |
| enable or disable the display | |
| uint8_t | ssd1306_set_page_address (ssd1306_handle_t *handle, uint8_t addr) |
| set the page address | |
| uint8_t | ssd1306_set_scan_direction (ssd1306_handle_t *handle, ssd1306_scan_direction_t dir) |
| set the scan direction | |
| uint8_t | ssd1306_set_display_offset (ssd1306_handle_t *handle, uint8_t offset) |
| set the display offset | |
| uint8_t | ssd1306_set_display_clock (ssd1306_handle_t *handle, uint8_t oscillator_frequency, uint8_t clock_divide) |
| set the display clock | |
| uint8_t | ssd1306_set_zoom_in (ssd1306_handle_t *handle, ssd1306_zoom_in_t zoom) |
| set the display zoom in | |
| uint8_t | ssd1306_set_precharge_period (ssd1306_handle_t *handle, uint8_t phase1_period, uint8_t phase2_period) |
| set the pre charge period | |
| uint8_t | ssd1306_set_com_pins_hardware_conf (ssd1306_handle_t *handle, ssd1306_pin_conf_t conf, ssd1306_left_right_remap_t remap) |
| set the hardware com pins | |
| uint8_t | ssd1306_set_deselect_level (ssd1306_handle_t *handle, ssd1306_deselect_level_t level) |
| set the deselect level | |
| uint8_t | ssd1306_write_cmd (ssd1306_handle_t *handle, uint8_t *buf, uint8_t len) |
| write the register command | |
| uint8_t | ssd1306_write_data (ssd1306_handle_t *handle, uint8_t *buf, uint8_t len) |
| write the register data | |
| uint8_t | ssd1306_info (ssd1306_info_t *info) |
| get chip's information | |
driver ssd1306 source file
Copyright (c) 2015 - present LibDriver All rights reserved
The MIT License (MIT)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
| Date | Version | Author | Description |
|---|---|---|---|
| 2021/03/30 | 2.0 | Shifeng Li | format the code |
| 2020/12/10 | 1.0 | Shifeng Li | first upload |
Definition in file driver_ssd1306.c.
| #define CHIP_NAME "Solomon Systech SSD1306" |
| #define DRIVER_VERSION 2000 |
driver version
Definition at line 51 of file driver_ssd1306.c.
| #define MANUFACTURER_NAME "Solomon Systech" |
manufacturer name
Definition at line 45 of file driver_ssd1306.c.
| #define MAX_CURRENT 0.78f |
chip max current
Definition at line 48 of file driver_ssd1306.c.
| #define SSD1306_CMD 0 |
| #define SSD1306_CMD_ACTIVATE_SCROLL 0x2F |
command activate scroll
Definition at line 73 of file driver_ssd1306.c.
| #define SSD1306_CMD_CHARGE_PUMP_SETTING 0x8D |
command charge pump setting
Definition at line 76 of file driver_ssd1306.c.
| #define SSD1306_CMD_COLUMN_0_MAPPED_TO_SEG0 0xA0 |
command column 0 mapped to seg 0
Definition at line 77 of file driver_ssd1306.c.
| #define SSD1306_CMD_COLUMN_127_MAPPED_TO_SEG0 0xA1 |
command column 127 mapped to seg 0
Definition at line 78 of file driver_ssd1306.c.
| #define SSD1306_CMD_COM_PINS_CONF 0xDA |
command com pins conf
Definition at line 94 of file driver_ssd1306.c.
| #define SSD1306_CMD_COMH_DESLECT_LEVEL 0xDB |
command comh deslect level
Definition at line 95 of file driver_ssd1306.c.
| #define SSD1306_CMD_CONTRAST_CONTROL 0x81 |
command contrast control
Definition at line 75 of file driver_ssd1306.c.
| #define SSD1306_CMD_DEACTIVATE_SCROLL 0x2E |
command deactivate scroll
Definition at line 72 of file driver_ssd1306.c.
| #define SSD1306_CMD_DISPLAY_CLOCK_DIVIDE 0xD5 |
command display clock divide
Definition at line 91 of file driver_ssd1306.c.
| #define SSD1306_CMD_DISPLAY_OFF 0xAE |
command display off
Definition at line 85 of file driver_ssd1306.c.
| #define SSD1306_CMD_DISPLAY_OFFSET 0xD3 |
command display offset
Definition at line 90 of file driver_ssd1306.c.
| #define SSD1306_CMD_DISPLAY_ON 0xAF |
command display on
Definition at line 86 of file driver_ssd1306.c.
| #define SSD1306_CMD_DISPLAY_START_LINE 0x40 |
command display start line
Definition at line 74 of file driver_ssd1306.c.
| #define SSD1306_CMD_ENTIRE_DISPLAY_OFF 0xA4 |
command entire display off
Definition at line 80 of file driver_ssd1306.c.
| #define SSD1306_CMD_ENTIRE_DISPLAY_ON 0xA5 |
command entire display on
Definition at line 81 of file driver_ssd1306.c.
| #define SSD1306_CMD_HIGHER_COLUMN_START_ADDRESS 0x10 |
command higher column start address
Definition at line 63 of file driver_ssd1306.c.
| #define SSD1306_CMD_INVERSE_DISPLAY 0xA7 |
command inverse display
Definition at line 83 of file driver_ssd1306.c.
| #define SSD1306_CMD_LEFT_HORIZONTAL_SCROLL 0x27 |
command left horizontal scroll
Definition at line 69 of file driver_ssd1306.c.
| #define SSD1306_CMD_LOWER_COLUMN_START_ADDRESS 0x00 |
chip command definition
command lower column start address
Definition at line 62 of file driver_ssd1306.c.
| #define SSD1306_CMD_MEMORY_ADDRESSING_MODE 0x20 |
command memory addressing mode
Definition at line 64 of file driver_ssd1306.c.
| #define SSD1306_CMD_MULTIPLEX_RATIO 0xA8 |
command multiplex ratio
Definition at line 84 of file driver_ssd1306.c.
| #define SSD1306_CMD_NOP 0xE3 |
command nop
Definition at line 96 of file driver_ssd1306.c.
| #define SSD1306_CMD_NORMAL_DISPLAY 0xA6 |
command normal display
Definition at line 82 of file driver_ssd1306.c.
| #define SSD1306_CMD_PAGE_ADDR 0xB0 |
command page address
Definition at line 87 of file driver_ssd1306.c.
| #define SSD1306_CMD_PRE_CHARGE_PERIOD 0xD9 |
command pre charge period
Definition at line 93 of file driver_ssd1306.c.
| #define SSD1306_CMD_RIGHT_HORIZONTAL_SCROLL 0x26 |
command right horizontal scroll
Definition at line 68 of file driver_ssd1306.c.
| #define SSD1306_CMD_SCAN_DIRECTION_COM0_START 0xC0 |
command scan direction com 0 start
Definition at line 88 of file driver_ssd1306.c.
| #define SSD1306_CMD_SCAN_DIRECTION_COMN_1_START 0xC8 |
command scan direction com n-1 start
Definition at line 89 of file driver_ssd1306.c.
| #define SSD1306_CMD_SET_COLUMN_ADDRESS 0x21 |
command set column address
Definition at line 65 of file driver_ssd1306.c.
| #define SSD1306_CMD_SET_FADE_OUT_AND_BLINKING 0x23 |
command set fade out and blinking
Definition at line 67 of file driver_ssd1306.c.
| #define SSD1306_CMD_SET_PAGE_ADDRESS 0x22 |
command set page address
Definition at line 66 of file driver_ssd1306.c.
| #define SSD1306_CMD_SET_ZOOM_IN 0xD6 |
command set zoom in
Definition at line 92 of file driver_ssd1306.c.
| #define SSD1306_CMD_VERTICAL_LEFT_HORIZONTAL_SCROLL 0x2A |
command vertical left horizontal scroll
Definition at line 71 of file driver_ssd1306.c.
| #define SSD1306_CMD_VERTICAL_RIGHT_HORIZONTAL_SCROLL 0x29 |
command vertical right horizontal scroll
Definition at line 70 of file driver_ssd1306.c.
| #define SSD1306_CMD_VERTICAL_SCROLL_AREA 0xA3 |
command vertical scroll area
Definition at line 79 of file driver_ssd1306.c.
| #define SSD1306_DATA 1 |
data
Definition at line 57 of file driver_ssd1306.c.
| #define SUPPLY_VOLTAGE_MAX 3.3f |
chip max supply voltage
Definition at line 47 of file driver_ssd1306.c.
| #define SUPPLY_VOLTAGE_MIN 1.65f |
chip min supply voltage
Definition at line 46 of file driver_ssd1306.c.
| #define TEMPERATURE_MAX 85.0f |
chip max operating temperature
Definition at line 50 of file driver_ssd1306.c.
| #define TEMPERATURE_MIN -40.0f |
chip min operating temperature
Definition at line 49 of file driver_ssd1306.c.