Feat: add dac i2c master init

Refs: #8
pull/9/head
rkcf 2023-02-19 19:15:16 -06:00
parent f7134bb111
commit e53dc953c4
1 changed files with 36 additions and 1 deletions

View File

@ -1,6 +1,41 @@
#include <stdio.h>
#include "driver/i2c.h"
#include "esp_err.h"
#include "esp_log.h"
#include "hal/i2c_types.h"
#define DAC_SCL_PIN 12
#define DAC_SDA_PIN 13
#define DAC_LDAC_PIN 14
#define DAC_ADDR 0x60 /* I2C Address of DAC */
static const char *TAG = "EERG";
/* Initialize and configure I2C DAC */
static void dac_init(void)
{
ESP_LOGI(TAG, "Initializing DAC I2C connection");
/* Configure µC as I2C master */
i2c_port_t master_port = 0;
i2c_config_t i2c_conf = {
.mode = I2C_MODE_MASTER,
.scl_io_num = DAC_SCL_PIN,
.sda_io_num = DAC_SDA_PIN,
.master.clk_speed = 400000 /* 400kHz for i2c fast mode */
};
i2c_param_config(master_port, &i2c_conf);
/* Install i2c driver */
ESP_ERROR_CHECK(i2c_driver_install(master_port, i2c_conf.mode, 0, 0, 0));
}
void app_main(void)
{
/* Initialize and configure I2C DAC */
dac_init();
}