找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1596|回复: 9
收起左侧

关于单片机C语言简单小程序,求大神指点,谢谢

[复制链接]
回帖奖励 50 黑币 回复本帖可获得 50 黑币奖励! 每人限 1 次
ID:895406 发表于 2021-4-2 11:33 | 显示全部楼层 |阅读模式
1空到4空,我搞不懂,求大神解释下,IO0SET为GPIO 输出置位寄存器,写入1是,置引脚为高电平,
IO0CLR 为GPIO 输出清零寄存器,写入1时,置引脚为低电平。
求大神解释下1-4空,最后附图的答案有啥作用?
51hei截图_20210402104440.png 51hei截图_20210402110307.png 51hei截图_20210402112539.png
回复

使用道具 举报

ID:885092 发表于 2021-4-2 16:12 | 显示全部楼层
不太懂stm32,可以去阅读下相关书籍
回复

使用道具 举报

ID:52586 发表于 2021-4-2 18:47 | 显示全部楼层
本帖最后由 聆烟雨 于 2021-4-2 19:36 编辑

IO0SET = ~LED_ON;
如果 LED_ON_Num = 1, 那么 LED_ON = 0x01, 取反后为 ...111110(二进制), 前面很多1, 省略不写了。
这句意思就是 让 IO0SET 寄存器 除了第一个 bit 之外, 其他 bit 都为 1(置引脚为高电平)。

IO0CLR = LED_ON;
这句意思就是 让 IO0CLR 寄存器 的第一个 bit 为 1(置引脚为低电平)。
由电路图可知, 引脚为低电平, LED 会亮。那此时 D1 点亮,其他不亮。

LED_ON <<= 1;
这句意思就是 LED_ON 左移 1 bit, 就是本来控制第一个 IO, 现在左移了, 要去控制 第二个 IO

if( LED_ON_Num++ == 4 )
这句意思就是 如果循环点亮到 第 4 个灯, 这就不能继续了, 要恢复 LED_ON 、 LED_ON_Num 为原来的值, 因为只有 4 个灯。
回复

使用道具 举报

ID:895406 发表于 2021-4-3 21:03 来自手机 | 显示全部楼层
聆烟雨 发表于 2021-4-2 18:47
IO0SET = ~LED_ON;
如果 LED_ON_Num = 1, 那么 LED_ON = 0x01, 取反后为 ...111110(二进制), 前面很 ...

大神很给力了,非常感谢,LED_ON_Num=1这个是什么意思?还请大神解释下,谢谢!
回复

使用道具 举报

ID:389483 发表于 2021-4-3 23:14 | 显示全部楼层
LED_ON_Num=1  IO口置1
回复

使用道具 举报

ID:895406 发表于 2021-4-4 17:16 来自手机 | 显示全部楼层
ANKA 发表于 2021-4-3 23:14
LED_ON_Num=1  IO口置1

就是置GPIO为输出吗?LED_ON表达的是什么意思?
回复

使用道具 举报

ID:895406 发表于 2021-4-4 17:17 来自手机 | 显示全部楼层
ANKA 发表于 2021-4-3 23:14
LED_ON_Num=1  IO口置1

就是置GPIO为输出吗?LED_ON表达的是什么意思?谢谢你!
回复

使用道具 举报

ID:469589 发表于 2021-4-4 20:55 | 显示全部楼层
LED_ON_Num=1
是if (LED_ON_Num == ?)后回复计数初值的。
即重新开始计数的意思。
回复

使用道具 举报

ID:844772 发表于 2021-4-4 23:15 | 显示全部楼层
永恒动力 发表于 2021-4-4 17:17
就是置GPIO为输出吗?LED_ON表达的是什么意思?谢谢你!

LED_ON_Num 是个变量啊,计数用的,就是第几个灯亮,超过总数4就重置为1.跟IO没关。是怕看不懂才设的,否则直接用LED_ON也行,它大于8就重置1.
回复

使用道具 举报

ID:895406 发表于 2021-4-6 08:56 | 显示全部楼层
glinfei 发表于 2021-4-4 23:15
LED_ON_Num 是个变量啊,计数用的,就是第几个灯亮,超过总数4就重置为1.跟IO没关。是怕看不懂才设的,否 ...

LED_ON 就是变量,是这个意思吧 ,谢谢你!
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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