6、 MCO[2:0]可以提供4源不同的時鐘同步信號;
7、 GPIO口貌似有兩個反向串聯的二極管用作鉗位二極管;
8、 總線矩陣采用輪換算法對系統總線和DMA進行仲裁
9、 ICode總線,DCode總線、系統總線、DMA總線、總線矩陣、AHB/APB橋
10、在使用一個外設之前,必須設置寄存器RCC_AHBENR來打開該外設的時鐘
11、數據字節以小端存儲形式保存在存儲器中
12、 內存映射區分為8個大塊,每個塊為512MB
13、 FLASH的一頁為1K(小容量和中容量),大容量是2K。
14、 系統存儲區(SystemMemory)為ST公司出廠配置鎖死,用戶無法編輯,用于對FLASH區域進行重新編程。所以我們燒寫程序務必選擇BOOT1 = 0,這樣通過內嵌的自舉程序對FLASH進行燒寫,比如中斷向量表和代碼
15、 STM32核心電壓為1.8V
16、 STM32復位有三種:系統復位、上電復位、備份區域復位。其中系統復位除了RCC_CSR中的復位標志和BKP中的數值不復位之外,其他的所有寄存器全部復位。觸發方式例如外部復位、看門狗復位、軟件復位等;電源復位由于外部電源的上電/掉電復位或者待機模式返回。復位除了BKP中的寄存器值不動,其他全部復位;備份區域復位的觸發源為軟件復位或者VDD和VBAT全部掉電時。
17、 單片機復位后所有I/O口均為浮空輸入狀態
18、 68個可屏蔽中斷通道,16個可編程優先級,16個內核中斷,一共68+16=84個中斷。103系列只有60個中斷,107系列才有68個中斷
19、 系統啟動從0x00000004開始,0x000 0000保留
20、 (NestedVectored Interrupt Controller)NVIC嵌套向量中斷控制器,分為兩種:搶先式優先級(可嵌套)和中斷優先級(副優先級,不能嵌套)。兩種優先級由4位二進制位決定。分配下來有十六種情況:
21、0號搶先優先級的中斷,可以打斷任何中斷搶先優先級為非0號的中斷;1號搶先優先級的中斷,可以打斷任何中斷搶先優先級為2、3、4號的中斷;……;構成中斷嵌套。如果兩個中斷的搶先優先級相同,誰先出現,就先響應誰,不構成嵌套。如果一起出現(或掛在那里等待),就看它們2個誰的子優先級高了,如果子優先級也相同,就看它們的中斷向量位置了。原來中斷向量的位置是最后的決定因素!!!!
22、 上電初始化后AIRC初始化為0,為16個搶先式優先級,但是由于所有的外部通道中斷優先級控制字PRI_n為0,所以搶先式優先級相同,此時就不能嵌套了
23、 NVI中有ISER[2](Interrupt Set-Enable Registers),ICER[2](Interrupt Clear-Enable Registers),ISPR[2](Interrupt Set-Pending Registers),ICPR[2](Interrupt Clear-Pending Registers),IABR[2](Active Bit Registers),IPR[15](InterruptPriority Registers)定義。其中ISER和ICER分別為中斷使能和中斷失能寄存器,都是寫1來使能/失能中斷的。為什么寫1?為什么不采用一個寄存器而用兩個寄存器來表示中斷使能/失能狀態?由于硬件,寫0比較復雜,并且可能造成其他位的狀態改變,所以用1來表示打開或者關斷是比較合理的
24、 中斷標志位需要手動清除;
25、 配置外圍器件的一般步驟:1、打開端口時鐘。2、定義初始化結構體并初始化。3、調用
26、串口的奇偶校驗:如果是奇偶校驗,那么USART_InitStructure.USART_WordLength= USART_WordLength_9b;這個數據的長度必須設定為9位!
27、ADC的規則組可以自定義轉換通道順序和轉換的通道個數。在實際應用中,有時候希望有一些特別的通道具有很高的優先權,需要在規則組進行轉換的時候強制打斷,進行另一個通道的轉換,這樣一組通道,叫做注入組。
28、定時器的輸出比較模式:Timing(凍結,什么都不做,普通定時),Active(OCxREF輸出高電平有效),Inactive(OCxREF輸出低電平),Toggle(比較成功后翻轉電平)。
29、STM32的定時器從0開始計數,滿足一些條件,給出標志位(比如匹配成功、時間更新、溢出等)然后從0開始計數。這一點和51不同。
30、OCx=OCxREF+極性
31、自動裝載寄存器和影子寄存器:前者相當于51當中的溢出設定數值。而影子寄存器顧名思義是影子,就是寄存器的另一分copy。實際起作用的是影子寄存器,而程序員操縱的則是自動裝載寄存器。如果APPE位使能,表明自動裝載寄存器的值在下一次更新事件發生后才寫入新值。否則,寫入自動裝載寄存器的值會被立即更新到影子寄存器。
32、RCC_PCLK1Config(RCC_HCLK_Div4);PCLK1的4分頻給定時器基準時鐘
33、定時器配置:RCC、NVIC、GPIO(OC輸出或者PWM)、TIMx
34、通用定時器可以輸出4路不同的PWM,高級定時器可以輸出4路不同的PWM外,還可以輸出3路互補的PWM信號(驅動三相電機),一共有7路。這樣算出來STM32可以產生30路PWM=72+4
————————————————————————————————————————————————————————
更多詳細筆記在文件里,網上轉的:
STM32學習筆記.docx
(35.95 KB, 下載次數: 62)
2021-8-13 20:44 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|