wip:
This commit is contained in:
@@ -28,7 +28,7 @@ extern "C"
|
||||
AVR_ERR_NOT_ALLOWED
|
||||
} avr_err_t;
|
||||
|
||||
avr_err_t zh_avr_i2c_master_init(void);
|
||||
avr_err_t zh_avr_i2c_master_init(const bool pullup);
|
||||
avr_err_t zh_avr_i2c_master_transmit(const uint8_t addr, uint8_t *data, uint8_t size, size_t delay);
|
||||
avr_err_t zh_avr_i2c_master_receive(const uint8_t addr, uint8_t *data, uint8_t size, size_t delay);
|
||||
avr_err_t zh_avr_i2c_master_transmit_receive(const uint8_t addr, uint8_t *write_data, uint8_t write_size, uint8_t *read_data, uint8_t read_size, size_t delay);
|
||||
|
1
version.txt
Normal file
1
version.txt
Normal file
@@ -0,0 +1 @@
|
||||
1.0.0
|
13
zh_avr_i2c.c
13
zh_avr_i2c.c
@@ -1,7 +1,18 @@
|
||||
#include "zh_avr_i2c.h"
|
||||
|
||||
avr_err_t zh_avr_i2c_master_init(void)
|
||||
avr_err_t zh_avr_i2c_master_init(const bool pullup)
|
||||
{
|
||||
i2c_PORT |= 1 << i2c_SCL | 1 << i2c_SDA; // Включим подтяжку на ноги, вдруг юзер на резисторы пожмотился
|
||||
i2c_DDR &= ~(1 << i2c_SCL | 1 << i2c_SDA);
|
||||
|
||||
DDRC &= ~(1 << PORTC5 | 1 << PORTC4);
|
||||
if (pullup == true)
|
||||
{
|
||||
PORTC |= 1 << PORTC5 | 1 << PORTC4;
|
||||
}
|
||||
|
||||
TWBR = 0x80; // Настроим битрейт
|
||||
TWSR = 0x00;
|
||||
}
|
||||
|
||||
avr_err_t zh_avr_i2c_master_transmit(const uint8_t addr, uint8_t *data, uint8_t size, size_t delay)
|
||||
|
Reference in New Issue
Block a user