找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5925|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

STM32超強個人學(xué)習(xí)筆記,超詳細(xì)單片機(jī)學(xué)習(xí)匯總資料

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:389403 發(fā)表于 2018-8-23 20:19 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

1、 SYSCLK時鐘源有三個來源:HSI RC、HSE OSC、PLL
2、 MCO[2:0]可以提供4源不同的時鐘同步信號,PA8
3、 GPIO口貌似有兩個反向串聯(lián)的二極管用作鉗位二極管。
4、 ICode總線,DCode總線、系統(tǒng)總線、DMA總線、總線矩陣、AHB/APB橋
5、在使用一個外設(shè)之前,必須設(shè)置寄存器RCC_AHBENR來打開該外設(shè)的時鐘
6、 STM32復(fù)位有三種:系統(tǒng)復(fù)位、上電復(fù)位、備份區(qū)域復(fù)位。其中系統(tǒng)復(fù)位除了RCC_CSR中的復(fù)位標(biāo)志和BKP中的數(shù)值不復(fù)位之外,其他的所有寄存器全部復(fù)位。
觸發(fā)方式例如外部復(fù)位、看門狗復(fù)位、軟件復(fù)位等;電源復(fù)位由于外部電源的上電/掉電復(fù)位或者待機(jī)模式返回。
復(fù)位除了BKP中的寄存器值不動,其他全部復(fù)位;備份區(qū)域復(fù)位的觸發(fā)源為軟件復(fù)位或者VDD和VBAT全部掉電時。
7、 (NestedVectored Interrupt Controller)NVIC嵌套向量中斷控制器,分為兩種:搶先式優(yōu)先級(可嵌套)和中斷優(yōu)先級(副優(yōu)先級,不能嵌套)。
兩種優(yōu)先級由4位二進(jìn)制位決定。分配下來有十六種情況:
8、自動裝載寄存器和影子寄存器:前者相當(dāng)于51當(dāng)中的溢出設(shè)定數(shù)值。而影子寄存器顧名思義是影子,就是寄存器的另一分copy。
實際起作用的是影子寄存器,而程序員操縱的則是自動裝載寄存器。如果APPE位使能,表明自動裝載寄存器的值在下一次更新事件發(fā)生后才寫入新值。
否則,寫入自動裝載寄存器的值會被立即更新到影子寄存器。
9、
10、ARM公司只生產(chǎn)內(nèi)核標(biāo)準(zhǔn),不生產(chǎn)芯片。ST、TI這樣的公司從ARM公司那里購買內(nèi)核,然后外加自己的總線結(jié)構(gòu)、外設(shè)、存儲器、始終和復(fù)位、I/O后就組成了自己的芯片。
11、電容觸摸屏原理:通過充放電的曲線不同來檢測是否被按下。 實際的實驗過程中,TPAD可以用一塊覆銅區(qū)域來替代,通過電容的充放電常數(shù)來確定是否按下。
12、OLED,即有機(jī)發(fā)光二極管,又稱為有機(jī)電激光顯示。下圖為OLED的GRAM與屏幕的對應(yīng)表
PAGE2單獨列出來:

13、USART可以操縱SPI設(shè)備。不過最大頻率只有4.5MHz
14、使用I/O口時應(yīng)該注意的問題
15、ADC的Vref+和Vdda與VSS,Vref-一定要加高質(zhì)量的濾波電容,切靠近單片機(jī)。
---------------------

1、在STM32內(nèi)部,F(xiàn)SMC的一端通過內(nèi)部高速總線AHB連接到內(nèi)核Cortex-M3,另一端則是面向擴(kuò)展存儲器的外部總線。

內(nèi)核對外部存儲器的訪問信號發(fā)送到AHB總線后,經(jīng)過FSMC轉(zhuǎn)換為符合外部存儲器通信規(guī)約的信號,送到外部存儲器的相應(yīng)引腳,實現(xiàn)內(nèi)核與外部存儲器之間的數(shù)據(jù)交互。
2、FSMC中的DATASET和ADDSET的設(shè)置需要參看外部存儲器的時序圖來確定。
一般而言,DATASET指的是數(shù)據(jù)建立時間,也就是讀/寫信號開始到讀/寫信號停止(上升沿存儲數(shù)據(jù))的持續(xù)時間。(一般來說寫比讀快!)。
而ADDSET指的是地址建立時間,指的是片選之后到讀/寫操作之前的時間,這是針對SRAM來說的,如果操縱的是TFT,不存在地址線,所以此時的ADDSET就是讀/寫信號結(jié)束到RS電平的轉(zhuǎn)換時間。
3、
4、
5、FSMC的三個配置寄存器:FSMC_BCRx(片選控制配置)、FSMC_BTRx(片選時序)、FSMC_BWTRx(片選寫時序)。
6、RTC時鐘配置必須要用到BKP寄存器,BKP寄存器在單片機(jī)復(fù)位、電源復(fù)位、待機(jī)喚醒模式下是不會更改值的,他的供電由VDD供電,VDD被切斷后自動切換至外部的VBAT供電。
7、要修改BKP寄存器的值,必須取消其寫保護(hù)的標(biāo)志。BKP寄存器在上電時自動寫保護(hù)。
8、Stm32有三種省電模式:
三種省電模式中,耗電量從上到下依次降低,待機(jī)模式的電流僅為2uA。
9、從待機(jī)模式中喚醒單片機(jī)等效于讓單片機(jī)復(fù)位,但是電源寄存器的值會有一個標(biāo)志位指示單片機(jī)是被喚醒的,不是被復(fù)位的。
10、ADC的時鐘不要超過14MHz,否則轉(zhuǎn)換精度會下降。最大轉(zhuǎn)換速率為1MHz,即轉(zhuǎn)換周期為1us(14MHz,采樣周期為1.5個ADC時鐘)
11、Tcovn=采樣時間+12.5個周期。采樣時間盡量選長一點,這樣精度高一些,但是轉(zhuǎn)換速率下降,這也是有利必有弊。
12、
13、拿ARM7TDMI來說,T代表Thumb指令集,D是說支持JTAG調(diào)試(Debugging),M意指快速乘法器,I則對應(yīng)一個嵌入式ICE模塊。
14、MMU作為嵌入式處理器與應(yīng)用處理器的分水嶺標(biāo)志à具有內(nèi)存管理單元的嵌入式處理器可以定位為應(yīng)用處理器。
這么說M系列和A系列的處理器的區(qū)別在于A系列的處理器具有MMU單元可以進(jìn)行內(nèi)存模塊的管理。
15、ARM處理器有兩種狀態(tài):ARM狀態(tài)和Thumb狀態(tài)。
16、這張圖說明了一切:Thumb2指令集做了一件很偉大的事情:將16位和32位的指令集融為一體,兼容性非常強。ㄟ@么說CM3不支持某些32位ARM指令集??)
17、

18、MSP是系統(tǒng)復(fù)位后使用的堆棧指針,PSP由用戶的代碼使用。兩個堆棧指針為4字節(jié)對齊!
19、在ARM編程領(lǐng)域中,凡是打斷程序運行的事件,統(tǒng)稱為異常(exception)。
20、因為存在LR(鏈接寄存器),所以可支持1級的子程序調(diào)用而不用壓棧到內(nèi)存,大大提高了運行速度。---à這就是說,我們在編程的時候,一級調(diào)用是不會耗費太多時間的,除非是二級調(diào)用!
(未完待續(xù))

評分

參與人數(shù) 2黑幣 +55 收起 理由
memories + 5 很給力!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:103433 發(fā)表于 2018-8-26 12:47 | 只看該作者
謝謝分享,總結(jié)的好
回復(fù)

使用道具 舉報

板凳
ID:390714 發(fā)表于 2018-8-28 13:41 | 只看該作者
謝謝分享!
回復(fù)

使用道具 舉報

地板
ID:86450 發(fā)表于 2018-9-3 16:43 | 只看該作者
謝謝分享!
回復(fù)

使用道具 舉報

5#
ID:254752 發(fā)表于 2018-9-3 19:36 | 只看該作者
謝謝分享,寫得很詳細(xì)!
回復(fù)

使用道具 舉報

6#
ID:267330 發(fā)表于 2018-10-11 14:23 | 只看該作者
謝謝分享,總結(jié)的好
回復(fù)

使用道具 舉報

7#
ID:64765 發(fā)表于 2019-4-29 13:22 | 只看該作者
學(xué)習(xí)了,謝謝分享。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表