#include "stm32f10x.h" #include "math.h" #include "delay.c" //包含delay_us(--); delay_ms(--); unsigned char BUF[8]; //----------结构体声明-------------------------------// void RCC_Configuration(void) //打开各个模块时钟 { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1, ENABLE); } //----------------------------------------// void I2C_Configuration(void) //硬件 iic 初始化 { I2C_InitTypeDef I2C_InitStructure; I2C_InitStructure.I2C_Mode = I2C_Mode_I2C; I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2; I2C_InitStructure.I2C_OwnAddress1 = 0xA0; I2C_InitStructure.I2C_Ack = I2C_Ack_Enable; I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit; I2C_InitStructure.I2C_ClockSpeed = 100000; I2C_Cmd(I2C1, ENABLE); I2C_Init(I2C1, &I2C_InitStructure); } //-----------------------------------------------------------------// void USART2_Configuration(void) //串口配置初始化:USART2 { USART_InitTypeDef USART_InitStructure; USART_InitStructure.USART_BaudRate = 14400; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_HardwareFlowControl =USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Tx|USART_Mode_Rx; USART_Init(USART2, &USART_InitStructure); GPIO_PinRemapConfig(GPIO_Remap_USART2,ENABLE); USART_Cmd(USART2, ENABLE); } void USART2_SendData(unsigned char SendData) //防卡函数 { while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET);//检测上次发送是否完成; USART_SendData(USART2, SendData); //Delayms(3); } //---------------------------...