物聯(lián)網(wǎng)嵌入式技術(shù)課件:競(jìng)賽電子秒表_第1頁(yè)
物聯(lián)網(wǎng)嵌入式技術(shù)課件:競(jìng)賽電子秒表_第2頁(yè)
物聯(lián)網(wǎng)嵌入式技術(shù)課件:競(jìng)賽電子秒表_第3頁(yè)
物聯(lián)網(wǎng)嵌入式技術(shù)課件:競(jìng)賽電子秒表_第4頁(yè)
物聯(lián)網(wǎng)嵌入式技術(shù)課件:競(jìng)賽電子秒表_第5頁(yè)
已閱讀5頁(yè),還剩49頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

實(shí)現(xiàn)電子秒表物聯(lián)網(wǎng)嵌入式技術(shù)實(shí)現(xiàn)電子秒表引導(dǎo)案例:你還知道哪些電子秒表?了解一下它們的功能。機(jī)械秒表電子秒表秒表舊稱(chēng)馬表、跑表,是一種常用的測(cè)時(shí)儀器,多在徑賽中計(jì)時(shí)用。項(xiàng)目任務(wù)

任務(wù)1使用定時(shí)器定時(shí)一秒任務(wù)2STM32控制數(shù)碼管顯示任務(wù)3實(shí)現(xiàn)電子秒表實(shí)現(xiàn)電子秒表職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施05任務(wù)小結(jié)06任務(wù)拓展07任務(wù)一使用定時(shí)器定時(shí)一秒了解定時(shí)器/計(jì)數(shù)器的工作原理;掌握Cortex-M3定時(shí)器的工作模式;理解Cortex-M3定時(shí)器的配置方法;理解Cortex-M3定時(shí)器中斷的配置方法;掌握Cortex-M3定時(shí)器的編程方法。能根據(jù)功能需求,使用STM32CubMX軟件,正確配置STM32定時(shí)器;能根據(jù)功能需求,正確添加代碼,操控STM32定時(shí)器實(shí)現(xiàn)基本定時(shí)器。職業(yè)能力目標(biāo)01知識(shí)目標(biāo)技能目標(biāo)職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施05任務(wù)小結(jié)06任務(wù)拓展07任務(wù)一使用定時(shí)器定時(shí)一秒任務(wù)描述:電子秒表的制作需要產(chǎn)生一個(gè)精確的1秒時(shí)間,本任務(wù)要求使用定時(shí)器產(chǎn)生1秒的時(shí)間,并控制LED燈1秒閃爍1次。任務(wù)要求:正確配置定時(shí)器;使用定時(shí)器中斷方式產(chǎn)生1秒時(shí)間。任務(wù)描述與要求02職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施05任務(wù)小結(jié)06任務(wù)拓展07任務(wù)一使用定時(shí)器定時(shí)一秒STM32定時(shí)/計(jì)數(shù)器定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)12知識(shí)鏈接03使用定時(shí)器定時(shí)1秒定時(shí)器中斷流程34STM32定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器分類(lèi)定時(shí)/計(jì)數(shù)工作原理23三種計(jì)數(shù)模式4定時(shí)時(shí)間的計(jì)算定時(shí)/計(jì)數(shù)器分類(lèi)STM32F103系列共有8個(gè)定時(shí)器,分為2個(gè)基本定時(shí)器TIM6和TIM7,4個(gè)通用定時(shí)器TIM2、TIM3、TIM4、TIM5,2個(gè)高級(jí)定時(shí)器TIM1和TIM8。定時(shí)器類(lèi)型定時(shí)器編號(hào)計(jì)數(shù)器位數(shù)計(jì)數(shù)器類(lèi)型捕獲/比較通道數(shù)掛載總線/接口時(shí)鐘定時(shí)器時(shí)鐘高級(jí)定時(shí)器TIM1、TIM816位遞增、遞減、遞增/遞減4APB2/72MHz72MHz通用定時(shí)器TIM2、TIM3、TIM4、TIM516位遞增、遞減、遞增/遞減4APB1/36MHz72MHz基本定時(shí)器TIM6、TIM716位遞增無(wú)APB1/36MHz72MHzSTM32定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器分類(lèi)定時(shí)/計(jì)數(shù)工作原理23三種計(jì)數(shù)模式4定時(shí)時(shí)間的計(jì)算定時(shí)/計(jì)數(shù)工作原理基本定時(shí)器框圖定時(shí)/計(jì)數(shù)工作原理定時(shí)器時(shí)鐘TIMxCLKTIM2、TIM3、TIM4、TIM5、TIM6、TIM7的計(jì)數(shù)時(shí)鐘TIM1、TIM8的計(jì)數(shù)時(shí)鐘STM32定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器分類(lèi)定時(shí)/計(jì)數(shù)工作原理23三種計(jì)數(shù)模式4定時(shí)時(shí)間的計(jì)算三種計(jì)數(shù)模式計(jì)數(shù)模式計(jì)數(shù)示意圖計(jì)數(shù)過(guò)程向上計(jì)數(shù)模式從0開(kāi)始遞增計(jì)數(shù),直到ARR,發(fā)生溢出。計(jì)數(shù)器重裝為0,開(kāi)始下一輪計(jì)數(shù)。向下計(jì)數(shù)模式從ARR開(kāi)始遞減計(jì)數(shù),直到0,發(fā)生溢出。計(jì)數(shù)器重裝為ARR,開(kāi)始下一輪計(jì)數(shù)。中央對(duì)齊模式(向上/向下計(jì)數(shù))從0開(kāi)始遞增計(jì)數(shù),記到ARR-1,發(fā)生溢出;數(shù)器重裝為ARR,然后開(kāi)始向下計(jì)數(shù)直到1時(shí)發(fā)生溢出;然后計(jì)數(shù)器重裝為0,開(kāi)始下一輪計(jì)數(shù)。STM32定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器分類(lèi)定時(shí)/計(jì)數(shù)工作原理23三種計(jì)數(shù)模式4定時(shí)時(shí)間的計(jì)算定時(shí)時(shí)間的計(jì)算計(jì)數(shù)器在CK_CNT的驅(qū)動(dòng)下,計(jì)一個(gè)數(shù)的時(shí)間則是CK_CLK的倒數(shù),即:所以產(chǎn)生一次中斷的時(shí)間為:

STM32定時(shí)/計(jì)數(shù)器定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)12知識(shí)鏈接03使用定時(shí)器定時(shí)1秒定時(shí)器中斷流程34定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(1)HAL_TIM_Base_Init函數(shù)函數(shù)原型HAL_StatusTypeDefHAL_TIM_Base_Init(TIM_HandleTypeDef*htim)功能描述按照定時(shí)器句柄中指定的參數(shù)初始化定時(shí)器時(shí)基單元入口參數(shù)*htim:定時(shí)器句柄的地址返回值HAL_StatusTypeDef:HAL_OK初始化成功,HAL_ERROR:初始化失敗注意事項(xiàng)該函數(shù)可以由CubeMX軟件自動(dòng)生成,不需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(2)HAL_TIM_Base_Start函數(shù)函數(shù)原型HAL_StatusTypeDefHAL_TIM_Base_Start(TIM_HandleTypeDef*htim)功能描述在輪詢(xún)方式下啟動(dòng)定時(shí)器運(yùn)行入口參數(shù)*htim:定時(shí)器句柄的地址返回值HAL_StatusTypeDef:固定返回HAL_OK表示啟動(dòng)成功注意事項(xiàng)該函數(shù)在定時(shí)器初始化完成之后調(diào)用需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(3)HAL_TIM_Base_Start_IT函數(shù)函數(shù)原型HAL_StatusTypeDefHAL_TIM_Base_Start_IT(TIM_HandleTypeDef*htim)功能描述使能定時(shí)器的更新中斷,并啟動(dòng)定時(shí)器運(yùn)行入口參數(shù)*htim:定時(shí)器句柄的地址返回值HAL_StatusTypeDef:固定返回HAL_OK表示啟動(dòng)成功注意事項(xiàng)該函數(shù)在定時(shí)器初始化完成之后調(diào)用需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(4)HAL_TIM_Base_Stop函數(shù)函數(shù)原型HAL_StatusTypeDefHAL_TIM_Base_Stop(TIM_HandleTypeDef*htim)功能描述輪詢(xún)方式下停止定時(shí)器運(yùn)行入口參數(shù)*htim:定時(shí)器句柄的地址返回值HAL_StatusTypeDef:固定返回HAL_OK表示停止成功注意事項(xiàng)該函數(shù)在定時(shí)器初始化完成之后調(diào)用需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(5)HAL_TIM_Base_Stop_IT函數(shù)函數(shù)原型HAL_StatusTypeDefHAL_TIM_Base_Stop_IT(TIM_HandleTypeDef*htim)功能描述中斷方式下停止定時(shí)器運(yùn)行入口參數(shù)*htim:定時(shí)器句柄的地址返回值HAL_StatusTypeDef:固定返回HAL_OK表示停止成功注意事項(xiàng)該函數(shù)在定時(shí)器初始化完成之后調(diào)用需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(6)HAL_TIM_IRQHandler函數(shù)函數(shù)原型voidHAL_TIM_IRQHandler(TIM_HandleTypeDef*htim)功能描述所有定時(shí)器中斷發(fā)生后的通用處理函數(shù)入口參數(shù)*htim:定時(shí)器句柄的地址返回值無(wú)注意事項(xiàng)函數(shù)內(nèi)部先判斷中斷類(lèi)型,并清除對(duì)應(yīng)的中斷標(biāo)志,最后調(diào)用回調(diào)函數(shù)完成中斷處理該函數(shù)可以由CubeMX軟件自動(dòng)生成,不需要用戶(hù)自己調(diào)用定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)(7)HAL_TIM_PeriodElapsedCallback函數(shù)函數(shù)原型voidHAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef*htim)功能描述所有定時(shí)器中斷發(fā)生后的通用處理函數(shù)入口參數(shù)*htim:定時(shí)器句柄的地址返回值無(wú)注意事項(xiàng)1.該函數(shù)由定時(shí)器中斷通用處理函數(shù)HAL_TIM_IRQHandler調(diào)用,完成所有定時(shí)器的更新中斷的任務(wù)處理2.函數(shù)內(nèi)部需要根據(jù)定時(shí)器句柄的實(shí)例來(lái)判斷是哪一個(gè)定時(shí)器產(chǎn)生的本次更新中斷3.函數(shù)由用戶(hù)根據(jù)具體的處理任務(wù)編寫(xiě)STM32定時(shí)/計(jì)數(shù)器定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)12知識(shí)鏈接03使用定時(shí)器定時(shí)1秒定時(shí)器中斷流程34使用定時(shí)器定時(shí)1秒定時(shí)時(shí)間計(jì)算公式為:T=((PSC+1)×(ARR+1))/TIMxCLK基本定時(shí)器TIM6,遞增計(jì)數(shù),若:PSC=7200-1,ARR=10000-1,T=1s。STM32定時(shí)/計(jì)數(shù)器定時(shí)/計(jì)數(shù)功能的數(shù)據(jù)類(lèi)型和接口函數(shù)12知識(shí)鏈接03使用定時(shí)器定時(shí)1秒定時(shí)器中斷流程34定時(shí)器6遞增計(jì)數(shù),記到ARR時(shí),觸發(fā)更新中斷在啟動(dòng)文件中找到中斷服務(wù)程序TIM6_IRQHandlerTIM6_IRQHandler中調(diào)用定時(shí)器通用處理函數(shù)HAL_TIM_IRQHandlerHAL_TIM_IRQHandler調(diào)用更新中斷回調(diào)函數(shù)HAL_TIM_PeriodElapsedCallback完成具體的任務(wù)定時(shí)器中斷流程STM32定時(shí)器中斷處理流程可以分為四步:職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施05任務(wù)小結(jié)06任務(wù)拓展07任務(wù)1使用定時(shí)器定時(shí)一秒任務(wù)準(zhǔn)備04任務(wù)實(shí)施前必須先準(zhǔn)備好以下設(shè)備和資源序號(hào)設(shè)備/資源名稱(chēng)數(shù)量是否準(zhǔn)備到位(√)1M3核心模塊12NEWLab實(shí)訓(xùn)平臺(tái)13USB轉(zhuǎn)串口線141k歐電阻15LED16杜邦線2職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施05任務(wù)小結(jié)06任務(wù)拓展07任務(wù)1使用定時(shí)器定時(shí)一秒搭建LED電路建立工程并生成代碼完善代碼123任務(wù)實(shí)施05編譯程序燒寫(xiě)程序觀察效果456搭建LED電路注意LED正負(fù)極不能接反搭建LED電路建立工程并生成代碼完善代碼123任務(wù)實(shí)施02編譯程序燒寫(xiě)程序觀察效果456建立工程并生成代碼第一步

新建文件夾“task3-1”用于保存本任務(wù)工程第二步

新建STM32CubeMX工程第三步

配置調(diào)試端口:SerialWire第四步配置時(shí)鐘:HCLK=72MHzPCLK1=36MHzPCLK2=72MHZ具體操作請(qǐng)參考項(xiàng)目1任務(wù)1任務(wù)實(shí)施相關(guān)內(nèi)容建立工程并生成代碼APB1Timerclocks為72MHz,即TIM2~TIM7的TIMxCLK為72MHz

定時(shí)器時(shí)鐘配置建立工程并生成代碼第五步:配置LED的GPIO功能建立工程并生成代碼第六步:配置定時(shí)器TIM6的參數(shù)

PSC=7200-1ARR=10000-1T=1秒建立工程并生成代碼第七步:配置定時(shí)器TIM6的中斷

使能定時(shí)器6中斷;搶占優(yōu)先級(jí)=1子優(yōu)先級(jí)=0建立工程并生成代碼第八步

保存STM32CubeMX工程第九步

生成初始C代碼工程,打開(kāi)MDK-ARM工程具體操作請(qǐng)參考項(xiàng)目1任務(wù)1任務(wù)實(shí)施相關(guān)內(nèi)容。搭建LED電路建立工程并生成代碼完善代碼123任務(wù)實(shí)施05編譯程序燒寫(xiě)程序觀察效果456完善代碼(1)啟動(dòng)TIM6并使能更新中斷在main.c中添加:完善代碼(2)編寫(xiě)TIM6更新中斷服務(wù)程序每隔1秒進(jìn)入一次回調(diào)函數(shù),LED狀態(tài)翻轉(zhuǎn)一次回調(diào)函數(shù)是通用的,必須先判斷一下是哪個(gè)定時(shí)器搭建LED電路建立工程并生成代碼完善代碼123任務(wù)實(shí)施05編譯程序燒寫(xiě)程序觀察效果456編譯程序

參考項(xiàng)目1任務(wù)2任務(wù)實(shí)施對(duì)工程進(jìn)行配置,確保編譯通過(guò),生成hex文件。燒寫(xiě)程序

參考項(xiàng)目1任務(wù)2任務(wù)實(shí)施,使用FlashLoaderDemonstrator工具將hex文件燒寫(xiě)到M3核心模塊。搭建LED電路建立工程并生成代碼完善代碼123任務(wù)實(shí)施05編譯程序燒寫(xiě)程序觀察效果456觀察效果閃爍

程序下載入STM32芯片后,將JP1撥到“NC”,按下復(fù)位按鍵,我們將看到LED每隔1秒亮滅一次。職業(yè)能力目標(biāo)01任務(wù)描述與要求02知識(shí)鏈接03任務(wù)準(zhǔn)備04任務(wù)實(shí)施0

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論