求助,帮我把以下程序解释一下,用惯了arduino,突然看SAM4L的程序没眉目,官方的例程,看了一天了,没明白四句是什么操作?知道包含使能、使能输出,但不知道是哪一句?还请高手指点一下。
GPIO->GPIO_PORT[2].GPIO_GPERS = GPIO_PC24;
GPIO->GPIO_PORT[2].GPIO_ODERC = GPIO_PC24;
GPIO->GPIO_PORT[2].GPIO_PUERS = GPIO_PC24;
GPIO->GPIO_PORT[2].GPIO_STERS = GPIO_PC24;
这些32bit的芯片都是用基地址+偏移地址,GPIO_GPERS,这个G、O、P、S开头的,到底是怎么操作寄存器?O是使能输出,P是使能,S是设置,P是结构体?
如下是别人的程序我能看懂
PIOB->PIO_PER |= (0x01 << LED_PIN);
/*LED????*/
PIOB->PIO_OER |= (0x01 << LED_PIN);
while (1)
{
/*?????,??LED*/
PIOB->PIO_CODR = (0x01 << LED_PIN);
/*??*/
delay(300);
/*?????,??LED*/
PIOB->PIO_SODR = (0x01 << LED_PIN);
如上两种程序对位操作方式有什么不同?
GPIO = General-purpose input/output
已解决
GPERS-使能GPIO寄存器
STERS-施密特触发器使能寄存器
PUERS -上拉使能寄存器
ODERC-输出使能寄存器
ARM这玩意设计的寄存器太多了