Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

compact flash interface with TI davinci EVM6446 (TMS320DM6446).

Status
Not open for further replies.

venkatramanbhat

Newbie level 1
Newbie level 1
Joined
Feb 20, 2015
Messages
1
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Visit site
Activity points
19
I am using Spectrum digital EVMDM6446 (DaVinci EVM) and Spectrum digital XDS560v2 LC Traveller Emulator and Code Composer Studio 5.5.0 and using SanDisk compact flash ultra II (4.0 GB). I am trying to run the spectrum sample code "cf" which is given in spectrum digital Inc website support page (**broken link removed** ). do I need to make any changes in the code? card is detecting in function Int16 cf_card_detect( ).

I am trying to read the device ID in :


Code C - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ATA_readId( ( Uint32 )id );
 
 /* Check for valid identifier */
 
    printf( "    CF Identifier:   0x%x\n", ( id[0] << 8 ) + id[1] );
 
    if ( ! ( ( id[0] == 0x8A ) && ( id[1] == 0x84 ) ) )
 
    {
 
        printf( "    Invalid CF identifier found\n" );
 
        return 1;
 
    }

Console data displayed is as below:

CF.CD2 Found
CF Identifier: 0x84
Invalid CF identifier found
Model number: [ ]
Serial number: [AS 0 0"9$5]
Capacity: [3962416] KBytes // for 4GB
Capacity: [3869] MBytes
Addr32 test [1-3] sector
InvAddr32 test [1-3] sector
FAIL... error code 4... quitting

here CF Identifier is read as: 0x84 instead of 0x848A. This is similar for all identifiers. I am getting only MSB of 16 bit data.
and reading only 0x84 and instead 0x8A I am reading 0x00. Not able to run ata_addr32() test too. in address test when I read PRI_ATA_DATA16 value I am getting DDR address (ie in the range 0x08000000). I have mot made any change in the sample code. whats wrong?

Refer Code: Sample code attached, same code and supporting files are given in davincievm.zip folder.

download davincievm.zip folder from **broken link removed**)

file path :davincievm\examples\cf .

ref datasheets: sandisk compact flash : http://media.digikey.com/pdf/Data Sheets/M-Systems Inc PDFs/SanDisk CompactFlash Memory.pdf

TI datasheets: SPRUE21(ATA controllers datasheet)

Regards,

Venkatraman Bhat
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top