123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- #ifndef CM_I2C_H
- #define CM_I2C_H
- #include "CM_LIB.h"
- #if 0
- #define GIO_DIR_INPUT 0x00
- #define GIO_DIR_OUTPUT 0x01
- #define GPIO_CLK GPIO_PIN_6
- #define PORT_CLK GPIOE
- #define GPIO_DATA GPIO_PIN_5
- #define PORT_DATA GPIOE
- #define CM_CLK_OUT stm32_gpio_direct(PORT_CLK,GPIO_CLK,GIO_DIR_OUTPUT)
- #define CM_CLK_HI stm32_gpio_write(PORT_CLK,GPIO_CLK,GPIO_PIN_SET)
- #define CM_CLK_LO stm32_gpio_write(PORT_CLK,GPIO_CLK,GPIO_PIN_RESET)
- #define CM_DATA_OUT stm32_gpio_direct(PORT_DATA,GPIO_DATA,GIO_DIR_OUTPUT)
- #define CM_DATA_IN stm32_gpio_direct(PORT_DATA,GPIO_DATA,GIO_DIR_INPUT)
- #define CM_DATA_HI stm32_gpio_write(PORT_DATA,GPIO_DATA,GPIO_PIN_SET)
- #define CM_DATA_LO stm32_gpio_write(PORT_DATA,GPIO_DATA,GPIO_PIN_RESET)
- #define CM_DATA_RD stm32_gpio_read(PORT_DATA,GPIO_DATA)
- #define CM_START_TRIES 10
- #define CM_CLOCKHIGH cm_Delay(1);(CM_CLK_HI);cm_Delay(1)
- #define CM_CLOCKLOW cm_Delay(1);(CM_CLK_LO);cm_Delay(1)
- #define CM_CLOCKCYCLE cm_Delay(1);(CM_CLK_LO);cm_Delay(2);(CM_CLK_HI);cm_Delay(1)
- #endif
- uint8_t cm_TRUE(void);
- void cm_PowerOn(void);
- void cm_PowerOff(void);
- uint8_t cm_SendCommand(uint8_t * pucCommandBuffer);
- uint8_t cm_ReceiveData(uint8_t * pucReceiveData, uint8_t ucLength);
- uint8_t cm_SendData(uint8_t * pucSendData, uint8_t ucLength);
- void cm_RandGen(uint8_t * pucRandomData);
- void cm_WaitClock(uint8_t ucLoop);
- uint8_t cm_SendCmdByte(uint8_t ucCommand);
- #endif
|