1. 程式人生 > 其它 >1118及之後的微控制器學習記錄

1118及之後的微控制器學習記錄

1. 列舉型別是一種基本資料型別,其中一個列舉成員所佔大小4個位元組;對列舉變數的賦值只能通過將一個值強制型別轉換為它本身的列舉成員然後進行賦值(不可以對列舉成員賦值,不可以用不同列舉變數的成員進行強制型別轉換然後賦值)。

2. keil 的魔術棒裡有很多配置,之前碰到的那個Ulink not found 是因為我是用的燒錄器是STlink燒錄器但是喔配置使用的是Ulink 燒錄器。

3. 微控制器上電覆位電路。具體的上電覆位原理我忘了,後面再複習吧,反正大體作用就是上電後就會進行一次復位操作,然後開始從向量表、堆疊賦值,再執行到main 函式重新開始執行。

4. 生成 .hex 和生成 .bin 檔案都可以用燒錄器進行燒錄,區別在於 .bin 檔案包含的僅有程式碼資料,hex 檔案則包含了地址以及一些校驗位資訊,燒錄的時候 bin 檔案需要填寫起始地址,hex 檔案則不需要填寫。

5. 之前想到的那個問題:看門狗定時器在視窗開啟期間才可以進行修改暫存器操作中,視窗指的是計數器從0加到上溢時間這段時間內可以進行計數器的重置;如果對視窗時間進行100%或者75%的開放,就要使用低速振盪器的頻率來進行運算開放時間。

6. 大端傳輸與小端傳輸:廣泛來說指的是資料儲存是從高位向低位還是低位向高位儲存,細節一點不僅包含位元組的順序,同樣也包含一個位元組內的位元序以及網路傳輸時的順序。

7. 解除復位根據我的理解:微機電路是時序數位電路,需要一個穩定的時鐘與電壓才能工作,因此應當是檢測電壓大於某個值並且時鐘執行穩定後即解除復位。

8. 外部裝置往往會提供一個管腳叫 “選通腳”,只有滿足規定的電平變化才可以使該晶片進入工作狀態,這個使它進入工作狀態的操作就叫選通。

9. 之前看到的__attribute__有很多引數,最近看到的有 alias是別名,用來覆蓋原有中斷程式時使用過;use 用於儲存該函式或者變數在一個檔案中;section 用於將該部分納入某一個段中,在初始化過程中我見到了這種操作。

10. 堆疊、堆、棧

11. 波特率指的是單位時間內調製訊號的傳輸量,與位元率有點區別。同時,波特率其實是一種誤稱,其實波特就是速率的表示。

12. 序列通訊前的配置流程:允許提供時鐘、選擇時鐘、選擇模式等一系列配置、設定通道的收/發、序列狀態暫存器(記錄通訊狀態與發生錯誤的情況)及與之有關的標誌清除暫存器(觸發)、序列通道開始停止暫存器(設定用的,觸發暫存器)以及對應的通道允許狀態暫存器、序列輸出允許、輸出暫存器、輸出電平暫存器這幾個有一點點不是很懂

、噪聲濾波允許暫存器在序列通訊中必須配置;

通過配置時鐘可以降低功耗,可以按單元或按通道停止執行序列通訊。

13. 並行和序列資料的轉換是如何實現的?自動實現的,但想讀寫移位暫存器裡的值可以通過對SDRmn的低8位進行操作。

------------------------------------------------------------------------------11/29------------------------------------------------------------------------------

1. 待機功能的實現流程。

2. 等待時鐘的完成方法:其實也不需要真的抽一個計數時鐘出來,而是用 while迴圈的方法做一個阻塞,在做操作之前做 while迴圈,如果滿足了 while迴圈出來的條件,就說明已經等待了足夠長的時間。