SlideShare a Scribd company logo
主程式簡介
陳品杰 <n26021539@mail.ncku.edu.tw>
林宏達 <openbox00.tw@gmail.com>
From NCKU
國立台北科技大學 / 2014-08-24
2014/8/28 1
Main()內程式
2014/8/28 2
2014/8/28 3
取樣感測器的值並計算
(4ms -250Hz)
倒數10秒計時器,沒有
動作就關掉飛行器
(10000ms)
3個控制Task
1個平衡Task
1個Shell指令解析Task
1個UART傳送Task
初始化板子周邊
GPIO,TIMER,USART,RCC,
MEM(使用SPI)
初始化外接陀螺儀
(使用I2C)
啟動倒數計時器
3個控制Task
1個Shell指令解析Task
1個UART傳送Task
1個平衡Task
PWM控制
PITCH控制
ROLL控制
1.讀取加速規值作單位換算
2.讀取陀螺儀值作單位換算
3.使用互補濾波器
4.更改馬達轉速
1.設定最大轉速
2.設定最小轉速
3.讀取加速規與陀螺儀的值做校準
(類似體重計歸零)
4.讀取陀螺儀的值做平均誤差
5.設定PID參數與期望角度值
(因為要平衡所以期望角度是0度)
6.啟動取樣感測器
Main()
• 首先進入HW初始化設定前,會先設置兩個Timer(一個是取樣、一
個是10秒內沒有任何控制訊號就將飛機關掉)
• 接著設置2個UART QEUEU與3個接收Shell指令的QUEUE
• 一個是UART傳送、一個是UART接收
• 一個是接收Shell的PWM(油門)指令、一個是接收Pitch(前仰後仰)、一個是
接收roll(左翻右翻)
2014/8/28 4
Main()
• 之後設定HW相關周邊初始化,接著打開時間(因為前面設定好
Timer,這邊要開始計時),然後創造想要的task,包含
• PWM控制(油門)
• UsartSend
• Shell
• 平衡
• 前仰後仰控制
• 左翻右翻控制
• 設置好Task後,接著啟動Scheduer開始執行
2014/8/28 5
相關周邊的設定
• 基本上主程式的內容很簡單,主要就是接收油門訊號反轉訊號等
等與平衡處理
• 接著說明加速規與陀螺儀外接的感測器如何設定
• 首先說明加速規的*.h檔,可參造下面網址
• https://github.com/openbox00/quadcopter/blob/master/src/include/stm32f
4_discovery_lis3dsh.h
• 內容為設置相關暫存器,可由manual觀察得到如下
2014/8/28 6
相關周邊的設定
• 上述網址有很多設定是多餘的可自行刪除
• 結構內容也是REG的規定(以REG3為例)
• 若不設定資料結構也可以直接使用填值的方式計算好要為1的bit,
算出總數,再對再存器做寫入
2014/8/28 7
相關周邊的設定
• 若不設定資料結構也可以直接使用填值的方式計算好要為1的bit,
算出總數,再對再存器做寫入,如stm32f4_discovery_lis3dsh.c內
的LIS3DSH_Init()。
2014/8/28 8
計算值
寫入
重要!!!!!
初始化之前要先delay
3/data rate
相關周邊的設定
• 加速規的*.h檔就是設定相關暫存器的位置,而*.c檔則是實現初
始化,與板子連接的設定(是要使用SPI傳輸還是I2C傳輸都可以,
設定與GPIO類似),以及讀取寫入函式。
• 加速規我們使用的是SPI傳輸,陀螺儀則是I2C。
2014/8/28 9

More Related Content

Similar to 3.檔案內容簡介

服务器端性能优化 提升Qps、rt
服务器端性能优化 提升Qps、rt服务器端性能优化 提升Qps、rt
服务器端性能优化 提升Qps、rt锐 张
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术
jugn
 
作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)Ying wei (Joe) Chou
 
20120613 - Hardware knowledge which the software engineer must understand
20120613 - Hardware knowledge which the software engineer must understand20120613 - Hardware knowledge which the software engineer must understand
20120613 - Hardware knowledge which the software engineer must understand
Jethro Yeh
 
复习第六章
复习第六章复习第六章
复习第六章lqarenas
 
IEC104规约介绍
IEC104规约介绍IEC104规约介绍
IEC104规约介绍
Chen Ray
 
我对后端优化的一点想法
我对后端优化的一点想法我对后端优化的一点想法
我对后端优化的一点想法
mysqlops
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)FLASH开发者交流会
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)Shanda innovation institute
 
系統程式 -- 第 10 章
系統程式 -- 第 10 章系統程式 -- 第 10 章
系統程式 -- 第 10 章
鍾誠 陳鍾誠
 
Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化
Harvey Zhang
 
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
逸 張
 

Similar to 3.檔案內容簡介 (20)

19 cpu03
19 cpu0319 cpu03
19 cpu03
 
20 cpu04
20 cpu0420 cpu04
20 cpu04
 
服务器端性能优化 提升Qps、rt
服务器端性能优化 提升Qps、rt服务器端性能优化 提升Qps、rt
服务器端性能优化 提升Qps、rt
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术
 
第1章
第1章第1章
第1章
 
最终版
最终版最终版
最终版
 
作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)作業系統數位教材(劉政雄)(1 9)
作業系統數位教材(劉政雄)(1 9)
 
17 cpu01
17 cpu0117 cpu01
17 cpu01
 
20120613 - Hardware knowledge which the software engineer must understand
20120613 - Hardware knowledge which the software engineer must understand20120613 - Hardware knowledge which the software engineer must understand
20120613 - Hardware knowledge which the software engineer must understand
 
复习第六章
复习第六章复习第六章
复习第六章
 
IEC104规约介绍
IEC104规约介绍IEC104规约介绍
IEC104规约介绍
 
Stm32 technical slide_pdf
Stm32 technical slide_pdfStm32 technical slide_pdf
Stm32 technical slide_pdf
 
Godson x86
Godson x86Godson x86
Godson x86
 
我对后端优化的一点想法
我对后端优化的一点想法我对后端优化的一点想法
我对后端优化的一点想法
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
 
系統程式 -- 第 10 章
系統程式 -- 第 10 章系統程式 -- 第 10 章
系統程式 -- 第 10 章
 
Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化
 
Step7
Step7Step7
Step7
 
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
張逸 - 研究所 / 轉學考計算機概論 、公職計算機概要 - 基本計概 - 試閱版
 

3.檔案內容簡介