⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ipod accessory protocol.mht

📁 ipodourdev_176702.rar IPOD接口资料IPODSOCKET 需要
💻 MHT
📖 第 1 页 / 共 5 页
字号:
From: <由 Microsoft Internet Explorer 5 保存>
Subject: iPod Accessory Protocol
Date: Thu, 2 Aug 2007 13:58:37 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_004F_01C7D50D.3961A460"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138

This is a multi-part message in MIME format.

------=_NextPart_000_004F_01C7D50D.3961A460
Content-Type: text/html;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://stud3.tuwien.ac.at/~e0026607/ipod_remote/ipod_ap.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>iPod Accessory Protocol</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dgb2312">
<STYLE type=3Dtext/css>BODY {
	FONT-SIZE: 8pt; MARGIN-LEFT: 100px; BACKGROUND-COLOR: #ffffff
}
H1 {
	FONT-SIZE: 20pt; COLOR: #000000; BORDER-BOTTOM: black thin solid
}
P {
	FONT-SIZE: 10pt; WORD-SPACING: 0.8mm; COLOR: blue; LINE-HEIGHT: 14pt; =
FONT-FAMILY: Helvetica,Arial,sans-serif; LETTER-SPACING: 0.2mm
}
LI {
	FONT-SIZE: 10pt; WORD-SPACING: 0.8mm; COLOR: blue; LINE-HEIGHT: 14pt; =
FONT-FAMILY: Helvetica,Arial,sans-serif; LETTER-SPACING: 0.2mm
}
TABLE {
	FONT-SIZE: 8pt
}
#rxd {
	BACKGROUND-COLOR: #e4b7a8; TEXT-ALIGN: center
}
#txd {
	BACKGROUND-COLOR: #bbcc00; TEXT-ALIGN: center
}
#frame {
	BACKGROUND-COLOR: #84c777; TEXT-ALIGN: center
}
#cont {
	BACKGROUND-COLOR: #ffb956; TEXT-ALIGN: center
}
A {
	FONT-SIZE: 14pt; COLOR: #aa5555
}
</STYLE>

<META content=3D"MSHTML 6.00.2900.3132" name=3DGENERATOR></HEAD>
<BODY>
<DIV align=3Dcenter>
<H1>IPOD 3G Accessory Protocol </H1></DIV>
<HR>
<BR><BR><BR>This document describes the serial protocol used by the =
orginal iPod=20
remote , the different Voice Recorders, and maybe for the Alpine and BMW =
Car=20
Adapters.<BR><BR>With this information you are able to=20
<UL>
  <LI>set the iPod in Voice Recorder mode and record audio=20
  <LI>act like the original iPod Remote=20
  <LI>set the iPod in an advanced Remote mode which allows you to=20
  <UL><BR>
    <LI>receive time information of the current song=20
    <LI>receive status information Play, Pause, Stop=20
    <LI>receive the number of songs in the current playlist=20
    <LI>receive the index of the current played song in the current =
playlist=20
    <LI>get artistname of each song in the playlist=20
    <LI>get albumname of each song in the playlist=20
    <LI>get songname of each song in the playlist=20
    <LI>jump to a specific song in the playlist=20
    <LI>jump to a specific Playlist=20
    <LI>jump to a specific Artist-playlist=20
    <LI>jump to a specific Album-playlist=20
    <LI>jump to a specific Genre-playlist=20
    <LI>switch to shuffle mode=20
    <LI>switch to loop mode=20
    <LI>upload pictures which should be displayed in AiR mode =
</LI></UL></LI></UL>
<H2>The G3 protocol</H2><BR>I only own a 3G model so i'm not able to =
verifiy=20
this for the 4G model. But it should work also on 4G models<BR>The =
format is a=20
standard 8N+1 serial structure which means 1 startbit 8 databits no =
parity bit=20
and 1 stopbit<BR>the usual baud rate is 19200 baud. But it seems to work =
also on=20
higher rates.<BR>The iPod communication is done in strings.<BR><BR>This =
is the=20
frame for each string.=20
<TABLE cellSpacing=3D2 cellPadding=3D2 align=3Dleft border=3D1 =
frame=3Dbox>
  <TBODY align=3Dmiddle>
  <TR>
    <TD id=3Dframe>0xFF </TD>
    <TD id=3Dframe>0x55 </TD>
    <TD id=3Dframe>0x00 </TD>
    <TD id=3Dcont>3 to n Byte</TD>
    <TD id=3Dframe>0x00 </TD></TR>
  <TR>
    <TD id=3Dframe>A </TD>
    <TD id=3Dframe>B </TD>
    <TD id=3Dframe>C </TD>
    <TD id=3Dcont>...</TD>
    <TD id=3Dframe>D </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=3D2 cellPadding=3D2 align=3Dcenter border=3D1 =
frame=3Dbox>
  <TBODY align=3Dmiddle>
  <TR id=3Dframe>
    <TD>A </TD>
    <TD>A is always 0xFF</TD></TR>
  <TR id=3Dframe>
    <TD>B </TD>
    <TD>B is always 0x55</TD></TR>
  <TR id=3Dframe>
    <TD>C </TD>
    <TD>C gives the number of data bytes between C and D </TD></TR>
  <TR id=3Dcont>
    <TD>...</TD>
    <TD>Contains,mode,command and parameter</TD>
  <TR id=3Dframe>
    <TD>D </TD>
    <TD>D is the checksum always the last =
byte</TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1 frame=3Dbox>
  <TBODY align=3Dmiddle>
  <TR>
    <TD>Fieldname</TD>
    <TD>Size (Byte)</TD>
    <TD>Value</TD>
    <TD>FrameName</TD></TR>
  <TR id=3Dframe>
    <TD>Header</TD>
    <TD>2</TD>
    <TD>0xFF 0x55 </TD>
    <TD>A and B</TD></TR>
  <TR id=3Dframe>
    <TD>Length</TD>
    <TD>1</TD>
    <TD>sizeof mode + command + parameter </TD>
    <TD>C</TD></TR>
  <TR id=3Dcont>
    <TD>Mode</TD>
    <TD>1</TD>
    <TD>The mode the command is refering to (Look at "List of Modes" =
below)=20
</TD>
    <TD>Between C and D</TD></TR>
  <TR id=3Dcont>
    <TD>Command</TD>
    <TD>2</TD>
    <TD>The two byte command </TD>
    <TD>Between C and D</TD></TR>
  <TR id=3Dcont>
    <TD>Parameter</TD>
    <TD>0..n</TD>
    <TD>Optional Parameter, depending on the command </TD>
    <TD>Between C and D</TD></TR>
  <TR id=3Dframe>
    <TD>Checksum</TD>
    <TD>1</TD>
    <TD>0x100 - sum of all between B and D Frames </TD>
    <TD>D</TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellSpacing=3D2 cellPadding=3D2 border=3D1 frame=3Dbox>
  <TBODY align=3Dmiddle>
  <TR>
    <TD>Mode</TD>
    <TD>Purpose</TD></TR>
  <TR id=3Dcont>
    <TD>0x00</TD>
    <TD>Mode switching</TD></TR>
  <TR id=3Dcont>
    <TD>0x01</TD>
    <TD>Voice Recorder</TD></TR>
  <TR id=3Dcont>
    <TD>0x02</TD>
    <TD>Simple Remote</TD></TR>
  <TR id=3Dcont>
    <TD>0x04</TD>
    <TD>Advanced iPod Remote (AiR)</TD></TR></TBODY></TABLE><BR>
<H2>The Original Remote Commands</H2><BR><BR>
<TABLE cellSpacing=3D2 cellPadding=3D2 bgColor=3D#f7ffe5 border=3D1 =
frame=3Dbox>
  <TBODY>
  <TR>
    <TD=20
      style=3D"FONT-WEIGHT: bold; VERTICAL-ALIGN: top; TEXT-ALIGN: =
center">Button<BR></TD>
    <TD=20
      style=3D"FONT-WEIGHT: bold; VERTICAL-ALIGN: top; TEXT-ALIGN: =
center">String<BR></TD></TR>
  <TR>
    <TD>Play/Pause</TD>
    <TD id=3Dframe>0xFF 0x55 0x03 0x02 0x00 0x01 0xFA</TD></TR>
  <TR>
    <TD>Vol+</TD>
    <TD id=3Dframe>0xFF 0x55 0x03 0x02 0x00 0x02 0xF9</TD></TR>
  <TR>
    <TD>Vol-</TD>
    <TD id=3Dframe>0xFF 0x55 0x03 0x02 0x00 0x04 0xF7</TD></TR>
  <TR>
    <TD vAlign=3Dtop width=3D130>Skip&gt;&gt;</TD>
    <TD id=3Dframe style=3D"VERTICAL-ALIGN: top; TEXT-ALIGN: =
center">0xFF 0x55=20
      0x03 0x02 0x00 0x08 0xF3</TD></TR>
  <TR>
    <TD vAlign=3Dtop width=3D130>&lt;&lt;Skip</TD>
    <TD id=3Dframe style=3D"VERTICAL-ALIGN: top; TEXT-ALIGN: =
center">0xFF 0x55=20
      0x03 0x02 0x00 0x10 0xEB</TD></TR>
  <TR>
    <TD vAlign=3Dtop>End Button </TD>
    <TD id=3Dframe style=3D"VERTICAL-ALIGN: top; TEXT-ALIGN: =
center">0xFF 0x55=20
      0x03 0x02 0x00 0x00 0xFB </TD></TR></TBODY></TABLE><BR>As you can =
see C is for=20
each of the Remote commands 0x03 because there are 3 databytes ( 0x02 =
0x00 0x01=20
for Play/Pause ). D is the checksum which is the number you have to add =
to the=20
sum of the databytes ( 0x02 0x00 0x01 for Play/Pause ) plus the C byte =
to get an=20
even multiple of 0x100.<BR>For our Play Pause example: 0x02 + 0x00 + =
0x01 +=20
0x03(C) + 0xFA(D) =3D0x100. <BR><BR>
<H3>Connection</H3>For the remote connector schematics look at the <A=20
href=3D"http://www.maushammer.com/systems/ipod-remote/ipod-remote.html">m=
aushammer=20
page</A><BR>For the dock pinout of the serial connector take a look at =
<A=20
href=3D"http://stud3.tuwien.ac.at/~e0026607/ipod_remote/ipod_dock_pinout.=
html">partial=20
dock pinout</A> You should also use the setttings shown on the =
maushammer page=20
for baudrate, character size, etc.. <BR>The most complete iPod Hardware=20
information: <A =
href=3D"http://www.ipodlinux.org/">http://www.ipodlinux.org/</A>=20
<BR><BR>
<H2>The Voice Recorder Mode</H2>The first bitpattern you have to send to =
the=20
iPod is 0xFF 0x55 0x03 0x00 0x01 0x01 0xFB.<BR><BR>-&gt; The menu =

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -