簡介
CH32V103系列是以青稞V3A處理器為核心的32位通用MCU,該處理器是基于RISC-V開源指令集設(shè)計。 片上集成了時鐘安全機制、多級電源管理、通用DMA控制器。 此系列具有1路USB2.0主機/設(shè)備接口、多通道12位ADC轉(zhuǎn)換模塊、多通道TouchKey、多組定時器、多路IIC/USART/SPI接口等豐富的外設(shè)資源。
本章教程通過CH32V103開發(fā)板板載兩個LED燈顯示程序運行狀態(tài),具體情況如下:
(1)串口調(diào)式助手大約每隔500ms打印一次”Enter interrupt“;
(2)開發(fā)板上LED1與LED2不停閃爍,其中,LED1閃爍較快,大約為100ms一次; LED2閃爍較慢,大約為500ms閃爍一次。
1、TIM簡介及相關(guān)函數(shù)介紹
CH32V103定時器包含1個高級16位定時器、3個通用16位定時器,以及2個看門狗定時器和1個系統(tǒng)時基定時器。
高級控制定時器(TIM1)是一個 16 位的自動裝載計數(shù)器,具有可編程的預(yù)分頻器。 除了完整的通用定時器功能外, 可以被看成是分配到 6 個通道的三相 PWM 發(fā)生器, 具有帶死區(qū)插入的互補 PWM 輸出功能,允許在指定數(shù)目的計數(shù)器周期之后更新定時器進行重復(fù)計數(shù)周期,剎車功能等。 高級控制定時器的很多功能都與通用定時器相同,內(nèi)部結(jié)構(gòu)也相同,因此高級控制定時器可以通過定時器鏈接功能與 TIM 定時器協(xié)同操作,提供同步或事件鏈接功能。
通用定時器(TIM2、TIM3和TIM4),其可同步運行,每個定時器都有一個 16 位的自動裝載遞加/遞減計數(shù)器、一個可編程的 16 位預(yù)分頻器和 4 個獨立的通道,每個通道都可用于輸入捕獲、輸出比較、 PWM 生成和單脈沖模式輸出。 其能通過定時器鏈接功能與高級控制定時器共同工作,提供同步或事件鏈接功能。 在調(diào)試模式下,計數(shù)器可以被凍結(jié),同時 PWM 輸出被禁止,從而切斷由這些輸出所控制的開關(guān)。 任意通用定時器都能用于產(chǎn)生 PWM 輸出。 每個定時器都有獨立的 DMA 請求機制。 這些定時器還能夠處理增量編碼器的信號,也能處理 1 至 3 個霍爾傳感器的數(shù)字輸出。
系統(tǒng)時基定時器(SysTick),這是內(nèi)核控制器自帶的一個定時器,用于產(chǎn)生 SYSTICK 異常,可專用于實時操作系統(tǒng),為系統(tǒng)提供“心跳”節(jié)律,也可當(dāng)成一個標準的64位遞增計數(shù)器。 以AHB時鐘的8分頻為基準時鐘源。 當(dāng)計數(shù)器遞增到設(shè)置比較值時,產(chǎn)生一個可屏蔽系統(tǒng)中斷。 關(guān)于2個看門狗定時器,在前面教程有過介紹,在此不做過多贅述。
關(guān)于CH32V103定時器具體信息及其相關(guān)功能和實現(xiàn)等,可參考CH32V103數(shù)據(jù)手冊和應(yīng)用手冊。 本章教程主要通過CH32V103通用定時器TIM3編寫一個定時器中斷程序,并下載到開發(fā)板進行驗證,程序編寫所需相關(guān)函數(shù)在庫函數(shù)中進行調(diào)用,庫函數(shù)文件中函數(shù)介紹如下:
1.1、無效TIM_DeInit(TIM_TypeDef* TIMx)
功 能:將TIMx外圍寄存器初始化為其默認重置值。
輸 入:無
1.2、無效TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct)
功 能:根據(jù)TIM_TimeBaseInitStruct中指定的參數(shù)初始化TIMx時基單元外圍設(shè)備。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TimeBaseInitStruct:指向TIM_TimeBaseInitTypeDef結(jié)構(gòu)的指針。
1.3、無效TIM_OC1Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct)
功 能:根據(jù)TIM_OCInitStruct中指定的參數(shù)初始化TIMx Channel1。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_OCInitStruct:指向TIM_OCInitTypeDef結(jié)構(gòu)的指針。
1.4、無效TIM_ICInit(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct)
功 能:根據(jù)TIM_ICInitStruct中指定的參數(shù)初始化TIM外圍設(shè)備。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_ICInitStruct:指向TIM_ICInitTypeDef結(jié)構(gòu)的指針。
1.5、無效TIM_PWMIConfig(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct)
功 能:根據(jù)TIM結(jié)構(gòu)中的指定參數(shù)配置TIM外圍設(shè)備,以測量外部PWM信號。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_ICInitStruct:指向TIM_ICInitTypeDef結(jié)構(gòu)的指針。
1.6、無效TIM_BDTRConfig(TIM_TypeDef* TIMx,TIM_BDTRInitTypeDef *TIM_BDTRInitStruct)
功 能:配置:中斷特性、死區(qū)時間、鎖定級別、OSSI、OSSR狀態(tài)和AOE(自動輸出啟用)。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_BDTRInitStruct:指向TIM_BDTRInitTypeDef結(jié)構(gòu)的指針。
1.7、無效TIM_TimeBaseStructInit(TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct)
功 能:用默認值填充每個TIM_TimeBaseInitStruct成員。
輸 入:TimeBaseInitStruct:指向TIM_TimeBaseInitTypeDef結(jié)構(gòu)的指針。
1.8、無效TIM_OCStructInit(TIM_OCInitTypeDef*TIM_OCInitStruct)
功 能:用默認值填充每個TIM_OCInitStruct成員。
輸 入:TIM_OCInitStruct:指向TIM_OCInitTypeDef結(jié)構(gòu)的指針。
1.9、無效TIM_ICStructInit(TIM_ICInitTypeDef*TIM_ICInitStruct)
功 能:用其默認值填充每個TIM_ICInitStruct成員。
輸 入:TIM_ICInitStruct:指向TIM_ICInitTypeDef結(jié)構(gòu)的指針。
1.10、無效TIM_BDTRStructInit(TIM_BDTRInitTypeDef*TIM_BDTRInitStruct)
功 能:用默認值填充每個TIM_BDTRInitStruct成員。
輸 入:TIM_BDTRInitStruct:指向TIM_BDTRInitTypeDef結(jié)構(gòu)的指針。
1.11、void TIM_Cmd(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:啟用或禁用指定的TIM外圍設(shè)備。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; NewState:啟用或禁用。
1.12、void TIM_CtrlPWMOutputs(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:啟用或禁用TIM外圍設(shè)備主輸出。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; NewState:啟用或禁用。
1.13、void TIM_ITConfig(TIM_TypeDef* TIMx, uint16_t TIM_IT, FunctionalState NewState)
功 能:啟用或禁用指定的TIM中斷。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_IT:指定要啟用或禁用的TIM中斷源; NewState:啟用或禁用。
1.14、無效TIM_GenerateEvent(TIM_TypeDef* TIMx,uint16_t TIM_EventSource)
功 能:將TIMx外圍寄存器初始化為其默認重置值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_EventSource:指定事件源。
1.15、無效TIM_DMAConfig(TIM_TypeDef* TIMx、uint16_t TIM_DMABase、uint16_t TIM_DMABurstLength)
功 能:配置TIMx的DMA接口。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_DMABase:DMA基址; TIM_DMABurstLength:DMA突發(fā)長度。
1.16、void TIM_DMACmd(TIM_TypeDef* TIMx, uint16_t TIM_DMASource, FunctionalState NewState)
功 能:啟用或禁用TIMx的DMA請求。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_DMASource:指定DMA請求源; NewState:啟用或禁用。
1.17、無效TIM_InternalClockConfig(TIM_TypeDef* TIMx)
功 能:配置TIMx內(nèi)部時鐘。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備。
1.18、無效TIM_ITRxExternalClockConfig(TIM_TypeDef* TIMx,uint16_t TIM_InputTriggerSource)
功 能:將TIMx內(nèi)部觸發(fā)器配置為外部時鐘。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_InputTriggerSource:觸發(fā)源。
1.19、無效TIM_TIxExternalClockConfig(TIM_TypeDef* TIMx、uint16_t TIM_TIxExternalCLKSource、uint16_t TIM_ICPolarity uint16_t ICFilter)
功 能:將TIMx觸發(fā)器配置為外部時鐘。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_TIxExternalCLKSource: 觸發(fā)器源; ICFilter:指定過濾器值。 此參數(shù)的值必須介于0x0和0xF之間。
1.20、void TIM_ETRClockMode1Config(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,uint16_t ExtTRGFilter)
功 能:配置外部時鐘模式1。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_ExtTRGPrescaler:外部觸發(fā)預(yù)分頻器; TIM_ExtTRGPolarity:外部觸發(fā)極性; ExtTRGFilter:外部觸發(fā)器篩選器。
1.21、void TIM_ETRConfig(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,uint16_t ExtTRGFilter)
功 能:配置TIMx外部觸發(fā)器(ETR)。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_ExtTRGPrescaler:外部觸發(fā)預(yù)分頻器; TIM_ExtTRGPolarity:外部觸發(fā)極性; ExtTRGFilter:外部觸發(fā)器篩選器。
1.22、無效TIM_PrescalerConfig(TIM_TypeDef* TIMx、uint16_t預(yù)分頻器、uint16_t TIM_PSCReloadMode)
功 能:配置TIMx預(yù)分頻器。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; Prescaler:指定預(yù)分頻器寄存器值; TIM_PSCReloadMode:指定TIM預(yù)分頻器重新加載模式。
1.23、無效TIM_CounterModeConfig(TIM_TypeDef* TIMx,uint16_t TIM_CounterMode)
功 能:指定要使用的TIMx計數(shù)器模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_CounterMode:指定要使用的計數(shù)器模式。
1.24、無效TIM_SelectInputTrigger(TIM_TypeDef* TIMx, uint16_t TIM_InputTriggerSource)
功 能:選擇輸入觸發(fā)源。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_InputTriggerSource:輸入觸發(fā)源。
1.25、void TIM_EncoderInterfaceConfig(TIM_TypeDef* TIMx, uint16_t TIM_EncoderMode,uint16_t TIM_IC1Polarity, uint16_t TIM_IC2Polarity)
功 能:配置TIMx編碼器接口。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_EncoderMode:指定TIMx編碼器模式;TIM_IC1Polarity:指定IC1極性;TIM_IC2Polarity:指定IC2極性。
1.26、void TIM_ForcedOC1Config(TIM_TypeDef* TIMx, uint16_t TIM_ForcedAction)
功 能:強制TIMx輸出1波形為激活或非激活電平。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_ForcedAction:指定要設(shè)置為輸出波形的強制操作。
1.27、void TIM_ARRPreloadConfig(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:在ARR上啟用或禁用TIMx外設(shè)預(yù)加載寄存器。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;NewState:啟用或禁用。
1.28、void TIM_SelectCOM(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:選擇TIM外圍換向事件。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;NewState:啟用或禁用。
1.29、void TIM_SelectCCDMA(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:選擇TIMx外圍捕獲比較DMA源。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;NewState:啟用或禁用。
1.30、void TIM_CCPreloadControl(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:設(shè)置或重置TIM外圍捕獲比較預(yù)加載控制位。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;NewState:啟用或禁用。
1.31、void TIM_OC1PreloadConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPreload)
功 能:啟用或禁用CCR1上的TIMx外圍預(yù)加載寄存器。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_OCPreload:TIMx外圍預(yù)加載寄存器的新狀態(tài)。
1.32、void TIM_OC1FastConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCFast)
功 能:配置TIMx輸出比較1快速功能。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_OCFast:輸出比較快速啟用位的新狀態(tài)。
1.33、void TIM_ClearOC1Ref(TIM_TypeDef* TIMx, uint16_t TIM_OCClear)
功 能:清除或保護外部事件上的OCREF1信號。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_OCClear:輸出比較清除啟用位的新狀態(tài)。
1.34、void TIM_OC1PolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPolarity)
功 能:配置TIMx通道1極性。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_OCPolarity:指定OC1極性。
1.35、void TIM_OC1NPolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCNPolarity)
功 能:配置TIMx通道1極性。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_OCNPolarity:指定OC1N極性。
1.36、無效TIM_CCxCmd(TIM_TypeDef* TIMx、uint16_t TIM_Channel、uint16_t TIM_CCx)
功 能:啟用或禁用TIM捕獲比較通道x。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_Channel:指定TIM通道; TIM_CCx:指定TIM信道CCxE位的新狀態(tài)。
1.37、無效TIM_CCxNCmd(TIM_TypeDef* TIMx、uint16_t TIM_Channel、uint16_t TIM_CCxN)
功 能:啟用或禁用TIM捕獲比較通道xN。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_Channel:指定TIM通道; TIM_CCxN:指定TIM信道CCxNE位的新狀態(tài)。
1.38、無效TIM_SelectOCxM(TIM_TypeDef* TIMx、uint16_t TIM_Channel、uint16_t TIM_OCMode)
功 能:選擇TIM輸出比較模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; TIM_Channel:指定TIM通道; TIM_OCMODE:指定TIM輸出比較模式。
1.39、無效TIM_UpdateDisableConfig(TIM_TypeDef* TIMx,函數(shù)狀態(tài)新狀態(tài))
功 能:啟用或禁用TIMx更新事件。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備; NewState:啟用或禁用。
1.40、無效TIM_UpdateRequestConfig(TIM_TypeDef* TIMx, uint16_t TIM_UpdateSource)
功 能:配置TIMx更新請求中斷源。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_UpdateSource:指定更新源。
1.41、void TIM_SelectHallSensor(TIM_TypeDef* TIMx, FunctionalState NewState)
功 能:啟用或禁用TIMx的霍爾傳感器接口。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;NewState:啟用或禁用。
1.42、void TIM_SelectOnePulseMode(TIM_TypeDef* TIMx, uint16_t TIM_OPMode)
功 能:選擇TIMx的單脈沖模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_OPMode:指定要使用的OPM模式。
1.43、void TIM_SelectOutputTrigger(TIM_TypeDef* TIMx, uint16_t TIM_TRGOSource)
功 能:選擇TIMx觸發(fā)器輸出模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_TRGOSource:指定觸發(fā)器輸出源。
1.44、void TIM_SelectSlaveMode(TIM_TypeDef* TIMx, uint16_t TIM_SlaveMode)
功 能:選擇TIMx從機模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_SlaveMode:指定定時器從模式。
1.45、void TIM_SelectMasterSlaveMode(TIM_TypeDef* TIMx, uint16_t TIM_MasterSlaveMode)
功 能:設(shè)置或重置TIMx主/從模式。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_MasterSlaveMode:指定定時器主從模式。
1.46、void TIM_SetCounter(TIM_TypeDef* TIMx, uint16_t Counter)
功 能:設(shè)置TIMx計數(shù)器寄存器值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;Counter:指定計數(shù)器寄存器的新值。
1.47、void TIM_SetAutoreload(TIM_TypeDef* TIMx, uint16_t Autoreload)
功 能:設(shè)置TIMx自動重新加載寄存器值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;Autoreload:指定Autoreload寄存器的新值。
1.48、void TIM_SetCompare1(TIM_TypeDef* TIMx, uint16_t Compare1)
功 能:設(shè)置TIMx捕獲比較1寄存器值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;Compare1:指定捕獲Compare1寄存器的新值。
1.49、void TIM_SetIC1Prescaler(TIM_TypeDef* TIMx, uint16_t TIM_ICPSC)
功 能:設(shè)置TIMx輸入捕捉1預(yù)分頻器。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_ICPSC:指定輸入Capture1預(yù)分頻器的新值。
1.50、void TIM_SetClockDivision(TIM_TypeDef* TIMx, uint16_t TIM_CKD)
功 能:設(shè)置TIMx時鐘刻度值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_CKD:指定時鐘分頻值。
1.51、uint16_t TIM_GetCapture1(TIM_TypeDef* TIMx)
功 能:獲取TIMx輸入捕獲1的值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備。
1.52、uint16_t TIM_GetCounter(TIM_TypeDef* TIMx)
功 能:獲取TIMx計數(shù)器值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備。
1.53、uint16_t TIM_GetPrescaler(TIM_TypeDef* TIMx)
功 能:獲取TIMx預(yù)分頻器值。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備。
1.54、FlagStatus TIM_GetFlagStatus(TIM_TypeDef* TIMx, uint16_t TIM_FLAG)
功 能:檢查是否設(shè)置了指定的TIM標志。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_FLAG:指定要檢查的標志。
1.55、void TIM_ClearFlag(TIM_TypeDef* TIMx, uint16_t TIM_FLAG)
功 能:清除TIMx的掛起標志。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_FLAG:指定要清除的標志位。
1.56、ITStatus TIM_GetITStatus(TIM_TypeDef* TIMx, uint16_t TIM_IT)
功 能:檢查TIM中斷是否發(fā)生。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_IT:指定要檢查的TIM中斷源。
1.57、void TIM_ClearITPendingBit(TIM_TypeDef* TIMx, uint16_t TIM_IT)
功 能:清除TIMx的中斷掛起的位。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_IT:指定要清除的掛起位。
1.58、static void TI1_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection,uint16_t TIM_ICFilter)
功 能:將TI1配置為輸入。
輸 入:TIMx:其中x可以是1到4來選擇TIM外圍設(shè)備;TIM_ICPolarity:輸入極性;TIM_ICSelection:指定要使用的輸入;TIM_ICFilter:指定輸入捕獲篩選器。
以上函數(shù)均為庫函數(shù)內(nèi)部函數(shù),在進行使用時只需在程序中進行調(diào)用即可。
2、硬件設(shè)計
本章教程通過定時器中斷控制LED燈閃爍,其中,定時器為CH32V103內(nèi)部資源,無需進行硬件設(shè)計,只需進行LED連接即可,LED與GPIO引腳連接方式如下:
LED1與PA0連接;
LED2與PA1連接。
3、軟件設(shè)計
本章教程主要通過定時器中斷控制LED燈閃爍,其中,led.c文件與led.h文件前面GPIO教程中已講解,在此不再介紹,本章主要介紹time.h文件、time.c文件以及main.c文件,具體程序如下:
time.h文件
time.h文件主要是定時器初始化配置函數(shù)的聲明。
time.c文件
4、下載驗證
將編譯好的程序下載到開發(fā)板并復(fù)位,可以看到開發(fā)板兩個LED燈閃爍,其中,LED1閃爍較快,LED2閃爍較慢。同時,串口調(diào)試助手打印顯示:Enter interrupt,表示程序進入中斷,大約500ms打印一次。串口調(diào)試助手打印顯示如下:
-
led
+關(guān)注
關(guān)注
242文章
23847瀏覽量
674182 -
mcu
+關(guān)注
關(guān)注
146文章
17984瀏覽量
367036 -
定時器
+關(guān)注
關(guān)注
23文章
3298瀏覽量
118960 -
RISC-V
+關(guān)注
關(guān)注
46文章
2573瀏覽量
48838 -
CH32V103
+關(guān)注
關(guān)注
1文章
13瀏覽量
1239 -
ch32
+關(guān)注
關(guān)注
0文章
73瀏覽量
904
發(fā)布評論請先 登錄
如何使用STM32F103通用定時器中斷來實現(xiàn)LED燈閃爍呢
CH32V103基礎(chǔ)教程7-定時器中斷
CH32V103基礎(chǔ)教程8-PWM輸出
【MCU】基于STM32CubeMX定時器中斷實現(xiàn)LED閃爍

RISC-V MCU應(yīng)用開發(fā)教程之CH32V103

STM32 CubeMX學(xué)習(xí):3. 定時器閃爍LED

評論