當前位置:首頁 » 辦公資訊 » ccs怎樣使用data文件

ccs怎樣使用data文件

發布時間: 2022-06-14 09:28:12

⑴ CCS中使用的.dat文件如何編寫

固定標識 數據格式 基地址 頁類型 長度

數據格式:1-十六進制 2-十進制 3-十進制長整型 4-十進制浮點型

頁類型: 0-數據 1-程序 ?

長度: 裝入數據的長度

驗證一下,採用倒推的方法,即使用save data將內存中的數據取出寫入到一個文件中,首先將數據寫入到內存中,寫入的數據見下面截圖

⑵ ccs怎麼根據地址保存數據

在CCS菜單中,選擇File—>Data—>Save;在文件名中輸入要保存的文件的名字,在保存類型中可以選擇保存的文件類型以及格式。
文件類型有dat文件與coff文件兩種,數據格式有Hex、Integer、 Long 、Float、 Addressable Unit幾種。輸入好文件名,並選擇合適的數據格式後,點保存,在Adress中輸入要保存的數據的起始地址(如果是保存數組,可以直接輸入要保存的數據的首地址,比如array),在Length中輸入數據的長度,點擊OK即可,保存。

⑶ 如何CCS和MATLAB環境數據文件相互調用

我用過Matlab讀取過,感覺挺方便的啊,Matlab程序如下,LZ也可以試%--------------------------------------------------fid=fopen('xxx.dat','r');
%打開CCS數據文件xxx.dat,xxx改成自己的文件名就可以了hex_dat5=fscanf(fid,'%x',5);
%按十六進制讀取5個數據,就是把開始的文件頭讀掉my_data=fscanf(fid,'%f',100);
%按浮點數讀100個數據,'%f'和100可以按自己需要修改,具體看fscanf的幫助fclose(fid);%---------------------------------------------------就這幾行就可以了,最後有用的數據就在my_data裡面了,感覺挺好用的

⑷ 怎樣將一個JPG或者BMP圖像文件轉換成CCS可讀取的DAT文件

[轉]BMP文件格式

簡介

BMP(Bitmap-File)圖形文件是Windows採用的圖形文件格式,在Windows環境下運行的所有圖象處理軟體都支持BMP圖象文件格式。Windows系統內部各圖像繪制操作都是以BMP為基礎的。Windows 3.0以前的BMP圖文件格式與顯示設備有關,因此把這種BMP圖象文件格式稱為設備相關點陣圖DDB(device-dependent bitmap)文件格式。Windows 3.0以後的BMP圖象文件與顯示設備無關,因此把這種BMP圖象文件格式稱為設備無關點陣圖DIB(device-independent bitmap)格式(註:Windows 3.0以後,在系統中仍然存在DDB點陣圖,象BitBlt()這種函數就是基於DDB點陣圖的,只不過如果你想將圖像以BMP格式保存到磁碟文件中時,微軟極力推薦你以DIB格式保存),目的是為了讓Windows能夠在任何類型的顯示設備上顯示所存儲的圖象。BMP點陣圖文件默認的文件擴展名是BMP或者 bmp(有時它也會以.DIB或.RLE作擴展名)。

6.1.2 文件結構

點陣圖文件可看成由4個部分組成:點陣圖文件頭(bitmap-file header)、點陣圖信息頭(bitmap-information header)、彩色表(color table)和定義點陣圖的位元組陣列,它具有如下所示的形式。
點陣圖文件的組成 結構名稱 符號
點陣圖文件頭(bitmap-file header) BITMAPFILEHEADER bmfh
點陣圖信息頭(bitmap-information header) BITMAPINFOHEADER bmih
彩色表(color table) RGBQUAD aColors[]
圖象數據陣列位元組 BYTE aBitmapBits[]

點陣圖文件結構可綜合在表6-01中。

表01 點陣圖文件結構內容摘要

偏移量 域的名稱 大小 內容
圖象文件頭 0000h 文件標識 2 bytes 兩位元組的內容用來識別點陣圖的類型:
』BM' : Windows 3.1x, 95, NT, ...
『BA' :OS/2 Bitmap Array
『CI' :OS/2 Color Icon
『CP' :OS/2 Color Pointer
『IC' : OS/2 Icon
PT :OS/2 Pointer
註:因為OS/2系統並沒有被普及開,所以在編程時,你只需判斷第一個標識"BM"就行。
0002h File Size 1 dword 用位元組表示的整個文件的大小
0006h Reserved 1 dword 保留,必須設置為0
000Ah Bitmap Data Offset 1 dword 從文件開始到點陣圖數據開始之間的數據(bitmap data)之間的偏移量
000Eh Bitmap Header Size 1 dword 點陣圖信息頭(Bitmap Info Header)的長度,用來描述點陣圖的顏色、壓縮方法等。下面的長度表示:28h - Windows 3.1x, 95, NT, ... 0Ch - OS/2 1.x F0h - OS/2 2.x 註:在Windows95、98、2000等操作系統中,點陣圖信息頭的長度並不一定是28h,因為微軟已經制定出了新的BMP文件格式,其中的信息頭結構變化比較大,長度加長。所以最好不要直接使用常數28h,而是應該從具體的文件中讀取這個值。這樣才能確保程序的兼容性。
0012h Width 1 dword 點陣圖的寬度,以象素為單位
0016h Height 1 dword 點陣圖的高度,以象素為單位
001Ah Planes 1 word 點陣圖的位面數(註:該值將總是1)
圖象信息頭 001Ch Bits Per Pixel 1 word 每個象素的位數:1 - 單色點陣圖(實際上可有兩種顏色,預設情況下是黑色和白色。你可以自己定義這兩種顏色) 4 - 16 色點陣圖 8 - 256 色點陣圖 16 - 16bit 高彩色點陣圖 24 - 24bit 真彩色點陣圖 32 - 32bit 增強型真彩色點陣圖
001Eh Compression 1 dword 壓縮說明: 0 - 不壓縮 (使用BI_RGB表示) 1 - RLE 8-使用8位RLE壓縮方式(用BI_RLE8表示) 2 - RLE 4-使用4位RLE壓縮方式(用BI_RLE4表示) 3 - Bitfields-位域存放方式(用BI_BITFIELDS表示)
0022h Bitmap Data Size 1 dword 用位元組數表示的點陣圖數據的大小。該數必須是4的倍數
0026h Hresolution 1 dword 用象素/米表示的水平解析度
002Ah Vresolution 1 dword 用象素/米表示的垂直解析度
002Eh Colors 1 dword 點陣圖使用的顏色數。如8-比特/象素表示為100h或者 256.
0032h Important Colors 1 dword 指定重要的顏色數。當該域的值等於顏色數時(或者等於0時),表示所有顏色都一樣重要
調色板數據 根據BMP版本而不同 Palette N * 4 byte 調色板規范。對於調色板中的每個表項,這4個位元組用下述方法來描述RGB的值: 1位元組用於藍色分量 1位元組用於綠色分量 1位元組用於紅色分量 1位元組用於填充符(設置為0)
圖象數據 根據BMP版本及調色板尺寸而不同 Bitmap Data xxx bytes 該域的大小取決於壓縮方法及圖像的尺寸和圖像的位深度,它包含所有的點陣圖數據位元組,這些數據可能是彩色調色板的索引號,也可能是實際的RGB值,這將根據圖像信息頭中的位深度值來決定。

構件詳解

1. 點陣圖文件頭
點陣圖文件頭包含有關於文件類型、文件大小、存放位置等信息,在Windows 3.0以上版本的點陣圖文件中用BITMAPFILEHEADER結構來定義:

typedef struct tagBITMAPFILEHEADER { /* bmfh */
UINT bfType;
DWORD bfSize;
UINT bfReserved1;
UINT bfReserved2;
DWORD bfOffBits;
} BITMAPFILEHEADER;
其中:
bfType 說明文件的類型.(該值必需是0x4D42,也就是字元'BM'。我們不需要判斷OS/2的點陣圖標識,這么做現在來看似乎已經沒有什麼意義了,而且如果要支持OS/2的點陣圖,程序將變得很繁瑣。所以,在此只建議你檢察'BM'標識)
bfSize 說明文件的大小,用位元組為單位
bfReserved1 保留,必須設置為0
bfReserved2 保留,必須設置為0
bfOffBits 說明從文件頭開始到實際的圖象數據之間的位元組的偏移量。這個參數是非常有用的,因為點陣圖信息頭和調色板的長度會根據不同情況而變化,所以你可以用這個偏移值迅速的從文件中讀取到位數據。

2. 點陣圖信息頭
點陣圖信息用BITMAPINFO結構來定義,它由點陣圖信息頭(bitmap-information header)和彩色表(color table)組成,前者用BITMAPINFOHEADER結構定義,後者用RGBQUAD結構定義。BITMAPINFO結構具有如下形式:

typedef struct tagBITMAPINFO { /* bmi */
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[1];
} BITMAPINFO;
其中:
bmiHeader 說明BITMAPINFOHEADER結構,其中包含了有關點陣圖的尺寸及位格式等信息
bmiColors 說明彩色表RGBQUAD結構的陣列,其中包含索引圖像的真實RGB值。

BITMAPINFOHEADER結構包含有點陣圖文件的大小、壓縮類型和顏色格式,其結構定義為:
typedef struct tagBITMAPINFOHEADER { /* bmih */
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER;
其中:
biSize
說明BITMAPINFOHEADER結構所需要的字數。註:這個值並不一定是 BITMAPINFOHEADER結構的尺寸,它也可能是sizeof(BITMAPV4HEADER)的值,或是sizeof (BITMAPV5HEADER)的值。這要根據該點陣圖文件的格式版本來決定,不過,就現在的情況來看,絕大多數的BMP圖像都是 BITMAPINFOHEADER結構的(可能是後兩者太新的緣故吧:-)。
biWidth
說明圖象的寬度,以象素為單位
biHeight
說明圖象的高度,以象素為單位。註:這個值除了用於描述圖像的高度之外,它還有另一個用處,就是指明該圖像是倒向的點陣圖,還是正向的點陣圖。如果該值是一個正數,說明圖像是倒向的,如果該值是一個負數,則說明圖像是正向的。大多數的BMP文件都是倒向的點陣圖,也就是時,高度值是一個正數。(註:當高度值是一個負數時(正向圖像),圖像將不能被壓縮(也就是說biCompression成員將不能是 BI_RLE8或BI_RLE4)。
biPlanes
為目標設備說明位面數,其值將總是被設為1
biBitCount
說明比特數/象素,其值為1、4、8、16、24、或32
biCompression
說明圖象數據壓縮的類型。其值可以是下述值之一:
BI_RGB:沒有壓縮;
BI_RLE8:每個象素8比特的RLE壓縮編碼,壓縮格式由2位元組組成(重復象素計數和顏色索引);
BI_RLE4:每個象素4比特的RLE壓縮編碼,壓縮格式由2位元組組成
BI_BITFIELDS:每個象素的比特由指定的掩碼決定。
biSizeImage
說明圖象的大小,以位元組為單位。當用BI_RGB格式時,可設置為0
biXPelsPerMeter
說明水平解析度,用象素/米表示
biYPelsPerMeter
說明垂直解析度,用象素/米表示
biClrUsed
說明點陣圖實際使用的彩色表中的顏色索引數(設為0的話,則說明使用所有調色板項)
biClrImportant
說明對圖象顯示有重要影響的顏色索引的數目,如果是0,表示都重要。

現就BITMAPINFOHEADER結構作如下說明:

(1) 彩色表的定位
應用程序可使用存儲在biSize成員中的信息來查找在BITMAPINFO結構中的彩色表,如下所示:
pColor = ((LPSTR) pBitmapInfo + (WORD) (pBitmapInfo->bmiHeader.biSize))

(2) biBitCount
biBitCount=1 表示點陣圖最多有兩種顏色,預設情況下是黑色和白色,你也可以自己定義這兩種顏色。圖像信息頭裝調色板中將有兩個調色板項,稱為索引0和索引1。圖象數據陣列中的每一位表示一個象素。如果一個位是0,顯示時就使用索引0的RGB值,如果位是1,則使用索引1的RGB值。

biBitCount=4 表示點陣圖最多有16種顏色。每個象素用4位表示,並用這4位作為彩色表的表項來查找該象素的顏色。例如,如果點陣圖中的第一個位元組為0x1F,它表示有兩個象素,第一象素的顏色就在彩色表的第2表項中查找,而第二個象素的顏色就在彩色表的第16表項中查找。此時,調色板中預設情況下會有16個RGB 項。對應於索引0到索引15。

biBitCount=8 表示點陣圖最多有256種顏色。每個象素用8位表示,並用這8位作為彩色表的表項來查找該象素的顏色。例如,如果點陣圖中的第一個位元組為0x1F,這個象素的顏色就在彩色表的第32表項中查找。此時,預設情況下,調色板中會有256個RGB項,對應於索引0到索引255。

biBitCount=16 表示點陣圖最多有216種顏色。每個色素用16位(2個位元組)表示。這種格式叫作高彩色,或叫增強型16位色,或64K色。它的情況比較復雜,當biCompression成員的值是BI_RGB時,它沒有調色板。16位中,最低的5位表示藍色分量,中間的5位表示綠色分量,高的5位表示紅色分量,一共佔用了15位,最高的一位保留,設為0。這種格式也被稱作555 16位點陣圖。如果biCompression成員的值是BI_BITFIELDS,那麼情況就復雜了,首先是原來調色板的位置被三個DWORD變數占據,稱為紅、綠、藍掩碼。分別用於描述紅、綠、藍分量在16位中所佔的位置。在Windows 95(或98)中,系統可接受兩種格式的位域:555和565,在555格式下,紅、綠、藍的掩碼分別是:0x7C00、0x03E0、0x001F,而在565格式下,它們則分別為:0xF800、0x07E0、0x001F。你在讀取一個像素之後,可以分別用掩碼"與"上像素值,從而提取出想要的顏色分量(當然還要再經過適當的左右移操作)。在NT系統中,則沒有格式限制,只不過要求掩碼之間不能有重疊。(註:這種格式的圖像使用起來是比較麻煩的,不過因為它的顯示效果接近於真彩,而圖像數據又比真彩圖像小的多,所以,它更多的被用於游戲軟體)。

biBitCount=24 表示點陣圖最多有224種顏色。這種點陣圖沒有調色板(bmiColors成員尺寸為0),在位數組中,每3個位元組代表一個象素,分別對應於顏色R、G、B。

biBitCount=32 表示點陣圖最多有232種顏色。這種點陣圖的結構與16位點陣圖結構非常類似,當biCompression成員的值是 BI_RGB時,它也沒有調色板,32位中有24位用於存放RGB值,順序是:最高位—保留,紅8位、綠8位、藍8位。這種格式也被成為888 32點陣圖。如果 biCompression成員的值是BI_BITFIELDS時,原來調色板的位置將被三個DWORD變數占據,成為紅、綠、藍掩碼,分別用於描述紅、綠、藍分量在32位中所佔的位置。在Windows 95(or 98)中,系統只接受888格式,也就是說三個掩碼的值將只能是:0xFF0000、0xFF00、0xFF。而在NT系統中,你只要注意使掩碼之間不產生重疊就行。(註:這種圖像格式比較規整,因為它是DWORD對齊的,所以在內存中進行圖像處理時可進行匯編級的代碼優化(簡單))。

(3) ClrUsed

BITMAPINFOHEADER結構中的成員ClrUsed指定實際使用的顏色數目。如果ClrUsed設置成 0,點陣圖使用的顏色數目就等於biBitCount成員中的數目。請注意,如果ClrUsed的值不是可用顏色的最大值或不是0,則在編程時應該注意調色板尺寸的計算,比如在4位點陣圖中,調色板的預設尺寸應該是16*sizeof(RGBQUAD),但是,如果ClrUsed的值不是16或者不是0,那麼調色板的尺寸就應該是ClrUsed*sizeof(RGBQUAD)。

(4) 圖象數據壓縮

① BI_RLE8:每個象素為8比特的RLE壓縮編碼,可使用編碼方式和絕對方式中的任何一種進行壓縮,這兩種方式可在同一幅圖中的任何地方使用。

編碼方式:由2個位元組組成,第一個位元組指定使用相同顏色的象素數目,第二個位元組指定使用的顏色索引。此外,這個位元組對中的第一個位元組可設置為0,聯合使用第二個位元組的值表示:
第二個位元組的值為0:行的結束。
第二個位元組的值為1:圖象結束。
第二個位元組的值為2:其後的兩個位元組表示下一個象素從當前開始的水平和垂直位置的偏移量。

絕對方式:第一個位元組設置為0,而第二個位元組設置為0x03~0xFF之間的一個值。在這種方式中,第二個位元組表示跟在這個位元組後面的位元組數,每個位元組包含單個象素的顏色索引。壓縮數據格式需要字邊界(word boundary)對齊。下面的例子是用16進製表示的8-位壓縮圖象數據:

03 04 05 06 00 03 45 56 67 00 02 78 00 02 05 01 02 78 00 00 09 1E 00 01
這些壓縮數據可解釋為 :

壓縮數據 擴展數據
03 04 04 04 04
05 06 06 06 06 06 06
00 03 45 56 67 00 45 56 67
02 78 78 78
00 02 05 01 從當前位置右移5個位置後向下移一行
02 78 78 78
00 00 行結束
09 1E 1E 1E 1E 1E 1E 1E 1E 1E 1E
00 01 RLE編碼圖象結束

② BI_RLE4:每個象素為4比特的RLE壓縮編碼,同樣也可使用編碼方式和絕對方式中的任何一種進行壓縮,這兩種方式也可在同一幅圖中的任何地方使用。這兩種方式是:

編碼方式:由2個位元組組成,第一個位元組指定象素數目,第二個位元組包含兩種顏色索引,一個在高4位,另一個在低4位。第一個象素使用高4位的顏色索引,第二個使用低4位的顏色索引,第3個使用高4位的顏色索引,依此類推。

絕對方式:這個位元組對中的第一個位元組設置為0,第二個位元組包含有顏色索引數,其後續位元組包含有顏色索引,顏色索引存放在該位元組的高、低4位中,一個顏色索引對應一個象素。此外,BI_RLE4也同樣聯合使用第二個位元組中的值表示:
第二個位元組的值為0:行的結束。
第二個位元組的值為1:圖象結束。
第二個位元組的值為2:其後的兩個位元組表示下一個象素從當前開始的水平和垂直位置的偏移量。

下面的例子是用16進制數表示的4-位壓縮圖象數據:

03 04 05 06 00 06 45 56 67 00 04 78 00 02 05 01 04 78 00 00 09 1E 00 01

這些壓縮數據可解釋為 :

壓縮數據 擴展數據
03 04 0 4 0
05 06 0 6 0 6 0
00 06 45 56 67 00 4 5 5 6 6 7
04 78 7 8 7 8
00 02 05 01 從當前位置右移5個位置後向下移一行
04 78 7 8 7 8
00 00 行結束
09 1E 1 E 1 E 1 E 1 E 1
00 01 RLE圖象結束

3. 彩色表

彩色表包含的元素與點陣圖所具有的顏色數相同,象素的顏色用RGBQUAD結構來定義。對於24-位真彩色圖象就不使用彩色表(同樣也包括16位、和32位點陣圖),因為點陣圖中的RGB值就代表了每個象素的顏色。彩色表中的顏色按顏色的重要性排序,這可以輔助顯示驅動程序為不能顯示足夠多顏色數的顯示設備顯示彩色圖象。RGBQUAD結構描述由R、G、B相對強度組成的顏色,定義如下:

typedef struct tagRGBQUAD { /* rgbq */
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;
其中:
rgbBlue 指定藍色強度
rgbGreen 指定綠色強度
rgbRed 指定紅色強度
rgbReserved 保留,設置為0

4. 點陣圖數據

緊跟在彩色表之後的是圖象數據位元組陣列。圖象的每一掃描行由表示圖象象素的連續的位元組組成,每一行的位元組數取決於圖象的顏色數目和用象素表示的圖象寬度。掃描行是由底向上存儲的,這就是說,陣列中的第一個位元組表示點陣圖左下角的象素,而最後一個位元組表示點陣圖右上角的象素。(只針對與倒向DIB,如果是正向DIB,則掃描行是由頂向下存儲的),倒向DIB的原點在圖像的左下角,而正向 DIB的原點在圖像的左上角。同時,每一掃描行的位元組數必需是4的整倍數,也就是DWORD對齊的。如果你想確保圖像的掃描行DWORD對齊,可使用下面的代碼:

(((width*biBitCount)+31)>>5)<<2

5. 參考書目

《圖象文件格式(上、下)—Windows編程》
《圖像文件格式大全》
《Programming Windows by Charles Petzold》

6. 相關站點

各種格式:http://www.wotsit.org/

望採納 謝謝!

⑸ 急!!ccs2.2中的dat文件如何載入

在ccs2.2中,我嘗試用file/date/load進行操作,可是依然行不通!原因是我無法在依照C,ASM,CMD,LIB,等文件鏈接生成的project/debug/等目錄下找到對應的date文件載入!請問,date文件是要求自己創建嗎?在help/tutorial可並沒有介紹啊!我是按照上面的步驟一步一步執行下來的,這是怎麼回事?

⑹ CCS如何導入txt里的數據

據我所知,CCS只支持DAT格式的數據導入。需要對txt中中所保存二維數組做FFT,你可以直接在你的工程中定義並初始化一個二維數組,數組中的元素為你txt中的所保存即可,然後對這個二維數組做FFT,對免去導入的過程,代碼寫起來也較為直觀。如何使用dsplib庫,你看下TI的該函數庫的文檔,裡面應該有詳細函數使用方法。

⑺ ccs里load了.dat文件後,write_flash(addr,data)怎麼處理啊

我表達的有問題,就是把.dat文件load完後,我要在主程序里讀這個文件,把這個文件里的內容用函數write_flash(addr,data)寫到flash里去。可是讀進來的是字元,而我write_flash(addr,data)里的data是uint32數據類型

⑻ CCS3.3如何讀取sine.dat文件並用graph進行波形分析,需要編寫程序嗎

不需要編寫程序,file-data-load,然後設置graph就行,注意地址address,剛開始載入的時候會出現,記下然後放到graph裡面的初始地址。這也是我今天才搞通的。

⑼ 如何用MATLAB模擬信號采樣的值產生.DAT文件給CCS使用

1、你首先得知道.dat文件的格式 可以先從ccs導出數據,File->data->save...,在彈出的窗口中輸入相應的值,ok,然後用記事本等文本編輯器打開就可以看.dat文件的格式,我用的是ccs3.1,晶元是5402,下面是我的.dat文件中拷下來的一段:1651 1 2800 1 1000x00000x00000x000C0x006F。。。。第一行應該是固定格式,前面的1651 1 2800 1我不知道是什麼意思,最後的100是數據長度0x100,也就是256,你可以看看你那裡是怎麼樣的2、matlab生成.dat文件 matlab自己的.mat格式肯定不是這樣的,你看看有沒有其他的辦法,我曾經用matlab的文件讀寫把數據強行寫成上面的格式,也能用[]

⑽ CCS3.3 如何導入.DAT文件以及如何看波形輸出

這是需要主板和音效卡的支持,還有就是驅動。解決方法,第一網上下最新的驅動,把主板驅動和音效卡驅動都下,然後從新裝一下。有個問題

熱點內容
馬路上汽車的噪音在多少分貝 發布:2023-08-31 22:08:23 瀏覽:2184
應孕棒多少錢一盒 發布:2023-08-31 22:08:21 瀏覽:1651
標准養老金一年能領多少錢 發布:2023-08-31 22:05:05 瀏覽:1948
湖北通城接網線多少錢一個月 發布:2023-08-31 21:59:51 瀏覽:2017
開隨車吊車多少錢一個月 發布:2023-08-31 21:55:06 瀏覽:1776
京東付尾款怎麼知道前多少名 發布:2023-08-31 21:52:58 瀏覽:2101
在學校租鋪面一個月要多少錢 發布:2023-08-31 21:52:09 瀏覽:2240
2寸有多少厘米 發布:2023-08-31 21:50:34 瀏覽:1879
知道電壓如何算一小時多少電 發布:2023-08-31 21:46:20 瀏覽:1887
金手鐲54號圈周長是多少厘米 發布:2023-08-31 21:44:28 瀏覽:2023