|
|
|||||||
| Home | Forums | Rules | Articles | Store | Gallery | Blogs | Register | Donations | FAQ | Calendar | Search | Today's Posts | Mark Forums Read | Search |
| Digital Source Digital Players and Recorders: CD , SACD , Tape, Memory Card, etc. |
|
Please consider donating to help us continue to serve you.
Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving |
|
|
|
Thread Tools | Search this Thread |
|
|
#1 |
|
diyAudio Member
Join Date: Dec 2003
Location: Oslo, Norway
|
Hi,
I've just got my hands on a Philips L1210/65 CD drive. I've coded up the basics of a DSA interface in C for the Atmel ATmega48 MCU. I'm planning to release the code when it all works. Right now I have some initial problems that I can't really figure out. I'm able to send quite a few DSA commands to the drive, but there are some obvious ones that fail. For example I can send 0x0101 to play track number 1 and 0x0103 to play track number 3. In both cases the information I get back from the drive makes sense (Index, Abs.minutes, Abs.seconds). I can skip to track 3 while playing track 1, and to track 1 while playing track 3. But the weird thing is that I'm not able to tell the drive to start playing track 2. It continues there on its own when playing track 1, but I'm not able to instruct it to go to track 2. Neither am I able to tell the drive to stop. When I send it an instruction it doesn't like (like 0x0102 to play track 2), the drive fails to give a communications ack at the end of the 16 bits. And after that it gives me the error code 0x042B which I can't find in the documentation. When I try reading the TOC for session 0 (0x0300) I get the same error, 0x042B. I also got the error 0x0429 for a while, but it stopped saying that after I added some pauses in the DSA. Any help on this would be great! Cabling, voltage supplies etc. seem to be in order. Regards, Borge |
|
|
|
#2 |
|
diyAudio Member
Join Date: Dec 2003
Location: Oslo, Norway
|
Getting a bit closer here now...
I can write a DSA command that ends with a '1' but not one that ends with a '0'. Looks like it's back to the drawing board for now. Have a great weekend! Borge |
|
|
|
#3 |
|
diyAudio Member
Join Date: Dec 2003
Location: Oslo, Norway
|
Sorry to have bothered you! Got it solved now. It was just me forgetting to set D back to 1 as I set S to 1 during the DSA signalling routine.
Borge |
|
|
|
#4 |
|
diyAudio Member
Join Date: Jan 2004
Location: LYON
|
Do you plan to post your C code soon ?
|
|
|
|
#5 |
|
diyAudio Member
Join Date: Dec 2003
Location: Oslo, Norway
|
Hi Zers,
Yes, I plan to post it fairly soon. Before releasing it I'll probably implement all the common CD player buttons. When it's out I will not have time to do much support on it. I'll also reread the DSA specifications to make sure that I write farily correct commands, not just what happened to work in the lab last night :-) Are you in need of DSA code right now? I code for an Atmega48 on a veroboard that I program from an STK500 board using the WinAVR package. Regards, Børge |
|
|
|
#6 | |
|
diyAudio Member
Join Date: Jan 2004
Location: LYON
|
Quote:
I don't need it right now and on top of that I will use a PIC as controller. But the idea is top understand (by reading C code) how to deal with this interface. Because of my english, I've still got problems to understand several points. And I'm pretty much comfortable with reading C
|
|
|
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
|
|
|
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Interface : USB or NOT | renaudagnes | Digital Source | 40 | 9th December 2009 06:13 PM |
| HDD to I2s interface | elnec | Digital Line Level | 6 | 15th September 2008 08:43 PM |
| CFP output amplifier - Is it worth the hassle? | ash_dac | Solid State | 1 | 9th October 2006 12:13 AM |
| New To Site? | Need Help? |
| Page generated in 0.08540 seconds (77.18% PHP - 22.82% MySQL) with 10 queries |