mcu部分基礎知識

2021-09-10 18:29:08 字數 1310 閱讀 4984

1.mcu串列埠外設加上電平轉換晶元,如max232,sp3485就是rs232,·rs485介面了。

2.rs485採用差分負邏輯,+2~+6v表示0,-2~-6v表示1。有兩線制和四線制兩種接線,四線制是全雙工通訊方式,兩線制是半雙工通訊方式。rs485一般採用的是主從通訊方式,即乙個主機帶多個從機。

3.modbus是一種協議標準,可以支援多種電氣介面,如rs232,rs485也可以在多種介質上傳播,如雙絞線,光纖,無線。

4.很多mcu都開始自帶fifo,收發fifo主要是為了解決串列埠收發中斷過於頻繁而導致cpu效率不高的問題。如果沒有fifo,每乙個資料的收發都會進入中斷,有了fifo後就可以一次收發多個資料,具體多少根據fifo額深度確定,提高了效率。

5.一開始程式跑飛的時候先不要急著用看門狗解決問題,很有可能是程式bug和硬體電路的問題,mcu電源電壓過低,mcu有個復位引腳,電平是否有波動符合要求。程式的話一般有三種情況:1.記憶體越界,如陣列越界。2.非法運算,如除於0。3.中斷的問題,沒有清除中斷標誌位和發生中斷後找不到中斷處理介面。

在完全穩定了以後再加上看門狗。。。

6.外圍神經反射系統prs和dma一樣是不占用cpu指令運算的。

7.mcu進入低功耗程式是不執行的,但是一些外設是可以執行的。當出現乙個中斷時,可以喚醒處理器,使其從低功耗模式返回到正常執行模式。因此在進入低功耗模式之前,必須配置莫個片內外設的中斷,並允許其在低功耗模式下繼續工作。如果不這樣,只有復位和重新上電才能結束低功耗模式。處理器喚醒後首先執行中斷服務程式,退出後接著執行主程式中的**。或者在進入低功耗時關閉和禁使能所有外設中斷。

8.很多的mcu提供數字電源vdd/gnd和模擬電源vdda/gnda。通常建議是採用兩路不同的3.3v電源供電。但為了節省成本,也可以採用單路3.3v電源,但vdda/gnda要通過電感從vdd/gnd分離出來。

一般gnda和gnd最終還是要連線在一起的,建議用乙個繞線電感連線並且接點盡可能靠近晶元(電感最好放置在pcb背面)。

9.程式加密一般有三種方式:1.每乙個arm核心都有乙個單獨的序列號是唯讀的,可以據此進行驗證。2.使用燒寫工具進行加密燒寫。3.在外部加入加密晶元,程式執行時進行驗證。

10.註冊中斷服務函式:中斷服務函式已經編寫好,但當中斷事件發生時,cpu還是無法找到它,因為我們還缺少最後一步:註冊中斷服務函式。

註冊有兩種方法:一是直接利用中斷註冊函式,優點是操作簡單,可移植性好,缺點是由於把中斷向量表重新對映到sram中而導致執行效率下降:還有一種是需要修改啟動檔案,優點效率很高,確定可移植性不高。

11.mcu內部的rc振盪器溫度特性變化比較大,如果使用高頻通訊或者高精度計量的話最好採用高頻外部晶振。

12.未完待續...

MCU相關基礎知識

1.mcu有串列埠外設的話,在加上電平轉換晶元,如 max232,sp3485 就是rs232 和rs485 介面了。2.rs485採用差分訊號負邏輯,2 6v表示0 6 2表示1 有兩線制和四線制兩種接線,四線制是全雙工通訊方式,兩線制是半雙工通訊方式。在 rs485 一般採用主從通訊方式,即乙個...

Python部分基礎知識

摘自 簡明python教程 python中所有的類成員 包括資料成員 都是 公共的 所有的方法都是 有效的 只有乙個例外 如果你使用的資料成員名稱以 雙下劃線字首 比如 privatevar,python的名稱管理體系會有效地把它作為私有變數。13.檔案 首先,我們通過指明我們希望開啟的檔案和模式來...

網路基礎知識(部分)

私有ip位址 10.0.0.0 10.255.255.255 172.16.0.0 172.16.255.255 192.168.0.0 192.168.255.255 ipv4報頭 udpudp 使用者資料報文協議。非面向連線的不保證可靠的傳輸協議。僅完成傳輸層基本工作 分段 埠號。udp報頭 t...