原创 Makefle

Makefile 整個程序編譯鏈接規則 規則 targets:prerequisites command make 全執行 make 目標名 只執行這一個命令 變量 變量使用前 app1:app1.o  func1.o func2

原创 ARM9自學筆記_彙編指令1

轉自http://blog.csdn.net/yam_killer/article/details/7901363 ARM9彙編指令總結 1、  LDR指令 Arm指令集中,LDR既可以做爲加載指令,也可以作爲僞指令。 1) 

原创 2440的Nand啓動

2440的Nand啓動的簡略圖是這樣的 4K的SRAM的啓動地址是0x0000000 啓動時硬件強制執行 1.強制將Nand Flash前4K的內容拷貝到SRAM中(0地址) 2.CPU從0地址開始執行 所以說 制定代碼塊從0開始啓動

原创 ARM彙編程序框架

.section.data <初始化數據> .section.bss <未初始化的數據> .section.text .global _start_start: <彙編代碼> 簡化書寫 .text .global _start _s

原创 Linux用戶組與權限

  一用戶與用戶組和他們的權限         用戶:這個文件屬於誰,誰擁有這個文件或者目錄         用戶組:這個用戶屬於哪個用戶組,屬於哪個團體          比如:我的筆記本屬於我,而我屬於我家              

原创 ARM尋址方式

ARM尋址方式 定義 處理器根據指令中給出的信息來找到所需操作數的方式 立即數尋址: 操作數本身就在指令中給出,只需要取出指令就得到了操作數的方式。(操作數稱爲立即數) ADD R0, R0, #0X3F; //R0 = R0 +3F 第

原创 交叉工具鏈

交叉工具鏈 多個交叉工具的集合 交叉開發 開發過程中有宿主機和目標機之分,宿主機編譯,鏈接,嵌入式軟件計算機,目標機運行嵌入式軟件平臺。 交叉編譯器 arm-linuc-gcc arm-linux-gcc 尋找頭文件arm-linux-g

原创 shell的變量功能

        變量:和C語言中的變量是一樣的意思,一般shell中的變量用大寫。   變量的顯示:echo    echo $變量名  或者echo ${變量名} 變量的聲明    1.echo $變量名 2.變量名=變量內容(等號

原创 基於SDRAM的存儲管理器使用

存儲管理器:管理CPU跳到哪個地址 CPU運行程序會從0地址開始,通過存儲管理器可以讓讓CPU跳到外設 RAM  內存 因爲存儲管理器內部有8個Bank,所以最多可以接8個外設,每個Bank最大可以接128M,因爲有27跟線(27*10

原创 ARM彙編指令——算數和邏輯指令

MOV : 傳送 (Move) //相當於賦值語句 MOV{條件}{S} <dest>, <op 1> dest = op_1 MOV 從另一個寄存器、被移位的寄存器、或一個立即值裝載一個值到目

原创 ARM9自學筆記_GPIO設置

#define GPFCON      (*(volatile unsigned long *)0x56000050) #define GPFDAT

原创 Linux中的shell理解

什麼是shell,shell俗稱殼,是命令解析器(提供使用者使用界面的軟件),通過shell可以與內核進行通信,只是提供用戶操作系統的一個接口。 shell的作用: 1.命令行界面的shell都是一樣的,不會被X windows界面的不

原创 input_dev結構體設計

input_dev結構體 在輸入子系統的設備驅動中,最重要的數據結構是struct input dev。需要完成的大部分工作都是圍繞着而來的,是驅動的主體,每個struct input_dev代表一個輸入設備。 1 如何分配一個

原创 隊列的定義

隊列:是一種特殊的線性表 隊列僅在線性表的兩端進行操作: 隊頭:取出數據元素的一端 隊尾:插入數據元素的一端     隊列性質:先進先出(FIFO)     隊列的實現之順序存儲 代碼複用線性表的順序存儲   #include "SeqL

原创 U-boot移植——1.時鐘

u-boot的作用是 a 硬件初始化:關看門狗,設置時鐘,設置SDRAM,設置NAND FLASH. b 如果bootlodar比較大,要把他重定位到SDRAM c 把內核從NAND FLAS