我有一个STM32L发现板,其中包含一个stm32l152rb微处理器。我试着在没有任何库的情况下在汇编中对那个板进行编程。到目前为止,我成功地编写了链接器脚本和一个基本例程,它将.data部分复制到内存中,并将bss部分归零。但除此之外,我有点迷茫了。
为了了解配置GPIo的工作原理,我做了一个很小的实验,我想为点亮连接到GPIO端口B,pin 7的绿色LED的电路板编写一个程序。阅读数据表,我得出结论,我需要做以下两件事:
但在这个地方,我象征性地看不到树木的森林。我不知道我应该选择哪种IO模式,所有这些缩略词都让我感到困惑。我真的很感激有人给我详细的信息,指导和可能的例子组装如何做到这一点。
发布于 2013-05-31 17:45:58
在使用GPIO模块之前,您必须执行以下操作:
AHBRSTR,位GPIOBRST设置为1- rst高。AHBRSTR,位GPIOBRST设置为0- rst低。
AHBENR,位GPIOBEN设置为1-启用时钟
之后,您可以开始使用GPIO寄存器。
GPIOB_MODER,位场15:14设置为01 -通用输出模式GPIOB_OTYPER,位7设置为0输出推挽。GPIOB_OSPEEDR,位场15:14设置为00 - 400 kHz极低速。GPIOB_PUPDR,位域15:14设置为00 -不拉,下拉现在您可以使用GPIOB_BSRR (设置/重置)寄存器或GPIOB_ODR (输出)寄存器:
GPIOB_BSRR,位7设置为1-设置GPIOB引脚7(高)GPIOB_BSRR,位23设置为1- ReSet GPIOB引脚7(低)https://stackoverflow.com/questions/16846875
复制相似问题