原创 Makefile中的$(addprefix)

函數名稱:加前綴函數—addprefix。 函數功能:爲“NAMES…”中的每一個文件名添加前綴“PREFIX”。參數“NAMES…”是空格分割的文件名序列,將“SUFFIX”添加到此序列的每一個文件名之前。 返回值:以單空格分割的添

原创 開發板設置NFS掛載文件系統

在燒寫了 u-boot之後,爲了減少燒寫根文件系統、調試程序之痛苦,本文檔介紹如過tftp 下載內核,nfs服務掛接根文件系統啓動系統,不用每次都燒

原创 在Makefile中得到自己所在的目錄

Makefile 可能會以這樣的方式被調用:make -f some_dir/Makefile all這種情況下, Makefile本身裏面的命令不能對當前目錄作出假設.GNU make手冊裏介紹了一個叫MAKEFILE_LIST的變量,

原创 keil分散加載文件

分散加載文件mem_a.scf,mem_b.scf,mem_c.scf,區別是加載地址不一樣 具體加載哪個,在DebugInExram->ARM L

原创 安裝和配置 minicom

安裝 minicom: Linux-host:~$ sudo apt-get install minicom 在終端輸入下面命令進入 minicom 的配置界面:Linux-host:~$ sudo minicom –s加上“ -s”

原创 Linux內核添加設備驅動方法

有時我們希望驅動可以在Linux編譯的時候通過make menuconfig添加和移除,可通過下面方法實現: 1.LED驅動爲例 (1)在kernel\drivers\char\目錄下創建一個led目錄,之後編寫的led驅動代碼將放在這個

原创 Makefile中的常用函數 - foreach、if、call、shell、value、eval

foreach循環函數 foreach是Makefile中用來做循環的函數,它把可以重複利用一段腳本,但是每次又有不同的條件。它類似於Unix標準Shell(/bin/sh)中的for語句,或是C-Shell(/bin/csh)中的f

原创 Makefile中的wildcard用法

在Makefile規則中,通配符會被自動展開。但在變量的定義和函數引用時,通配符將失效。這種情況下如果需要通配符有效,就需要使用函數“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,

原创 makefile的if語法

$(if CONDITION,THEN-PART[,ELSE-PART])  ¾  函數功能:第一個參數“CONDITION” ,在函數執行時忽略其前導和結尾空字符,如果包含對其他變量或者函數的引用則進行展開。如果“CONDITION”的

原创 Makefile 裏的 subst 函數

在Makefile中可以使用函數來處理變量。函數的返回值可以當做變量來使用。一、函數的調用語法函數調用,很像變量的使用,也是以“$”來標識的,其語法爲:$( )或${ }。參數間以逗號分隔,函數名和參數間以空格分隔。函數調用以“$”開頭

原创 1.ARM彙編學習——CPSR寄存器、CPSR_cxsf

1:   ARM每種工作模式除R0~R15共16個寄存器外,還有第17個寄存器CPSR,叫做 當前程序狀態寄存器,CPSR中一些位被用於標識各種狀態,一些位被用於標識當前出於什麼工作模式。 2:這個狀態寄存器的32位可以分爲四個8位的域

原创 keil代碼連接地址修改

bootload拷貝APP代碼到DRAM的某一地址,然後跳轉運行APP. bootload部分代碼如下: 跳轉之後執行一個裸機代碼。 修改keil的鏈接地址 方法二

原创 Ubuntu系統 apt-get update失敗解決辦法

(測試系統Ubuntu14.10和9.10) 使用apt-get的時候發現ubuntu和阿里雲均已經不提供該版本的源,所以需要找到其他的替代源。使用的ubuntu版本是14.10,屬於非LTS(長期支持版本),因此前一段時間還可以使用ap

原创 NFS開發環境搭建

(測試環境Ubuntu14) 安裝目標板掛載根文件系統的方法有兩種(這裏所說的服務端就是ubuntu,Ubuntu已經成功安裝了nfs服務,並且保證服務端與目標板ping 通) (注意開發板的linux要設置爲nfs啓動和配置nfs支持)