資源簡介
基于STM32的實時時鐘芯片SD2405的操作;
代碼片段和文件信息
#include?“stm32f10x.h“?
#include?“I2C_SD2405.h“
/******************************************************************************
函數說明:初始化I2C總線
******************************************************************************/
void?I2C_Config(void)
{
????GPIO_InitTypeDef?GPIO_InitStructure;
????I2C_InitTypeDef?I2C_InitStructure;
????
????RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB?ENABLE);//使能IO時鐘
????RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C2?ENABLE);//使能I2C外設時鐘
????
????GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_10?|?GPIO_Pin_11;
????GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_AF_OD;
????GPIO_Init(GPIOB?&GPIO_InitStructure);
????
????I2C_InitStructure.I2C_Mode?=?I2C_Mode_I2C;//設置?I2C為?I2C模式
????I2C_InitStructure.I2C_DutyCycle?=?I2C_DutyCycle_2;//I2C快速模式?Tlow?/?Thigh?=?2
????I2C_InitStructure.I2C_OwnAddress1?=?I2C1_SLAVE_ADDRESS7;//設置第一個設備地址
????I2C_InitStructure.I2C_Ack?=?I2C_Ack_Enable;//使能應答
????I2C_InitStructure.I2C_AcknowledgedAddress?=?I2C_AcknowledgedAddress_7bit;//應答?7位地址
????I2C_InitStructure.I2C_ClockSpeed?=?I2C_Speed;//設置時鐘頻率
????/*?I2C?Peripheral?Enable?*/
????//I2C_Cmd(I2C1?ENABLE);//使能I2C外設
????/*?Apply?I2C?configuration?after?enabling?it?*/
????I2C_Init(I2C2?&I2C_InitStructure);
}
/******************************************************************************
函數說明:將一個字節高位與低位互換
******************************************************************************/
u8?HtoL(u8?data)
{
????u8?ret?=?0;
????u8?i;
????for(i?=?0;i?8;i++)
????{
????????ret?<<=?1;
????????if(data?&?0x01)
????????{
????????????ret?|=?1;
????????}
????????data?>>=?1;
????}
????return?ret;
}
/******************************************************************************
函數說明:BCD碼轉10進制
******************************************************************************/
u8?BCDtoBIN(u8?data)
{
????u8?ret?=?0;
????ret?=?(data?>>?4)?*?10?+?(data?&?0x0f);
????return?ret;
}
/******************************************************************************
函數說明:10進制轉BCD碼
******************************************************************************/
u
- 上一篇:看雪《加密與解密》第四版隨書光盤
- 下一篇:register_vugen.bat文件
評論
共有 條評論