stm32 外設(shè)配置時(shí)注意RCC開(kāi)啟的問(wèn)題
復(fù)位就不必講了,和實(shí)際編程的聯(lián)系不是很大。
時(shí)鐘是必須要理解的,不然程序就不能按照設(shè)計(jì)的來(lái)運(yùn)行。
例如:
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//
以上的配置就是無(wú)效的。
正確的配置是下面的配置:先開(kāi)啟時(shí)鐘,然后配置寄存器,這樣配置才能有效。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
這種對(duì)于所有的外設(shè)都有效。
評(píng)論