[英]Userbutton on STM32f4
我按下用戶按鈕時試圖打開LED
我想我已經啟用了正確的外設時鍾和正確的寄存器。 該按鈕位於porta位0
這是我的代碼......任何幫助都會很棒。 對不起,如果有點簡單,我還在學習董事會。
int main (void)
{
RCC->AHB1ENR=0x9;
GPIOA->MODER = 0x00000002;
GPIOD->MODER = 0x55000000;
GPIOD->OTYPER = 0;
GPIOD->OSPEEDR = 0;
GPIOD->PUPDR = 0;
GPIOA->PUPDR = 0;
GPIOA->OTYPER = 0;
GPIOA->OSPEEDR = 0;
while(1)
{
if(GPIOA->IDR == 0x0001){
GPIOD->ODR = 0xF000;
}
else{
GPIOD->ODR = 0;
}
}
}
我不知道STM32f4,但我猜測而不是
if(GPIOA->IDR == 0x0001)
你要
if ((GPIOA->IDR & 0x0001) != 0)
原始檢查低位是否打開以及所有其他位是否關閉,而新版本只檢查低位並忽略其余位。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.