最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

STM32入門教程-2023持續(xù)更新中

2023-03-08 21:44 作者:廢物學(xué)短  | 我要投稿

持續(xù)更新中…………

一些小知識(為方便查找)

一、VCC、VDD、VEE、VSS

  1. 一般來說VCC=模擬電源,VDD=數(shù)字電源,VSS=數(shù)字地,VEE=負電源。
  2. 有些IC既有VDD引腳又有VCC引腳,說明這種器件自身帶有電壓轉(zhuǎn)換功能。
  3. 對于數(shù)字電路來說,VCC是電路的供電電壓,VDD是芯片的工作電壓(通常Vcc>Vdd),VSS是接地點。
  4. 在場效應(yīng)管(或COMS器件)中,VDD為漏極,VSS為源極,VDD和VSS指的是元件引腳,而不表示供電電壓。

二、8種輸入輸出模式

1.?GPIO_MODE_AIN?模擬輸入

2.?GPIO_MODE_IN_FLOATING?浮空輸入

3.?GPIO_MODE_IPD?下拉輸入

4.?GPIO_MODE_IPU?上拉輸入

5. GPIO-MODE_OUT_OD 開漏輸出

6.?GPIO_MODE_OUT_PP?推挽輸出

7.?GPIO_MODE_AF_OD?復(fù)用開漏輸出

8. GOIO_MODE_AF_PP 復(fù)用推挽輸出

https://zhuanlan.zhihu.com/p/113367004



橋接:是指在兩個網(wǎng)絡(luò)之間搭一個橋,將兩個網(wǎng)絡(luò)連接到一塊的意思。

  • ?
    [2-1] 軟件安裝 P3 - 05:48
    ?
  • ?
    [2-1] 軟件安裝 P3 - 07:22
    ?
  • ?
    [2-1] 軟件安裝 P3 - 13:42
    ?

stm32庫

STM32的開發(fā)方式主要有:

  1. 基于寄存器的方式
  2. 基手標準庫(也就是庫函數(shù)的方式)
  3. 本課程
  4. 基手HAL庫的方式

?
[2-2] 新建工程 P4 - 02:11
?

?
[2-2] 新建工程 P4 - 13:02
?

************************

  • //************
  • 點擊魔法棒,target->ARMCompiler選擇V5.06
  • 解決辦法2:魔法棒-->target-->ARM Compiler-->Use default compiler version 5

  • 這里up少講了個東西,點擊setting之后的第一個debug頁面里面的port要改成sw,不然下載不成功

  • 自動補全代碼設(shè)置:點擊Edit>Configuration>Text Completion>勾選Symbols after最后重新打開Keil就可以了

3-x GPIO

?
[3-1] GPIO輸出 P5 - 07:11
?

?
[3-1] GPIO輸出 P5 - 19:09
?

------------------------------------------------------------

?
[3-2] LED閃爍&LED流水燈&蜂鳴器 P6 - 09:17
?

  1. 第一步:使用RCC開啟GPIO的時鐘
  2. 第三步,使用GPI_Init函數(shù)初始化GPlO
  3. 第三步,使用輸出或者輸入的函數(shù)控制GPIO口

函數(shù):

  1. RCC

?
[3-2] LED閃爍&LED流水燈&蜂鳴器 P6 - 10:12
?

  • RCC_APB2PeriphClockCmd();

  1. GPIO輸出

?
[3-2] LED閃爍&LED流水燈&蜂鳴器 P6 - 11:51
?


魔術(shù)棒->C/C++->勾選C99mode,就可以在中間定義了

------------------------------------------------------------

?
[3-3] GPIO輸入 P7 - 04:59
?


宏定義#define、typedef、結(jié)構(gòu)體struct、枚舉enum

?
[3-3] GPIO輸入 P7 - 37:47
?

------------------------------------------------------------

  • GPIO輸入

?
[3-4] 按鍵控制LED&光敏傳感器控制蜂鳴器 P8 - 15:29
?

GPIO_ReadInputDataBit();

------------------------------------------------------------

?
[4-1] OLED調(diào)試工具 P9 - 10:59
?

開漏輸出

GPIO_Mode_Out_OD 普通開漏輸出,驅(qū)動能力不足,無法顯示,更改為GPIO_Mode_Out_PP(推挽輸出),正常顯示

因為標準I2C是有上拉電阻的,沒有信號總線高電平,所以要配置成開漏

-----------------------------------------------------------

keil的調(diào)試模式

?
[4-2] OLED顯示屏 P10 - 11:47
?

-----------------EXTI外部中斷-----------------

?
[5-1] EXTI外部中斷 P11 - 11:49
?

  • 相同的Pin不能同時觸發(fā)中斷

或、與、非

數(shù)據(jù)選擇器

-----------------------------------------------------------

?
[5-1] EXTI外部中斷 P11 - 29:48
?

配置外部中斷

一、對射紅外傳感器

  1. 第一步,配置RCC,把我們這里涉及的外設(shè)的時鐘都打開
  2. RCC_APB2PeriphClockCmd( //目前只有AFIO需要開啟AFIO
  3. 第三步,配置GPIO,選擇我們的端口為輸入模式
  4. 第三步,配置AFIO,選擇我們用的這一路GPIO,連接到后面的EXTI
  5. AFIO外設(shè) AFIO中斷引腳選擇器10:10
  6. 第四步,配置EXTI,選擇邊沿觸發(fā)方式,比如上升沿、下降沿或者雙邊沿
  7. EXTI EXTI邊沿檢測及控制 14:12
  8. 第五步,配置NVIC,給我們這個中斷選擇一個合適的優(yōu)先級
  9. NVIC 分組管理 “叫號系統(tǒng)”



  • AFIO //在GPIO文件中

?
[5-2] 對射式紅外傳感器計次&旋... P12 - 10:10
?

  • ?EXTI

?
[5-2] 對射式紅外傳感器計次&旋... P12 - 14:12
?

  • NVIC //在misc.h中

?
[5-2] 對射式紅外傳感器計次&旋... P12 - 22:19
?

NVIC PriorityGroupConfig(); //這個函數(shù)是用來中斷分組的,參數(shù)是中斷分組的方式


1.先判斷搶占優(yōu)先級,高搶占優(yōu)先級可以打斷低搶占優(yōu)先級的中斷

2.如果搶占優(yōu)先級相同,再判斷響應(yīng)優(yōu)先級,高響應(yīng)優(yōu)先級不能打斷低響應(yīng)優(yōu)先級

3.搶占優(yōu)先級相同的中斷,當中斷同時發(fā)生時,響應(yīng)級高的先執(zhí)行

4.搶占和響應(yīng)優(yōu)先級都一樣則哪個中斷先發(fā)生,則執(zhí)行哪個


?
[5-2] 對射式紅外傳感器計次&旋... P12 - 24:57
?


  • 寫中斷函數(shù)

?
[5-2] 對射式紅外傳感器計次&旋... P12 - 28:23
?

二、旋轉(zhuǎn)編碼器

?
[5-2] 對射式紅外傳感器計次&旋... P12 - 35:59
?

就是說一個中斷在扭的時候有一個方向有延遲,雖然延遲很?。?0度相位差),但是非常不爽

------------------------------------------------------------

TIM定時器

?
[6-1] TIM定時中斷 P13 - 03:56
?

  • 定時器本質(zhì)上就是一個計數(shù)器

?
[6-1] TIM定時中斷 P13 - 07:59
?

主模式觸發(fā)DAC功能(數(shù)模轉(zhuǎn)換)

--主從觸發(fā)模式

?
[6-1] TIM定時中斷 P13 - 15:12
?

這里可以看作把引過來定時器作為時鐘,引過來的定時器中斷一次本地的定時器的計數(shù)就加一。

?
[6-1] TIM定時中斷 P13 - 30:08
?

PSC:prescaler、CNT:counter、ARR:autoreloadregister

?
[6-1] TIM定時中斷 P13 - 32:40
?

計數(shù)器時序

公式:

計數(shù)器計數(shù)頻率: CK_CNT=CK_PSC/(PSC+1)

計數(shù)器溢出頻率:CK_CNT_OV=CK_CNT/(ARR+1)

=CK_PSC/(PSC+1)/(ARR+1)


預(yù)分頻器和無預(yù)分頻器區(qū)別……

RCC時鐘樹

?
[6-1] TIM定時中斷 P13 - 40:53
?

------------------------------------------------------------

程序:

函數(shù)講解

?
[6-2] 定時器定時中斷&定時器外部時鐘 P14 - 04:51
?

ITR應(yīng)該就是InputTrigger的意思,選擇來自其他的定時器的時鐘作為輸入觸發(fā)

?
[6-2] 定時器定時中斷&定時器外部時鐘 P14 - 13:29
?

類比按鍵抖動延遲那個案例,頻率低就是延時時間更長,消除抖動效果越好


定時器外部時鐘

?
[6-2] 定時器定時中斷&定時器外部時鐘 P14 - 32:53
?

----------------輸出比較--OC------------------

PWM

?
[6-3] TIM輸出比較 P15 - 06:20
?

那個凍結(jié)模式,應(yīng)該是當某一時刻CNT=CCR以后,之后REF就一直保持為原狀態(tài),即使CNT不等于CCR

?
[6-3] TIM輸出比較 P15 - 11:57
?

?
[6-3] TIM輸出比較 P15 - 21:35
?

  • PWM頻率: Freq=CK_PSC/(PSC+1)/(ARR+1)
  • PWM占空比:Duty=CCR/(ARR+1)
  • PWM分辨率:Reso=1/(ARR+1)


?
[6-3] TIM輸出比較 P15 - 30:18
?

舵機

Q:不共地會有什么缺點呀?

A:不共地就沒法形成回路,無法驅(qū)動


代碼部分:

?
[6-4] PWM驅(qū)動LED呼吸燈&PWM驅(qū)動舵機&PWM驅(qū)動直流電機 P16 - 03:20
?

  1. 第一步,RCC開啟時鐘,把要用的TIM外設(shè)和GPIO外設(shè)的時鐘打開
  2. 第二步,配置時基單元,包括前面的時鐘源選擇和的時基單元,都配置好
  3. 第三步,配置輸出比較單元,里面包括CCR的值、輸出比較模式、極性選擇、輸出使能這些參數(shù)
  4. 第四步,配置GPIO,把PWM對應(yīng)的GPIO口,初始化為復(fù)用推挽輸出的配置
  5. 第五步,運行控制了,啟動計數(shù)器,這樣就能輸出PWM了


引腳重映射

?
[6-4] PWM驅(qū)動LED呼吸燈&PWM驅(qū)動舵機&PWM驅(qū)動直流電機 P16 - 29:53
?

直流電機

?
[6-4] PWM驅(qū)動LED呼吸燈&PWM驅(qū)動舵機&PWM驅(qū)動直流電機 P16 - 51:10
?


------------------輸入捕獲--IC------------------

?
[6-5] TIM輸入捕獲 P17 - 04:49
?

?
[6-5] TIM輸入捕獲 P17 - 08:44
?

?
[6-5] TIM輸入捕獲 P17 - 24:41
?

主從觸發(fā)模式

?
[6-5] TIM輸入捕獲 P17 - 28:31
?


函數(shù)---主從觸發(fā)模式

?
[6-6] 輸入捕獲模式測頻率&PWMI... P18 - 10:55
?

  • 主從模式在上一節(jié)27分鐘那里有講,主模式是配置現(xiàn)在的外設(shè)去控制別的外設(shè)的,從模式是控制自己這時所配置的TIM3的
  • 主模式是輸出給別人 ic是輸入捕獲 選主模式干嘛

-------------ADC-----------------------

?
[7-1] ADC模數(shù)轉(zhuǎn)換器 P21 - 04:04
?

逐次逼近型ADC

?
[7-1] ADC模數(shù)轉(zhuǎn)換器 P21 - 24:09
?

轉(zhuǎn)換模式:

?
[7-1] ADC模數(shù)轉(zhuǎn)換器 P21 - 29:46
?

?
[7-1] ADC模數(shù)轉(zhuǎn)換器 P21 - 36:46
?


?
[7-2] AD單通道&AD多通道 P22 - 03:15
?

?
[7-2] AD單通道&AD多通道 P22 - 05:16
?


  1. 配置ADCCLK(rcc.h里)

  2. ADC

*****************

跳……



------------------------------------------------------------

DMA

?
[8-1] DMA直接存儲器存取 P23 - 04:31
?

軟件觸發(fā)--(flash)

flash的數(shù)據(jù)是燒錄時指定的,可以直接搬運,外設(shè)的數(shù)據(jù)要等待處理完再搬運


?
[8-1] DMA直接存儲器存取 P23 - 07:58
?

  • 計算機系統(tǒng)的5大組成部分是: 運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備
  • 其中運算器和控制器,一般會合在起,叫做CPU,所以算機的核心關(guān)鍵部分就是CPU和存儲器
  • ROM就是只讀存儲器,是一種非易失性、掉電不丟失的存儲器
  • RAM就是隨機存儲器,是一種易失性、掉電丟失的存儲器




//待續(xù)……

//想學(xué)習但又不想學(xué)習呀 (′▽`)

//唉,我只有在不學(xué)習的時候才想學(xué)習 (′▽`)

------------------------------------------------------------

STM32入門教程-2023持續(xù)更新中的評論 (共 條)

分享到微博請遵守國家法律
怀仁县| 登封市| 株洲县| 子洲县| 贵港市| 汝城县| 封开县| 阜阳市| 新巴尔虎右旗| 裕民县| 永新县| 大悟县| 邳州市| 隆林| 来宾市| 麻栗坡县| 古丈县| 灵丘县| 周至县| 社会| 开鲁县| 成武县| 巴塘县| 邵武市| 洛宁县| 四子王旗| 五大连池市| 石泉县| 思南县| 罗城| 湛江市| 浦城县| 明水县| 西林县| 彭州市| 韶山市| 瑞安市| 永吉县| 颍上县| 浦江县| 凤城市|