Time of Update: 2018-12-04
本文的開發環境為:uclinux-2.6(已移植到VDSP下),VDSP 5.0本文為上文《在uclinux中調試dxe檔案》的補充,所用的樣本也為上文的樣本。1 crt的問題由於程式最終需要在uclinux下運行,這與獨立啟動並執行DXE程式是有很大區別的,所以在程式開始運行之前必須做一些初始化的工作,這就是CRT代碼的任務。uclinux下的應用程式通常是從uclibc/libc/sysdeps/linux/bfin/crt1.s開始的,這個檔案中的代碼稍做修改就可以用在DXE中了:
Time of Update: 2018-12-04
本文開發環境為:uClinux-2.6,BF561,編譯器為VDSP4.51 norflash: Am29LV320MTAM29LV320MT是一個4M,16位的NorFlash,支援CFI介面,其地址空間為0x2000 0000 ~ 0x2040 0000。1、配置非同步儲存空間,以下是幾個相關的宏:#define CONFIG_C_AMBEN_ALL 1#define CONFIG_C_B0PEN
Time of Update: 2018-12-04
轉眼間,小姑娘就上了十次鋼琴課,總結起來,就是學了幾個基本的音符:“do, re, mi, la, si”。在老師不帶情緒上課的時候,小姑娘上課還算專心,上課時間也從30分鐘調整到45分鐘。日前由於擔心小姑娘無法接受這麼多東西,想把小姑娘的上課時間調整為一周一次,老師反對:“她剛開始學,最好堅持一周兩次課。”又舉一例子:“***小朋友一次可以學8條五線譜,你們家姑娘一次只能學兩三條。”接受老師的建議,繼續一周上兩次課,打聽了一下老師說的那個小朋友,據說每次上課前都要預習,下課後還要複習。我倒..
Time of Update: 2018-12-04
在setup_arch(arch/blackfin/kernel/setup.c)函數中,與bootmem相關的代碼有: int bootmap_size;… /* setup memory defaults from the user config */ physical_mem_end = 0; _ramend = CONFIG_MEM_SIZE * 1024 * 1024;… if (physical_mem_end == 0)
Time of Update: 2018-12-04
快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com 本文適用於bfinutils-2.19vs2008 歡迎轉載,但請保留作者資訊 在《bfd對多目標的支援》這篇文章中說道,所有的目標支援都是通過重定義bfd_target這個結構體的函數指標來實現的。Elf32是一種常見的檔案格式,只是由於不同處理器和目標系統的差異,這些檔案的格式略有不同。為了最大限度地重用代碼,bfd讓所有的elf32格式的檔案處理器(*_vec變數)定義共用一個檔案
Time of Update: 2018-12-04
小姑娘快5歲了,常有奇思妙想。某日,給小姑娘講故事,提了個問題:“怎麼才能讓房子飛起來呢?”小姑娘:“可以在房子下面裝個炸彈,還可以在房子上綁一個火箭。”我自作聰明:“能不能綁個氣球呢?”小姑娘:“不行,那如果氣球破了,房子不就掉到海裡去了。”接著補充:“對了,可以給房子戴上帽子裝在火箭裡,就像宇航員樣的。”...............某晚,給小姑娘講了一個“螳螂捕蟬,黃雀在後”的故事,小姑娘說:“我覺得你今天有點累了,我就給你講一個故事吧。”小姑娘:“我給你講一個東郭先生的故事,和你的那個東
Time of Update: 2018-12-04
ns2模擬是基於離散事件的。在具體的實現上,它首先要求使用者構造一個事件隊列,然後再依次執行這個隊列中的事件。下面的代碼很清楚地顯示了這一點:set ns [new Simulator]$ns at 0.5 "puts 0.5"$ns at 1.0 "puts 1.0"$ns at 0.75 "puts 0.75"$ns at 2.0 "puts 2.0; exit"$ns
Time of Update: 2018-12-04
1.執行一個新程式 linux下,使用exec函數執行一個新程式,該函數在檔案系統中搜尋要執行檔案,並將該檔案內容複寫到調用exec函數的地址空間,取代原進程的內容,即覆蓋從父進程中複製來的資料。 #include <unistd.h>int execl(const char * pathname,const char * arg0,……);int execle(const char * pathname,const char * arg0,……/*char * const
Time of Update: 2018-12-04
在ns2的文檔中給出了如下的樣本,從中可以發現ns2的一些基本概念:# 第1步:建立一個模擬管理器Simulatorset ns [new Simulator] ; # 第二步,建立要記錄模擬結果的檔案set f [open out.tr w]$ns trace-all $fset nf [open out.nam w]$ns namtrace-all $nf # so, we lied. now, we define the topology # # n0 #
Time of Update: 2018-12-04
本文的開發環境為:u-boot-1.1.6, uClinux-2.6.x, bf561 DSP1 u-boot調用核心的方法我們知道,利用u-boot可以載入uClinux。它可以將壓縮後的uClinux映象在SDRAM中解壓並調用,從而將系統控制權交給uClinux。那麼它是如何做到這一點的呢?下面的代碼來自u-boot/lib_blackfin/bf533_linux.c,從中可以得到答案。extern image_header_t header;void
Time of Update: 2018-12-04
本文的開發環境為:bf561, uclinux-2.6(已移植到VDSP下),VDSP 5.0日前看到一篇文章《Implementation of Dynamically Loaded Software
Time of Update: 2018-12-04
發布日期:2008-11-21 這個版本應該還沒有達到發布的水平,不過為了給自己點信心,放在這裡,供大家參考。 ucTools 1.0.11、用wxWidgets和bfd庫改寫了全部代碼。2、支援pei格式檔案讀取。3、不支援vdsp格式檔案的讀取。3、不支援檔案修改的功能。4、改用vs2008開發。 readelf 2.191、這是binutils-2.19的一部分。2、不依賴於bfd庫。 objdump
Time of Update: 2018-12-04
1.1.1 在這幾個相關的函數調用中,涉及到了幾個參數:l NODE_DATA(0)這個宏的定義在include/linux/mmzone.h中extern struct pglist_data contig_page_data;#define NODE_DATA(nid) (&contig_page_data)就是取一個結構體變數的指標。而pglist_data的定義也在mmzone.h中: /* * The pg_data_t structure is
Time of Update: 2018-12-04
本文開發環境:uClinux-2.6, bf561, VDSP-4.51 MTD技術MTD的全稱是Memory Technology Device,用以實現對記憶體裝置支援的統一介面,尤其是Flash,它可以提供Flash裝置到字元裝置驅動和塊裝置驅動的轉換。在uClinux下包含對許多不同類型NOR Flash、NAND Flash的支援,其所有的代碼均放在drivers/mtd目錄下。2
Time of Update: 2018-12-04
快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com 本文適用於bfinutils-2.19vs2008visual dsp++ 5.0 歡迎轉載,但請保留作者資訊 vdsp中的doj檔案採用的是elf格式,但是做了一些擴充,其中.commandLine是額外添加上去的一個section,它的section head可取如下值: table 0屬性值附加說明sh_name669Section name, index in string
Time of Update: 2018-12-04
又是一年過去了,小姑娘已經四歲了。不過小姑娘似乎不太滿意四歲生日:“再過一下我就五歲了,等我五歲的時候就可以去遊泳了,還可以坐火箭.......”。..............和小姑娘商量把鋼琴課改為一周一次,小姑娘明確拒絕,於是和小姑娘講好條件:“如果要想一周上兩次課,每天回來要練兩遍琴。”小姑娘同意,雖然要她練琴的時候,仍然會鬧點小意見,但是還是會去比劃兩下。看來鋼琴課還真是有點吸引力的!.............昨天,就在小姑娘生日前一天,幼兒園老師打了個電話來:“你們姑娘的嘴唇上長了個包
Time of Update: 2018-12-04
快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com 本文適用於ADI BF561 DSP優視BF561EVB開發板Visual DSP++ 5.0 (update 5) 歡迎轉載,但請保留作者資訊 FLT_MIN是在float.h中定義的一個常量,用以表示單精確度浮點數的最小值。#define FLT_MIN
Time of Update: 2018-12-04
昨天,閑逛圖書城,無意間發現一本挺有意思的書:《基於嵌入式訊號結構的嵌入式訊號處理》。先開始吸引人目光的是它涉及的處理器是Blackfin系列的DSP,因為這方面的書一向都很少見。但買下這本書主要還因為它講述了一種在Labview環境下使用DSP的方法,這是以前沒有接觸過的。花一晚上時間翻了一遍,大致的印象是它所講述的訊號處理知識都是很基本的東西,沒什麼新意。其研究方法基本是先用matlab產生訊號處理所需要的參數,然後導到vdsp下使用,再簡單說明在Labview下相應的使用方法,這個挺有意思
Time of Update: 2018-12-04
快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com 本文適用於bfinutils-2.19vs2008visual dsp++ 5.0 歡迎轉載,但請保留作者資訊 vdsp中的doj檔案採用的是elf格式,但是做了一些擴充,其中.attributes是額外添加上去的一個section,它的section head可取如下值: table 0屬性值附加說明sh_name17Section name, index in string
Time of Update: 2018-12-04
快樂蝦http://blog.csdn.net/lights_joy/lights@wo.com.cn 本文適用於Cygwin gcc