第二章 寄存器点灯 1. 配置流程 打开端口时钟 配置端口功能 配置输出/输入模式 配置驱动能力或者速度 初始化端口 2. 开启GPIO的端口时钟 CW32的所有外设资源时钟默认都是关闭的,在配置外设之前需要先开 启对应的时钟。 要使能用户LED,就要先开启GPIOC的时钟,从数据手册的
RCU_AHB1EN寄存器的第3位就是GPIOD端口时钟使能,我们要开启GPIOD端口时钟使能,就需要往RCU_AHB1EN的第3位写1,然后为了保持其他位不变,我们可以使用一个或运算,也就是RCU_AHB1EN |=0x00000008;也就是相当于拉高RCU_AHB1EN寄存器的第3位,其他位保持不变。其实也可以写为RCU_AHB1EN |=(1<<3);是一样的...
这一位置1,其他位默认为0,那整个寄存器的2进制数据换成16进制时,就是0000 0010,那么就是在Keil里写成RCC->APB2ENR = 0X00000010; 这样就可以打开GPIOC的时钟了 2.GPIOx_CRH端口配置高寄存器第二个寄存器,需要配置引脚PC13口的模式GPIOx_CRH的x,可以是A到E的任意一个字母,可以配置不同的GPIO 这里的CNF13和...
RCC->APB2ENR=(1<<3);//开启GPIOB时钟 PB3|PB4|PB5是低位引脚,使用GPIO的CRL寄存器 0011对应16进制就是3 使用推挽输出,速度50MHZ,所以CRL寄存器: GPIOB->CRL=0X00333000;GPIOB->CRL=0X00333000;也能这样写: GPIOB->CRL&=0XFF000FFF;GPIOB->CRL|=0X00333000; GPIO 输出ODR寄存器输出0; 或者 GPIOB...
二、使用寄存器点灯的步骤 1.使能对应的GPIO 2.引脚模式设置 3.引脚方向设置 4.输出电平设置 这个步骤其实和使用那些库的步骤是一样的,只不过在库中我们总是使用一些结构体来完成这些GPIO的初始化。 三、如何操作寄存器 操作寄存器这里我们使用指针来得到对应寄存器的地址,并对他进行操作。
二、寄存器 1.端口配置表 使用推挽输出,通过端口配置表找到需要使用的寄存器,分别为CNF、MODE(在端口...
点灯点灯点到流水灯 效果图: 1寄存器 寄存器的功能是存储二进制代码,它是由具有存储功能的触发器组合起来构成的。一个触发器可以存储1位二进制代码,故存放n位二进制代码的寄存器,需用n个触发器来构成。 在计算机领域中,寄存器是CPU内部的元件,包括通用寄存器、专用寄存器和控制寄存器。寄存器拥有非常高的读写速度,所...
使用寄存器点灯,再对引脚做一些功能和结构的说明。 选择 把我们的包装库写上 点击加载 printf()需要点击这个 这里把中间文件的路径写好 写单片机的东西,一定要记住,我们是在写驱动!不是应用层,和结构强相关。 引脚的两个保护二级管可以防止引脚外部过高或过低的电压输入,当引脚电压高于VDD 时,上方的二极管导通,当...
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯-1 https://developer.aliyun.com/article/1507975 写GPIO 翻译一下: 设置CCM_CCGRx 寄存器中某位使能对应的 GPIO 模块 // 默认是使能 的,上图省略了 设置IOMUX 来选择引脚用于 GPIO 设置GPIOx_GDIR 中某位为 1,把该引脚设置为输出功能 ...
来自专栏 · STM32寄存器|正点原子 目录 收起 前言 一、中断原理 二、实例——外部中断按键点灯 led.h led.c key.h main.c exit.c 中断初始化EXTI_Init(void) 设置函数MY_NVIC_Init 分组函数 MY_NVIC_PriorityGroupConfig 总结 前言 在阅读本文前请先了解如何实现按键电灯。 一、中断原理 单片机只能串行...