原创 ARM的異常和中斷

異常和中斷處理,負責處理錯誤,中斷和其他由外部系統觸發的事件。        ARM有7種異常,數據中止、快速中斷請求、中斷請求、預取址中止、軟件中斷、復位及未定義指令。        2種類型的中斷,第一類是由外設引起的,即IRQ和FI

原创 printf打印16進制數據,高位補零的方法。

    代碼: unsigned char data = 0xf;unsigned char regAddr = 0xf;   printf("/nwite data 0x%02x to regAddr 0x%02x success/n"

原创 assert的用法

函數名: assert 功  能: 測試一個條件並可能使程序終止 用  法: void assert(int test); 程序例: #include <assert.h> #include <stdio.h> #include <st

原创 vxworks的default boot line說明

boot程序的主要功能是引導vxworks 內核,所以boot程序需要知道vxworks的內核存放在何處,通過什麼手段去獲取。在vxworks缺省的boot程序裏有一條內建的default boot line,它指明瞭獲得vxworks內

原创 U-Boot啓動代碼分析(MIPS)

U-Boot代碼分析(by MulinB)(以某Demo板Bootloader代碼工程爲例,CPU是MIPS架構的某多核CPU):     1)        史前時代:彙編在FLASH中運行的日子(彙編指令參見《See MIPS Run

原创 U-BOOT環境變量實現

1.相關文件 common/env_common.c 供u-boot調用的通用函數接口,它們隱藏了env的不同實現方式,比如dataflash, epprom, flash等   common/env_dataflash.c env 存

原创 u-boot的norflash驅動分析,以及一些調試信息

Flash 存儲器接口還有兩個標準:CFI和JEDEC。 CFI爲公共Flash接口[Common Flash Interface], 用來幫助程序從Flash芯片中獲取操作方式信息,而不用在程序中硬編碼Flash的ID。     JE

原创 信號量和自旋鎖

信號量和自旋鎖     爲了避免併發,防止競爭。內核提供了一組同步方法來提供對共享數據的保護。 我們的重點不是介紹這些方法的詳細用法,而是強調爲什麼使用這些方法和它們之間的差別。    Linux 使用的同步機制可以說從2.0到2.6以來

原创 編譯工具eldk的安裝

1.下載ARM-2007-01-21.ISO,2.掛載  #mount -o loop /root/arm-2007-01-21.iso /mnt3.安裝  #./install -d /eldk/arm arm   1.下載eldk-m

原创 MMU在VxWorks中的實現

MMU在VxWorks中的實現1.內存管理單元MMUVxWorks提供兩級虛內存支持:與VxWorks捆綁在一起的基本級和需要可選產品VxVMI的完全級。 1.1指令和數據MMUPowerPC MMU允許指令和數據MMU被分別允許或禁止。

原创 u-boot 啓動流程(mips)

u-boot的啓動過程比較簡單,大致做下面的工作:    1 cpu初始化    2 時鐘,串口,內存(ddr ram)初始化    3 內存劃分,分配棧,數據,配置參數,以及u-boot代碼在內存中的位置。    4 對u-boot代碼

原创 ubuntu 6 安裝 gcc

ubuntu 默認沒有安裝 gcc。 在終端輸入gcc提示 #gcc -v “bash: gcc: command not found”。   於是通過它提供的軟件安裝工具好不容易安裝成功了。sudo apt-get install gc

原创 u-boot start.S 代碼學習

* 參考了別人的一些筆記,看完了啓動代碼。 本文檔記錄在看代碼時碰到的困難,將這些曾經困擾的問題記錄下來,以備今後之用。分析時不重要的代碼被刪除了。 */ .globl _start _start: b       reset     l

原创 成功應該養成的習慣

要成功,就馬上準備有所付出吧!這就是每天你應該養成的習慣。 1、不說“不可能”; 2、凡事第一反應: 找方法,不找藉口; 3、遇到挫折對自己說聲:太好了,機會來了! 4、不說消極的話,不落入消極的情緒,一旦發生立即正面處理; 5、凡事先訂

原创 ARM寄存器總結:

  ARM有16個32位的寄存器(r0到r15)。  r15充當程序寄存器PC,r14(link register)存儲子程序的返回地址,r13存儲的是堆棧地址。 ARM有一個當前程序狀態寄存器:CPSR。 一些寄存器(r13,r14)