STM32/STM8技术william hill官网
直播中

蒙奇

10年用户 265经验值
擅长:可编程逻辑
私信 关注
[问答]

怎么看懂那个寄存器的含义

`那个15—0,31-16是什么意思??GPIOx->BSRR = GPIO_Pin;(这个是把某个端口的某个引脚赋值个BSRR寄存器??)求大神指教。。。` QQ图片20150901103552.png

回帖(5)

张华

2015-9-1 10:42:36
15-0、31-16就是这个32位寄存器的位标号啊,0表示其D0位,15表示其D15,31表示其D31。
GPIOx->BSRR = GPIO_Pin的意思你理解的是对的,就是赋值给BSRR寄存器。如果你要将端口的某一个Pin清0,那么应该将GPIO_Pin左移16位后再赋值,而如果要置1,则直接赋值GPIO_Pin。图中的注释也说的很清楚了,如果你同时设置了BSy和BRy,则只有BSy起作用。。
举报

蒙奇

2015-9-1 20:22:23
引用: laidaihua 发表于 2015-9-1 10:42
15-0、31-16就是这个32位寄存器的位标号啊,0表示其D0位,15表示其D15,31表示其D31。
GPIOx->BSRR = GPIO_Pin的意思你理解的是对的,就是赋值给BSRR寄存器。如果你要将端口的某一个Pin清0,那么应该将GPIO_Pin左移16位后再赋值,而如果要置1,则直接赋值GPIO_Pin。图中的注释也说的很清楚了,如果你同时设置了BSy和BRy,则 ...

谢谢。。。。。。。。。。。
举报

蒙奇

2015-9-2 11:30:15
引用: laidaihua 发表于 2015-9-1 10:42
15-0、31-16就是这个32位寄存器的位标号啊,0表示其D0位,15表示其D15,31表示其D31。
GPIOx->BSRR = GPIO_Pin的意思你理解的是对的,就是赋值给BSRR寄存器。如果你要将端口的某一个Pin清0,那么应该将GPIO_Pin左移16位后再赋值,而如果要置1,则直接赋值GPIO_Pin。图中的注释也说的很清楚了,如果你同时设置了BSy和BRy,则 ...

在问你一个问题,就是那个PA15如果做普通IO是不是也应该先禁止JTAG,(我看那个按键程序的时候发现它禁止了JTAG)
举报

张华

2015-9-15 16:08:18
是的,仿照例子程序来吧。。
举报

蒙奇

2015-9-17 09:02:33
引用: laidaihua 发表于 2015-9-15 16:08
是的,仿照例子程序来吧。。

嗯。。谢谢。。。。。。。。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分