STM32學(xué)習手記④-TIM3上溢出定時(shí) 作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò ) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對面交流海量資料庫查詢(xún) 收藏 /******************************************************************************************* 函數名稱(chēng) :GPIO_Configuration()* 功能描述 : GPIO配置* 參數 : 無(wú)* 返回值 : 無(wú)* 全局變量 : 無(wú)* 全局靜態(tài)變量: 無(wú)* 局部靜態(tài)變量: 無(wú)******************************************************************************************/void GPIO_Configuration(){GPIO_InitTypeDef GPIO_InitStructure; //定義GPIO初始化結構體//--------將PE0配置為推挽輸出 Out_PP---------------------//GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0; //管腳位置定義,標號可以是NONE、ALL、0至15。GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz; //輸出速度2MHzGPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; //推挽輸出模式 Out_PPGPIO_Init(GPIOE,&GPIO_InitStructure); //GPIO初始化 }/******************************************************************************************* 函數名稱(chēng) : TIM3_Configuration* 功能描述 : TIM3初始化函數* 參數 : 無(wú)* 返回值 : 無(wú)* 全局變量 : 無(wú)* 全局靜態(tài)變量: 無(wú)* 局部靜態(tài)變量: 無(wú)******************************************************************************************/void TIM3_Configuration( ){TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; //定義一個(gè)初始化結構體TIM_TimeBaseStructure.TIM_Period=2000-1; //ARR的值TIM_TimeBaseStructure.TIM_Prescaler=36000-1; //分頻TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1; //采樣分頻TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; //向上計數模式TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); //初始化定時(shí)器2TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE); //打開(kāi)中斷 溢出中斷 TIM_Cmd(TIM3, ENABLE);//打開(kāi)定時(shí)器}/******************************************************************************************* 函數名稱(chēng) :main()* 功能描述 : 主函數* 參數 : 無(wú)* 返回值 : 無(wú)* 全局變量 : 無(wú)* 全局靜態(tài)變量: 無(wú)* 局部靜態(tài)變量: 無(wú)******************************************************************************************/int main(){RCC_Configuration();GPIO_Configuration();NVIC_Configuration( );TIM3_Configuration( );while(1){} }//中斷處理函數,在 stm32f10x._it.h 中查找void TIM3_IRQHandler(void){if(TIM_GetITStatus(TIM3,TIM_IT_Update)!=RESET){TIM_ClearITPendingBit(TIM3,TIM_IT_Update);//清中斷標志GPIO_WriteBit(GPIOE,GPIO_Pin_0,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_0)));//取反}} 上一頁(yè) 1 2 下一頁(yè)
評論