1.直接操作寄存器 2.通过将寄存器地址映射, 采用#define方式命名, 可以通过使用名称来操作(不用再去记寄存器地址) 3.使用结构体优化寄存器的定义, 优化前每个GPIO都需要去为其对应的寄存器定义一个名称十分繁琐. 优化后直接将所有GPIO的寄存器定义在一个结构体中, 由于GPIO寄存器CRL地址与GPIO基地址相同, 这样我们就可以通过将
初始化寄存器: 在程序开始时,你需要将寄存器初始化为适当的值,以打开或关闭LED灯。 编写主循环: 在主循环中,你可以根据需要更改寄存器的值,以控制LED灯的开关状态。 2.实验原理 图中从 3 个 LED 灯的阳极引出连接到 3.3V 电源,阴极各经过 1 个电阻引入至 STM32的 3 个 GPIO 引脚 PH10、PH11、PH12 中...
对于Keil开发环境:拷贝一份我们之前新建的Keil工程模板“06_Template”,然后将工程文件夹重命名为“08_Register_LED”,并进入该文件夹里面双击Keil工程文件,打开该工程。 7.4.2.2 寄存器定义头文件 当新建工程完成之后,工程里已经自动包含了这个定义寄存器的头文件,比如:R7FA6M5BH.h头文件。在这个头文件里面,已经包含...
但现在端口用于输出,端口受 ODR寄存器影响,ODR寄存器对应端口位初始初始化后默认值为 0,端口输出低电平,所以这时我们配置无上/下拉模式。 在输出模式时,操作BSRR和ODR寄存器即可控制端口的电平。这里用ODR寄存器控制。输入为0时,LED灯亮;输入为1时,LED灯灭。 这时,GPIO端口的寄存器已经配置完成,但是还是点不亮灯。这...
2.2 寄存器映射与寄存器空间 3.1 打开GPIO口时钟 3.2 采用推挽输出模式 3.3 设置低电平 4.1需要准备的器件 关于Project的建立以及烧录过程 流水灯代码C语言实现 流水灯代码汇编实现 回到顶部 一、关于STM32 STM32F103C8T6是一款由意法半导体公司(ST)推出的基于Cortex-M3内核的32位微控制器,硬件采用LQFP48封装,属于ST...
5.3 实验:使用寄存器点亮 LED 灯: 本小节中,我们以实例讲解如何通过控制寄存器来点亮 LED 灯。此处侧重于讲解原理,请您直接用 KEIL5 软件打开我们提供的实验例程配合阅读,先了解原理,学习完本小节后,再尝试自己建立一个同样的工程。本节配套例程名称为“GPIO 输出—寄存器点亮 LED灯”,在工程目录下找到后缀为“.uv...
.端口输出寄存器配置 本次实验使用GPIOA-5、GPIOB-9、GPIOC-14 这3个引脚控制LED灯,GPIO是属于APB2...
PORTX寄存器是用来控制端口输出电平,即通过该寄存器来设置IO口的高低电平;PINX寄存器是用来读取端口输入的状态,即读取该口上输入的电平状态。实验器材:1.AVR系列单片机开发板。2.3个跳线。3.1个LED灯。4.1个220欧姆电阻。实验步骤:1.将220欧姆电阻与LED灯串联,然后将LED的长脚连接到PB5的IO口上。2. ...
输出一般都设置为浮空,输入一般都设置为上拉 3.配置GPIO的输出 第一步配置端口输出模式寄存器GPIOx_OMODE,推挽输出模式或者是开漏输出模式。 第二步配置端口速度寄存器GPIOx_OSPD 4.点灯 1.端口输出控制寄存器OCTL 2.端口位操作寄存器BOP 3.端口位翻转寄存器...