資源簡介
基于STM32F042,使用定時器 GPIO模擬串口,定時器自動發(fā)送數(shù)據(jù),發(fā)送不會一直不占用CPU

代碼片段和文件信息
#include?“stm32f0xx.h“
#include?
#include?“stm32f0xx_rcc.h“
#include?“stm32f0xx_gpio.h“
EXTI_InitTypeDef???EXTI_InitStructure;
GPIO_InitTypeDef???GPIO_InitStructure;
NVIC_InitTypeDef???NVIC_InitStructure;
void?SysClkInit(void)
{
RCC_DeInit();//復位時鐘
RCC_PLLConfig(RCC_PLLSource_HSI_Div2?RCC_PLLMul_12);?//HSI?2分頻(即8MHz/2=4MHz)作為PLL輸入時鐘,PLL?12倍頻?主時鐘頻率48MHz
RCC_PLLCmd(ENABLE);//使能PLL
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET)//等待PLL準備好
{
}
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);//將PLLCLK設(shè)置為系統(tǒng)時鐘源
while(RCC_GetSYSCLKSource()?!=?0x08)//判斷系統(tǒng)時鐘是否為PLLCLK
{
}
}
void?LEDConfig(void)
{
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOF?ENABLE);//使能GPIOF所在的AHB時鐘
/*?填充IO配置結(jié)構(gòu)體?*/
GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_0?|?GPIO_Pin_1;//PIN0,PIN1
GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_OUT;//輸出模式
GPIO_InitStructure.GPIO_OType?=?GPIO_OType_PP;//推挽
GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;//IO口頻率帶寬50MHz
GPIO_InitStructure.GPIO_PuPd?=?GPIO_PuPd_NOPULL;//沒有上拉下拉電阻
GPIO_Init(GPIOF?&GPIO_InitStructure);
}
void?BtnConfig(void)
{
/*?Enable?GPIOA?clock?*/
??RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA?ENABLE);
??/*?Configure?PA0?pin?as?input?floating?*/
??GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_0;
??GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_IN;
??GPIO_InitStructure.GPIO_PuPd?=?GPIO_PuPd_UP;
??GPIO_Init(GPIOA?&GPIO_InitStructure);
??/*?Enable?SYSCFG?clock?*/
??RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG?ENABLE);
??/*?Connect?EXTI0?Line?to?PA0?pin?*/
??SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA?EXTI_PinSource0);//for?exit?clk
??/*?Configure?EXTI0?line?*/
??EXTI_InitStructure.EXTI_Line?=?EXTI_Line0;
??EXTI_InitStructure.EXTI_Mode?=?EXTI_Mode_Interrupt;
??EXTI_InitStructure.EXTI_Trigger?=?EXTI_Trigger_Rising;
??EXTI_InitStructure.EXTI_LineCmd?=?ENABLE;
??EXTI_Init(&EXTI_InitStructure);
??/*?Enable?and?set?EXTI0?Interrupt?*/
??NVIC_InitStructure.NVIC_IRQChannel?=?EXTI0_1_IRQn;
??NVIC_InitStructure.NVIC_IRQChannelPriority?=?0x00;
??NVIC_InitStructure.NVIC_IRQChannelCmd?=?ENABLE;
??NVIC_Init(&NVIC_InitStructure);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2227??2018-04-04?15:24??STM32F0xx_StdPeriph_SenDi\Driver\misc_drv.c
?????文件?????????99??2018-04-04?15:24??STM32F0xx_StdPeriph_SenDi\Driver\misc_drv.h
?????文件???????3371??2018-04-04?13:15??STM32F0xx_StdPeriph_SenDi\Driver\stm32f0xx_conf.h
?????文件???????6824??2018-04-08?10:19??STM32F0xx_StdPeriph_SenDi\Driver\stm32f0xx_it.c
?????文件???????2209??2014-12-02?18:36??STM32F0xx_StdPeriph_SenDi\Driver\stm32f0xx_it.h
?????文件??????13141??2018-04-04?14:33??STM32F0xx_StdPeriph_SenDi\Driver\system_stm32f0xx.c
?????文件???????2053??2018-04-08?10:20??STM32F0xx_StdPeriph_SenDi\Driver\tmr_drv.c
?????文件????????290??2018-04-08?10:18??STM32F0xx_StdPeriph_SenDi\Driver\tmr_drv.h
?????文件???????4368??2018-04-08?10:43??STM32F0xx_StdPeriph_SenDi\Driver\uart_drv.c
?????文件????????625??2018-04-08?09:05??STM32F0xx_StdPeriph_SenDi\Driver\uart_drv.h
?????文件??????????0??2018-04-09?14:01??STM32F0xx_StdPeriph_SenDi\gpio?sim?uart?ok.txt
?????文件????????339??2018-04-08?10:20??STM32F0xx_StdPeriph_SenDi\MDK-ARM\EventRecorderStub.scvd
?????文件?????????19??2018-04-08?10:30??STM32F0xx_StdPeriph_SenDi\MDK-ARM\ExtDll.iex
?????文件??????68760??2018-04-08?11:02??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Jli
?????文件????????755??2018-04-04?14:07??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Jli
?????文件?????319547??2018-04-08?11:02??STM32F0xx_StdPeriph_SenDi\MDK-ARM\main.crf
?????文件???????2377??2018-04-08?11:02??STM32F0xx_StdPeriph_SenDi\MDK-ARM\main.d
?????文件?????372980??2018-04-08?11:02??STM32F0xx_StdPeriph_SenDi\MDK-ARM\main.o
?????文件?????314810??2018-04-08?10:59??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc.crf
?????文件???????2227??2018-04-08?10:59??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc.d
?????文件?????369752??2018-04-08?10:59??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc.o
?????文件?????318680??2018-04-08?10:09??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc_drv.crf
?????文件???????2420??2018-04-08?10:09??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc_drv.d
?????文件?????371540??2018-04-08?10:09??STM32F0xx_StdPeriph_SenDi\MDK-ARM\misc_drv.o
????.......????174325??2018-04-09?13:40??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Project.uvguix.WSZ
????.......?????85548??2018-04-08?10:41??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Project.uvoptx
????.......????212818??2018-04-08?10:41??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Project.uvprojx
?????文件??????93222??2018-04-08?11:04??STM32F0xx_StdPeriph_SenDi\MDK-ARM\Project_STM32F042.dep
?????文件???????3646??2014-12-06?04:34??STM32F0xx_StdPeriph_SenDi\MDK-ARM\readme.txt
?????文件????????107??2018-04-08?10:09??STM32F0xx_StdPeriph_SenDi\MDK-ARM\startup_stm32f042.d
............此處省略202個文件信息
- 上一篇:JD-GUI_1.3.0
- 下一篇:Qt仿QQ截圖實現(xiàn)的截圖工具
評論
共有 條評論