//////////////////////////////////////////////////////////////////////////////////	 
//本程序只供学习使用，未经作者许可，不得用于其它商业用途
//测试硬件：单片机CH32F103C8T6,F103C8T6核心开发板,主频72MHZ，晶振8MHZ
//QDtech-TFT液晶驱动 for CH32 IO模拟
//Chan@ShenZhen QDtech co.,LTD
//公司网站:www.qdtft.com
//wiki技术资料网站：http://www.lcdwiki.com
//我司提供技术支持，任何技术问题欢迎随时交流学习
//固话(传真) :+86 0755-21077707 
//手机: (销售)18823372746 （技术)15989313508
//邮箱:(销售/订单) sales@qdtft.com  (售后/技术服务)service@qdtft.com
//QQ:(售前咨询)3002706772 (技术支持)3002778157
//技术交流QQ群:778679828
//创建日期:2020/05/07
//版本：V1.0
//版权所有，盗版必究。
//Copyright(C) 深圳市全动电子技术有限公司 2018-2028
//All rights reserved
/****************************************************************************************************
//=========================================电源接线================================================//
//    OLED模块             单片机
//      5V        接    DC5V或3.3V电源
//      GND       接        GND                        
//======================================OLED屏数据线接线==========================================//
//本模块数据总线类型为IIC
//    OLED模块             单片机
//      SCL       接        PA5     // IIC时钟信号
//      SDA       接        PA7     // IIC数据信号
//======================================OLED屏控制线接线==========================================//
//本模块数据总线类型为IIC，不需要接控制信号线    
//=========================================触摸屏接线=========================================//
//本模块本身不带触摸，不需要接触摸屏线
//============================================================================================//
 @attention
  *
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, QD electronic SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
**************************************************************************************************/	
#ifndef __I2C_H__
#define __I2C_H__


//-----------------OLED IIC端口定义----------------  					   
#define GPIO_TYPE GPIOA  //IIC GPIO类型
#define OLED_SCLK GPIO_Pin_5  //IIC时钟信号引脚
#define OLED_SDIN GPIO_Pin_7  //IIC数据信号引脚

#define OLED_SCLK_Clr() GPIO_ResetBits(GPIO_TYPE,OLED_SCLK)//CLK
#define OLED_SCLK_Set() GPIO_SetBits(GPIO_TYPE,OLED_SCLK)

#define OLED_SDIN_Clr() GPIO_ResetBits(GPIO_TYPE,OLED_SDIN)//DIN
#define OLED_SDIN_Set() GPIO_SetBits(GPIO_TYPE,OLED_SDIN)

#define IIC_SLAVE_ADDR 0x78  //IIC slave device address

void IIC_Init(void);
void IIC_Start(void);
void IIC_Stop(void);
void IIC_Wait_Ack(void);
void Write_IIC_Byte(unsigned char IIC_Byte);
void Write_IIC_Command(unsigned char IIC_Command);
void Write_IIC_Data(unsigned char IIC_Data);
#endif
