From 94101a2cd9baed60360f68096033dc75cbb1dcb3 Mon Sep 17 00:00:00 2001 From: android <android@lingyun.com> Date: Wed, 10 Jul 2024 19:27:36 +0800 Subject: [PATCH] Add STM8S003F3 eDP LCD drvier --- mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/gpio_i2c.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 48 insertions(+), 0 deletions(-) diff --git a/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/gpio_i2c.h b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/gpio_i2c.h new file mode 100644 index 0000000..0038ee3 --- /dev/null +++ b/mcu_sdk/stm8s003f3_edp/Libraries/STM8S_StdPeriph_Driver/inc/gpio_i2c.h @@ -0,0 +1,48 @@ +/********************************************************************************* + * Copyright: (C) 2014 Guo Wenxue<guowenxue@gmail.com> + * All rights reserved. + * + * Filename: gpio_i2c.h + * Description: STM8 GPIO�I2C���� + * + * Version: 1.0.0(09/28/2014) + * Author: Guo Wenxue <guowenxue@gmail.com> + * ChangeLog: 1, Release initial version on "09/28/2014 10:58:17 PM" + * +********************************************************************************/ +#include "stm8s.h" +#ifndef __GPIO_I2C_H_ +#define __GPIO_I2C_H_ + +#define I2C_GPIO_BASE GPIOC + +#define I2C_ACK 0 +#define I2C_NAK 1 + +#define I2C_OK 0 +#define I2C_ERROR -1 + +#define I2C_DIR_READ 1 +#define I2C_DIR_WRITE 0 + + /*PC7: I2C SDA */ +#define SDA_MODE_OUT I2C_GPIO_BASE->DDR |= GPIO_PIN_7 +#define SDA_HIGH I2C_GPIO_BASE->ODR |= GPIO_PIN_7 +#define SDA_LOW I2C_GPIO_BASE->ODR &= (uint8_t)(~(GPIO_PIN_7)) + +#define SDA_MODE_IN I2C_GPIO_BASE->DDR &= (uint8_t)(~(GPIO_PIN_7)) +#define SDA_DAT I2C_GPIO_BASE->IDR & (uint8_t)GPIO_PIN_7 + +/*PC6: I2C SCL */ +#define SCL_HIGH I2C_GPIO_BASE->ODR |= GPIO_PIN_6 +#define SCL_LOW I2C_GPIO_BASE->ODR &= (uint8_t)(~(GPIO_PIN_6)) + +extern void gpio_i2c_init(void); +extern void gpio_i2c_start(void); +extern void gpio_i2c_stop(void); +extern uint8_t gpio_i2c_write_byte(uint8_t byte); +extern uint8_t gpio_i2c_read_byte(void); +extern uint8_t gpio_i2c_read(uint8_t addr, uint8_t reg_addr); +extern int gpio_i2c_write(uint8_t addr, uint8_t reg_addr, uint8_t data); + +#endif /* __GPIO_I2C_H_ */ \ No newline at end of file -- Gitblit v1.9.1