库函数其实也是间接的配置寄存器
1、使能时钟,GPIOC外设时钟
用RCC_APB2外设时钟控制,来开启时钟

右键跳到函数定义,看一看





但是经过函数的包装,就不需要再去查手册来确认哪一位是干什的了;
这里也用了或=和与=,所以这个库函数的配置是不会影响到寄存器的其他位的;
这就是库函数和寄存器的区别;
2、配置端口模式
需要用到GPIO_Init这个函数;这里使用了结构体来配置参数,
这个函数是根据GPIO_Init结构体的参数来配置GPIO;


因为我们是PC13口的LED,所以第一个参数为GPIOC,

需要先定义一个结构体


这三个参数都要写出来,然后依次右键找到这三个的定义,然后选中这个字符,按Ctrl+F找到这个定义的位置,




下面步骤同上,第二个位置为GPIO_Pin_13,第三个位置为50MHz的速度;
这样结构体就有了

所以这里需要传递结构体的地址,将复制结构体的名字复制到这里,在前面加上一个取地址符号

这样就配置完成了
3、设置端口的高低电平
高电平:
用函数GPIO_SetBits,这个就可以把指定端口设置为高电平;

低电平:
用函数GPIO_RetBits,这个就可以把指定端口设置为低电平;
参数与上面高电平一样

4、点灯
先注释掉其中一个,然后编译下载,


在注释掉低电平的,灯灭
