代码的合并
将LED灯的代码加入AD的代码
再对代码进行修改(Keil的中文到了别的地方就变成乱码,问题不大)
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure; //ÉùÃ÷½á¹¹Ìå±äÁ¿
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //ʹÄÜPB¶Ë¿ÚʱÖÓ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11; //LED-->PB4 ÐèÒª³õʼ»¯µÄ¹Ü½Å
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //ÍÆÍìÊä³ö
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //IO¿ÚËÙ¶ÈΪ2MHz
GPIO_Init(GPIOA, &GPIO_InitStructure); //¸ù¾ÝÉ趨²ÎÊý³õʼ»¯GPIOB.12
GPIO_InitTypeDef GPIO_InitStructure; //ÉùÃ÷½á¹¹Ìå±äÁ¿
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //ʹÄÜPB¶Ë¿ÚʱÖÓ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12; //LED-->PB4 ÐèÒª³õʼ»¯µÄ¹Ü½Å
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //ÍÆÍìÊä³ö
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //IO¿ÚËÙ¶ÈΪ2MHz
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitTypeDef GPIO_InitStructure; //ÉùÃ÷½á¹¹Ìå±äÁ¿
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //ʹÄÜPB¶Ë¿ÚʱÖÓ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7; //LED-->PB4 ÐèÒª³õʼ»¯µÄ¹Ü½Å
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //ÍÆÍìÊä³ö
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //IO¿ÚËÙ¶ÈΪ2MHz
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
因为工程图中需要三个小灯,对应初始化三个管脚。但GPIO_InitTypeDef GPIO_InitStructure; 只需要写一次。
按照串口的初始化,对灯的引脚与单片机进行连接。同时,在led.h中也要进行定义
如上部分代码为串口接收信息与发送信息的代码,并且能够通过输入1或者2来控制led3的亮灭。
成果如下: