1.jmp和子函式的區別:jmp不會再返回,而子函式會,所以子函式會有入棧出棧的操作。
2.微控制器的記憶體對映是學習微控制器底層很有用的東西,而iic,sci,spi,adc,can,gpio只是配置一下暫存器而已。我曾經研究
51的io口緩衝啊,互補輸出啊等等確實麻煩,但是使用起來確實方便多了,快有點像傻瓜相機了
3.微控制器的分頁機制的根本原因是位址線不夠用。比如某款微控制器eeprom,ram,flash加起來有1m左右,而位址線只有16根
(定址空間2^16=64k),內部有乙個暫存器選擇使用的頁數。位址線多會帶來比較的麻煩吧,晶元體積,耗能等等
4.從微控制器的二進位制檔案讀出來的是16進製制,但是看記憶體的資料全部是ascii,比如23(16進製制是35),但是讀出來的是32,33.非常鬱悶
一直沒找到解決辦法,差點直接寫了個解析函式。最後還是在巧合之中找到了解決辦法:
intstr[i] = int32.parse(str[i], system.globalization.numberstyles.hexnumber);
bootloader詳解(ARM學習計畫)
參考 分析arm的兩種啟動方式 從nor flash啟動 nor flash一般為1m空間,程式可直接在nor flash中執行,位址對映為0 只需保證bootloader放在nor flash的0位址,arm一上電會從nor flash的0位址執行 從nand flash啟動 arm一上電nand...
Delphi專案開發和Delphi學習筆記索引
最近準備做乙個用delphi客戶端呼叫.net的webservice的專案。所以把專案開發計畫和學習計畫寫在部落格上。希望對自己的技術有個促進。因為網上用delphi客戶端呼叫.net的webservice的專案和資料並不多,再加上我也沒做過客戶端程式,所以一些東東還要靠自己去鑽研。大致的計畫如下。...
學習筆記 自己動手寫BootLoader
tips 核心從板載啟動的 bootargs 核心啟動引數,bootargs 是 bootloader 傳遞給核心的啟動字串。在嵌入式作業系統中,bootloader是在 作業系統核心執行之前執行。可以初始化硬體裝置 建立記憶體空間對映圖,從而將系統的軟硬體環境帶到乙個合適狀態,以便為最終呼叫 作業...