4772| 4
|
寄存器操作GPIOA->CRH&=0XFFFFFFF0; GPIOA->CRH|=0X00000003这两句,为什么就推挽输出了? |
1金钱
最佳答案你首先应该查查知道,CRH这个寄存器是端口配置高寄存器,控制8-15这些io口的配置,之所以用&=是为了不影响其他位的状态,只把A8配置为0000,然后|=仍旧不改变其他位的状态,A8配置为0011。00表示通用推挽输出,11表示输出模式,最大速度50MHz。这些东西都是通过看寄存器手册得到的。这样的话,编程速度和维护速度会大幅度降低,所以开发了库函数方式。
| ||
| ||
| ||
| ||
| ||
我的开源链接 https://github.com/ShuifaHe/STM32.git 请关注,点赞支持哦。
|
||
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2025-6-18 22:30
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网