基于库函数来实现点灯操作

库函数其实也是间接的配置寄存器

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、点灯

先注释掉其中一个,然后编译下载,

在注释掉低电平的,灯灭

相关推荐
2401_863318631 小时前
基于单片机的家庭防盗报警系统
单片机·嵌入式硬件
一枝小雨2 小时前
【OTA专题】18 OTA性能优化:优化bootloader存储空间与固件完整性校验(CRC)
stm32·单片机·性能优化·嵌入式·freertos·ota·bootloader
iYun在学C2 小时前
驱动程序(注册字符设备)
linux·嵌入式硬件
尼喃2 小时前
PW2605Z,专为系统安全护航的高可靠性负载开关
stm32·单片机·嵌入式硬件
阿昊真人2 小时前
stm32 按键中断
stm32·单片机·嵌入式硬件
代码游侠3 小时前
学习笔记——51单片机学习
笔记·stm32·单片机·嵌入式硬件·51单片机
松涛和鸣3 小时前
DAY52 7-Segment Display/GPIO/Buttons/Interrupts/Timers/PWM
c语言·数据库·单片机·sqlite·html
我是海飞4 小时前
杰理 AC792N WebSocket 客户端例程使用测试教程
c语言·python·单片机·websocket·网络协议·嵌入式·杰理
CQ_YM4 小时前
51单片机(2)
单片机·嵌入式硬件·51单片机
不脱发的程序猿4 小时前
CAN总线如何区分和识别帧类型
单片机·嵌入式硬件·嵌入式·can