国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

電子工程網

標題: 【開源教程9】瘋殼·開源編隊無人機-定時器(LED 航情燈、指示燈閃爍) [打印本頁]

作者: Linda-x    時間: 2022-8-15 17:41
標題: 【開源教程9】瘋殼·開源編隊無人機-定時器(LED 航情燈、指示燈閃爍)
COCOFLY教程
——瘋殼·無人機·系列
定時器(LED 航情燈、指示燈閃爍)






圖1

一、定時器簡介
  定時器具有定時功能,類似于生活中的“鬧鐘”,可以用定時器產生精確的定時時間,用來延時或者處理一些實時事件。
  STM32 系列的定時器分為基本定時器、通用定時器、高級控制定時器。后者包括前者的全部功能。通常地,STM32 高級定時器是 TIM1、TIM8,通用定時器是 TIM2、TIM3、TIM4、TIM5,基本定時器是 TIM6、TIM7。
  而飛控的主核心 STM32F103CBT6 則有 4 路 16 位定時器分別是高級定時器TIM1、通用定時器 TIM2、TIM3 以及 TIM4。

二、定時器寄存器
  STM32F103 定時器相關的寄存器眾多,這里只講解重要的幾個寄存器。
  (1)TIMx_CR1:使能寄存器,最低位控制寄存器的開關,如下圖所示:


圖2
  TIM_CR1 寄存器主要配置定時器的循環計數、使能等操作,例如 CEN 位為1 是使能計數,為 0 是關閉計數。
  (2)TIMx_DIER: 定時器中斷使能寄存器, 最低位控制事件更新中斷的開關, 如下圖所示:


圖3
  該寄存的主要功能是配置定時器是定時器的中斷使能位,主要使用的是 UIE位,UIE 為 1 是使能中斷,為 0 時關閉中斷。
  TIMx_PSC:定時器時鐘分頻寄存器,如下圖所示:


圖4
  該寄存器負責把定時器時鐘分頻之后,再輸出給計數器,PSC[15:0]為分頻系數。
  (4)TIMx_ARR:定時器自動重裝載寄存器,如下圖所示:


圖5
  ARR[15:0]為自動重裝載值,當定時器采用向上計數時,計數值等于 ARR 時, 產生一個更新事件;當定時器采用向下計數時,最開始將 ARR 的值賦給計數值, 計數值向下累減為 0 時,產生一個更新事件,再次將 ARR 的值賦給計數值,進行新一輪的向下計數。
  (5)TIMx_SR: 狀態寄存器,標記當前與定時器相關的各種事件/中斷是否發生,我們只用到最低位表示事件更新中斷的標志位,如下圖所示:


圖6
  該寄存器主要用于查看定時器的更新中斷標志位,當計數發生上溢或者下溢時,UIF 位將被置 1,標志一次計數完成。


三、定時器實驗
  本節實驗的內容是主要是針對GPIO 中的周期性點亮無人機的航情燈以及信號燈,對其進行變形,使用通用定時器 TIM3 精確定時周期性點亮及關閉無人機的航情燈以及信號燈。
  同樣也是查看原理圖可以得知無人機的航情燈同一接在NPN 三極管Q1 上, 而三極管的基極又接在了單片機的PA8 上;兩個信號燈分別接在了 PC13 和PC14 上。


圖7


圖8


圖9
  關于 GPIO 這部分的驅動代碼可以沿襲保留,不同的是需要加入定時器的初始化以及配置定時器中斷,編寫代碼的思路如下表所示。



圖10
  按照代碼思路,編寫代碼(通過調用官方庫)如下圖所示為 GPIO 相關驅動代碼:



圖11


圖12
  完成配置 GPIO 后,便是對定時器進行配置,我們的 STM32 是外接了 8MHz的晶振的,主頻是 72MHz 先來看一下時鐘樹圖,如下圖所示。


圖13
  定時器是掛載在 APB1 時鐘總線下的(從手冊可知),從時鐘樹圖中可知APB1 用于定時器的時鐘頻率在未分頻的是情況下 72MHz,根據定時器時鐘分頻寄存器(TIMx_PSC)以及定時器自動重裝載寄存器(TIMx_ARR)之間的關系, 可以得出,定時時間:
Tout=((arr+1)*(psc+1))/Ft        s
  其中 Tout 為定時時間單位為 s,arr 為自動重裝載寄存器的初值,psc 為分頻系數,Ft 為 APB 的主頻,也就是 72MHz。那么要定時 1s 則只需要把 arr 設置為載值 9999,psc 設置為 7199 即可,即:
Tout=((9999+1)*(7199+1))/72000000
=10000*7200/72000000
=72000000/72000000
=1s
  所以可以得到定時器初始化代碼如下圖所示。


圖14


圖15
  配置完成后便會 1s 周期進入一次定時器中斷,在定時器中斷里對無人機的航情燈以及指示燈的 GPIO 端口進行翻轉即可實現,周期性點亮,代碼如下圖所示。


圖16
  寫好代碼后保存、編譯、下載,然后就可以看到飛控的 LED 指示燈以及四個螺旋槳下面的航情燈周期 1S 閃爍,如下圖所示。


圖17






文件下載請點擊: 【2】定時器(LED航情燈、指示燈閃爍).pdf (808.08 KB)






歡迎光臨 電子工程網 (http://www.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: 男人的午夜天堂 | 亚洲欧美日本综合 | 天天操女人 | 国产毛片高清 | 亚洲黄色成人 | 国产精品免费福利 | 国产精品成人一区二区不卡 | 欧美精品久久久久久久久大尺度 | 久久精品国产99久久久 | 麻豆91在线播放 | 91精品国产入口 | 麻豆视频www | 视频一区二区三区自拍 | 国产成人亚洲毛片 | 亚洲成人中文字幕 | 扫黑决战免费完整版高清 | www久草| 五月天色婷婷在线 | 欧美日韩国产一区二区三区伦 | 色视频免费观看高清完整 | 91国内精品久久久久免费影院 | 青青草原.comav | 国产亚洲精品成人久久网站 | 欧美图片自拍偷拍 | 五月天久草 | 九九re | 亚洲免费视频一区二区三区 | 久久夜色视频 | 天天操天天摸天天射 | 免费观看黄a一级视频日本 免费观看黄a一级视频 | 亚洲欧美网 | 亚洲国产综合精品中文第一区 | 四虎精品影院4hutv四虎 | 亚洲一级毛片免费观看 | 色五月在线视频 | 91资源网站 | 99在线视频网站 | 嗯操 | 日韩免费观看一级毛片看看 | 亚洲国产一区二区三区在线观看 | 日本一区二区在线视频 |