野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18075|回复: 0

关于使用寄存器点亮LED灯 或 和 与置位符号的问题

[复制链接]
发表于 2020-2-29 22:19:09 | 显示全部楼层 |阅读模式

GPIOB_CRL &= ~( 0x0F<< (4*0));          (这个我可以理解是,对端口配置低寄存器 0~3 共四位进行清零操作,有个小疑问,就是一般写程序之前都要进行清零嘛??)

GPIOB_CRL |= (1<<4*0);  (这个我得理解 1<<4*0   其中 4*0指的是 0寄存器中4位。 1 我是用 16进制来理解的 就是0x1)

GPIOB_CRL |= ((0x1) << (4*0));(所以我根据自己的理解修改成了 这样运行程序是没问题的,但是还是想请给位大佬看看这样写对不对)

GPIOB_ODR &= ~(1<<0); (最后输出低电平这个我有2个问题 (1): &= ~(1<<0)  我理解的是 进行1取反 在与0号位里面的任意数据进行与操作,结果肯
*(unsigned int*)0X40010C0C |= ((0x0)<< (1*0)); (这是我个人写的 输出低电平的语句 不知道对不对 我没有用 与取反 而是用了 或 灯的亮了 但我不知到这样写 对不对)

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-29 19:16 , Processed in 0.032306 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表