中级会员
 
- 积分
- 238
- 金钱
- 238
- 注册时间
- 2018-8-2
- 在线时间
- 39 小时
|
固件库中 assert_param()函数在运行之初,便判断工程师所给的值是否为这个函数的有效值,以达到纠错报错的功能。同时,当我们不知道这个函数该填入什么样的值的时候,就可以使用keil中提供的右键“go to definition xxxx"查看assert_param()括号中的定义(简单而言就是对函数的有效性进行判断,判断函数输入的参数是否有效 )
操作GPIO 实质是操作寄存器,操作端口配置低寄存器,端口配置高寄存器,2个端口输入寄存器,一个复位寄存和锁定寄存器
‘’‘
rcc 时钟控制寄存器
’‘’
头文件 避免在调用时文件的内容多次被使用 需要使用一种语法规则
操作GPIO口的主要步骤:
(1)使能时钟总线 APB2
(2)初始化GPIO------->>定义结构体
随手敲:
‘’‘
#include <led.h>
#include <stm32f10x.h>
void LED_init()
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//使能GPIOB 的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);//使能GPIOE 的时钟
//-------------------------------------------------------------------------
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_5;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB,&GPIO_InitStruct);
GPIO_SetBits(GPIOB,GPIO_Pin_5);
/**
*描述:把GPIOB——5设置为推挽输出,输出的速度为50MHZ
**/
//--------------------------------------------------------------------------
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_5;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOE,&GPIO_InitStruct);
GPIO_SetBits(GPIOE,GPIO_Pin_5);
}
’‘’
|
|