STM32嵌入式笔记常见知识点解析前言:基础知识开放板硬件资源连接:LED0=PB5LED1=PE5(通过TIM3控制的LED1的闪烁情况)KEY0=PE4KEY1=PE3KEY2=PE2KEY_UP=PA0While();当括号里面为1时为真时,这是一个死循环,代码不再向下执行。当括号里面为0为假,代码继续向下执行。While(1);这是一个死循环,代码不再向下执行。任何美好情感的得到,任何美好事物的创造从来都是不轻松的你不可能轻轻松松的实现梦想获得成功人类一切美好的东西都是要有称重的都是会累的其实所谓的爱就是分享同步的感受这个世界,成熟起来独立和分享你们在同步的观察和感受这个世界努力让自己独立起来在一起时努力甜蜜,不在一起时各自精彩浮空输入:浮空就是逻辑电平器件的输入引脚不接高电平也不接低电平,由于逻辑电平的内部的结构,当输入引脚悬空时,相当于该引脚接入了高电平。一般实际运用时,该引脚不建议悬空,易受干扰。通俗的讲就是让管教什么也不接,浮空着。模拟输入:模拟输入是指传统方式的输入。数字输入时输入PCM数字信号。即0、1的二进制数字信号,通过数模转换,转换成模拟信号,经前级放大进入功率放大器,功率放大器还是模拟的。推挽输出:能够输出高电平,低电平,连接数字器件,推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源决定。开漏输出:输出端相当于三极管的集电极,要得到高电平状态需要上拉电阻才行,适合于做电流型驱动,其吸收电流能力相对较强。复用开漏输出、复用推挽输出:能够理解为GPIO口被用作第二功能时的配置情况(即并非作为通用IO口使用)GPIO_Mode_AIN模拟输入GPIO_Mode_Out_OD开漏输出PIO_Mode_IN_FLOATING浮空输入GPIO_Mode_Out_PP推挽输出GPIO_Mode_IPD下拉GPIO_Mode_AF_OD复用开漏输出GPIO_Mode_IPU上拉GPIO_Mode_AF_PP复用推挽输出关于引脚复用与映射的问题:default(默认复用功能)remap(重定义功能)例如串口1的发送接收引脚是PA9,PA10,当我们把PA9,PA10不用作GPIO,而用做复用功能串口1的发送接收引脚的时候,叫端口复用1、GPIO端口时钟使能。RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);2、复用外设时钟使能。比如你要将端口PA9,PA10复用为串口,所以要使能串口时钟。RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);2、即一个外设的引脚除了具有默认的端口外,还能够通过设置重映射寄存器的方式,把这个外设的引脚映射到其它的端口。重映射AFIO重映射的步骤:使能被映射到的IO端口时钟使能被映射到的外设时钟使能AFIO功能的时钟进行重映射GPIO_InitTypeDefGPIO_InitStructure;//PWM中重映射的例子TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;TIM_OCInitTypeDefTIM_OCInitStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); //_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,ENABLE);//使能GPIO外设和AFIO复用功能模块时钟GPIO_PinRemapConfig(GPIO_PartialRemap_TIM3,ENABLE);//Timer3部分重映射TIM3_CH2->PB5remap(重定义功能)//此方格中的需要进行重映射MODE的设置问题:LED灯设置为推挽输出。2、KEY0、KEY1、KEY2都是低电平有效,KEY_UP是高电平有效KEY0、KEY1、KEY2设置为上拉输入、KEY_UP设置为下拉输入。3、u8KEY_Scan(u8mode){ staticu8key_up=1;//按键按松开标志 if(mode)key_up=1;//支持连按 if(key_up&&(KEY0==0||KEY1==0||KEY2==0||WK_UP==1)) { delay_ms(10);//去抖动 key_up=0; if(KEY0==0)returnKEY0_PRES; elseif(KEY1==0)returnKEY1_PRES; elseif(KEY2==0)returnKEY2_PRES; elseif(WK_UP==1)returnWKUP_PRES; }elseif(KEY0
STM32常见知识点 来自淘豆网m.daumloan.com转载请标明出处.