Informationen zum Sony Autoradio – Unilink – Protokoll

  1. Einleitung
  2. Stecker/Datenkabel-Belegung
  3. Befehlsaufbau
  4. Befehlsübersicht
  5. Verwendete IC's
  6. Datenblätter
  7. Informationen

1. Einleitung

Das Unilink-Protokoll wird in Sony-Autoradios (z.B.: XR-C6090R, XR-C6090R) verwendet, welcher für die Komunikation zwischen einem Sony Autoradio und CD-Wechslern (z.B.: CDX-51) oder MD-Wechslern verwendet wird. Hier soll der Aufbau des Protokolls sowie eigene Programme vorgestellt werden. Die Programme sollen zeigen, wie die Kommunikation zwischen den Teilnehmern funktioniert.

In absehbarer Zeit ist auch noch ein PIC-Programm geplant, welches einen CD-Wechsler „simuliert“, um den Audioeingang des Radios, auch ohne CD-Wechsler, zu verwenden. nach oben

2. Stecker/Datenkabel-Belegung

CD-Wechsler/MD-Spieler (Slave) Autoradio (Master)

 

Pin-Belegung

  • Pin 1 – NC
  • Pin 2 – CD – Reset
  • Pin 3 – NC
  • Pin 4 – CD – Clock
  • Pin 5 – CD - Daten
  • Pin 6 – CD - Wechsler ein 5V ein/0V aus BUS on/off
  • Pin 7 – 12 V Dauerplus
  • Pin 8 – Masse

nach oben


3. Befehlsaufbau

3.1 Allgemeine Informationen

3.1.1 BUS

  • 1. Signale sind TTL
    2. Es werden 3 Leitungen benötigt (Data, Clock, Bus on).
    3. Es gibt nur einen Master.

3.1.2 BUS-Zustände

 

Bus-On
Clock
Data
Aus
0
X
X
Leerlauf
1
1
8ms high, 8ms low
Beschäftigt
1

3.2 Kommunikationsablauf


  • 18 - Broadcast
  • 10 - Master
  • 3E - CD-Wechsler
  • 30 - CD-Gruppe
  • 0102 - Anyone?
  • 0104 - Ende
3.2.1 Kurze Wortlänge

Erklärung des Bildes:
RAD – TAD – CMD1 – CMD2 – Parity – 0

3.2.1 Mittlere Wortlänge

Erklärung des Bildes:
RAD–TAD–CMD1–CMD2–Parity–D1–D2–D3–D4-Parity2-0

3.2.1 Lange Wortlänge

Erklärung des Bildes:
RAD–TAD–CMD1–CMD2–Parity–D1–D2–D3–D4-D11-D22-D33-D44-D55-Parity2-0

Legende:

RAD – Empfänger - Adresse
TAD – Sender – Adresse
CMD1 – 1. Byte des Commandos
CMD2 – 2. Byte des Commandos
Parity – 1. Parity Byte
D1,D2,D3,D4 – vier zusätzliche Datenbytes (in middle und long-word)
D11,D22,D33,D44,D55 – fünf zusätzliche Datenbyte (in long word)
Parity – 2. Parity Byte
0 - Binäres Null-Byte

3.3 Byte-Aufbau

Erklärung: - Daten sind nur gültig, wenn Clock-Leitung von High-Low wechselt (fallende Flanke) und die Datenleitung Low ist

Das Bild zeigt das 1.Byte (18h) und das 2.Byte (10h) der Initialisierungs-Sequenz.

nach oben


4. Befehlsübersicht

length CMD1 CMD2   Command Meaning
s 0x00    State report (from slave)
  0x00      -Playing
0x20      -Changed CD
0x21      -Seeking
0x40      -Changing CD
0x80      -Idle
0xC0      -Ejecting
 
s 0x01   Requests (from master)
  0x00     -Re-initialize bus
0x02      -Anyone? (initial link)
0x03      -[Anyone special??? (comes always after 0x02)]
0x11      -Time Polling End.
0x12     -Time Poll (answered by slave with 0x00 short word)
0x13     -Request Time Poll ( playing positon or receive frequency)
 
s 0x02   Configuration things (frommaster)
  0x01     -Tell slave about assigned ID number
0x44      -[init tuner??]
     
s 0x08  0x00  - Key Off (Eg. Cancel Searching Up)
       If e.g the fast forward key was pressed; this command issent
     when the key is released.
 
s 0x20  ??? PLAY (from master)
         sent if the device has to start playing
 
s 0x21  ??? Switch band (from master to tuner)
       this switches between FM/AM and whatever tuner can receive
 
s 0x24  ???  FF (from master)
         start fast forwarding (end with command 0x08)
 
s 0x25  ???  REV (from master)
         start fast reverse playing (end with command 0x08)
 
s 0x26  ???  Next Track (from master)
         jump to the next track
 
s 0x27  ???  Prev Track (from master)
         jump to the previous track
 
s 0x28 ???  Next CD (from master)
         change to next CD
 
s 0x29  ???  Prev Track (from master)
         change to previous CD
 
s 0x2b  ???  Change to channel (from master to tuner)
         change to a saved channel number
 
s 0x2d ???  Next channel (from master to tuner)
         change to the next saved channel
 
s 0x2e ???  Prev channel (from master to tuner)
         change to the previous saved channel
 
s 0x32  ???  Toggle MONO mode (from master to tuner)
         toggle between stereo and mono
 
s 0x34 ??? Toggle REPEAT mode (from master to changer)
         switch between different repeat modes (one track/whole CD)
 
s 0x35 ??? Toggle shuffle mode (from master to changer)
         switch between different shuffle modes (one CD/all CDs)
 
s 0x36 ???  Toggle intro mode (from master to slave)
         toggle intro mode (play only the first 10 secs of a track)
 
s 0x37  ??? Toggle bank mode (from master to changer)
         toggle bank mode (play all/only selected/all but selected
         tracks)
 
s 0x3c  ???  Get PTY (from master to tuner)
         ask tuner for the current type of program on the current
         radio channel
 
s 0x41 ???  Edit CD name (from master to CD)
  0x00     - put thecurser forward by one (if it's at the last position
       jump to first pos)
0x40     - changeto next higher char (e.g. A -> B)
0x50    - changeto next lower char (e.g. B -> A)
 
m 0x80 ??? unknown
 
m 0x82    unknown
    0x00    - a keyon the display unit was pressed??)
 
m 0x87     Power Status (On/Off/WakeUp/etc)
  0xeb    - Data1=0x10-> system off??
     - Data1=0x90 -> switch Display color to green
     - Data1=0x80 -> switch Display color to amber
0x6b  (same as 0xeb?)
 
s 0x8c    report in (from slave)
      answer to the Anyone?-Request (0x0102)
 
m 0x8e    Magazine/Cartridge information(from changer)
  0x40     - Slot inmagazine is empty
0x80    - A magazinewas put into the changer
0xc0     - No magazine
 
m 0x90    Playing position / Tunerfrequency (from master)
  0x00    - currentplaying position
              CD:    data1                 - Track number
                     data2                - minutes
                     data3                 - seconds
                     4 high bits of data4   - CD number
             Cas:   4 high bits of data2=6 - side A
                     4 high bits of data2=7 - side B
0x30    - Rev 2 (to cas)
0x31    - Fwd 2 (to cas)
0x20   - Rev 1 (to cas)
0x21    - Fwd 1 (to cas)
0xc0    - Eject (to cas)
 
m 0x91  Hours  Current Time (from clock)
       Sent by the clock once per minute
     CMD0 -> Hours ... Data1 ->  Minutes; others unknown
 
m 0x91    Station info (from tuner)
         - Data2       Bit 6 -> stereo
 
m 0x9c ??? unknown (trying something?)
 
m 0x94  ??? configuration change (from display to master??)
       - Data1:
     -   Bit 7   Switch mute
     -   Bit 6   Mute now is (1->on/0->off)
     -   Bit 5   Switch loudess
     -   Bit 4   Loudness now is (1->on/0->off)
 
     -  Data2:
     -   Bit 7   Switch telephone mute
     -   Bit 6   Telephone mute is now (1->on/0->off)
 
m 0x98  ??? Intro play was finished for specified track (fromslave)
       - Data3 -> Track
     - Data2 -> 4 higher bytes CD number
 
l 0xc0   ...seeking (from changer)
         Target position:
         data22     track number
         data23    4 low bits -> minutes
         data24     seconds
         data25     4 high bits -> track
0x00     - seekingin the track
0x04     - unknown
0x20    - seekingto track
0x40    - seekingto cd
 
l 0xc1  ???  unknown
 
l 0xcd   [Track name ???]  (fromCD)
      string containging the 8 characters of the current track name:
      CMD2,Data1, Data2, Data3, Data4, Data21, Data22, Data23
 
l 0xd5 ???  unknown (from CD)
 
l 0xd6  ???  CD name (from CD)
        string containging the 8 characters of the current CD name:
          CMD2, Data1, Data2, Data3, Data4, Data21, Data22, Data23
 
l 0xf0 ???  - System Status and audio source in foreground/background
       

nach oben


5.Verwendete IC's im Autoradio bzw. CD-Wechsler

Autoradio (Master) - BA8270F – Bus Interface for car audio der Firma Rohm

CD-Wechsler (Salve) – BA8272F - Bus Interface for car audio der Firma Rohm

Datenblätter hier

nach oben


6. Datenblätter

BA8270F

BA8272F

nach oben


7. Informationen

Weitere Informationen finden Sie auf folgenden Internetseiten

Cleggy's Hompage

www.haribo.purespace.de/unilink/unilink.htm

nach oben