Modérateurs: Modération Forum DIY, Modération Forum Installations, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 49 invités

Enceintes en kit, tweaks : modification dans le but d'améliorer une enceinte existante Ex: modif du filtrage... WIY Wire It Yourself - cable le toi-même - est le petit frère de DIY en version plus accessible au débutant.

Décodez les flux AC3/DTS dans vos préamplis HC DIY !

Message » 03 Jan 2012 16:17

... apres avoir branché la buspirate sur les signaux scl et sda du CS ... rien en mode snif I2C ... malheureusement leur mode sniff semble limité à 100khz... :grr:
il faut que je bricole un sniffeur moi meme :evil: , en utilisant un arduino nano qui traine dans un tiroir, avec un sketch I2C slave qui renvoie tout ce qui passe sur le bus... ca va prendre quelques heures/jours, suis vraiement pas fort en C.
maxidcx
Membre HCFR Contributeur
Membre HCFR Contributeur
 
Messages: 3103
Inscription Forum: 25 Avr 2007 10:50
  • offline

Message » 03 Jan 2012 16:54

Fais le en assembleur... :mdr:

(je rigole, mais je dois faire une interface pour un ampli, et je suis parti pour me taper le code en assembleur sur PIC... quelques mois de travail pour encodeur+lcd+telecommande IR+gestion ampli, securité+une liaison série+du PWM a droite à gauche..?)
Nexus.6
 
Messages: 3689
Inscription Forum: 09 Oct 2006 19:45
Localisation: Toulouse
  • offline

Message » 03 Jan 2012 20:03

Nexus.6 a écrit:Fais le en assembleur... :mdr:

ca me rapelle des temps anciens sur le 8051 :oldy:

Nexus.6 a écrit:encodeur+lcd+telecommande IR+gestion ampli, securité+une liaison série+du PWM a droite à gauche..?)


j'ai a peu pres la meme chose a faire pour mon Quad406 :) mais sans le LCD ni la liaison serie: cool :mdr:

courage !

Serieusement j'ai raccordé la STR sur une arduino pour controler le chip SM8954 et capter les signaux I2C+RESET et INTREQ.
Image
ca avance, mais tres doucement...

et NETeagle2k, ca va comme tu veux le soudage des CMS ? :P
maxidcx
Membre HCFR Contributeur
Membre HCFR Contributeur
 
Messages: 3103
Inscription Forum: 25 Avr 2007 10:50
  • offline

Message » 06 Jan 2012 23:46

le snifeur fonctionne a 95%
j'ai isolé une trame d'environ 400 octet (IBA)
il me reste encore a optimiser le code car c'est de l'I2C slave software et je perds un ou 2 bits de temps en temps. :hehe:
esperons que je trouverai encore 1h ou 2 ce week end.
maxidcx
Membre HCFR Contributeur
Membre HCFR Contributeur
 
Messages: 3103
Inscription Forum: 25 Avr 2007 10:50
  • offline

Message » 07 Jan 2012 11:28

ca yest.
NETeagle2k, je t'envoie l'IBA par MP :)
Dernière édition par maxidcx le 07 Jan 2012 18:05, édité 1 fois.
maxidcx
Membre HCFR Contributeur
Membre HCFR Contributeur
 
Messages: 3103
Inscription Forum: 25 Avr 2007 10:50
  • offline

Message » 07 Jan 2012 15:48

bon voila, le snif de l'init du CS493x est fini. :ane:
voici les séquences successives écrites et lues par la carte chinoise vers le CS.
pour ce qui est de la séquence de boot et de l'initialisation, ils semblent conformes à la datasheet du CS ainsi qu'a la note d'application 163. donc je dirai qu'il n'y a pas de vol d'IP avec ce dump :hehe:

voici le dump complet I2C correspondant (je posterai le code du snifer sur le forum officiel arduino lateron)
1) séquence de power on. Je ne mets pas les 435 octets correspondant au code IBA car il y a du copyright. dispo sur demande par MP.
2) séquence vers le module bass manager pour passer en mode Speaker LARGE
3) séquence vers le module bass manager pour passer en mode Speaker SMALL
Nous avons maintenant tout ce qu'il faut pour écrire une appli permettant de piloter un CS43x.

remark : les underscore "_" representent un ACK , les chapeaux "^" representent un NACK (typiquement en fin d'une sequence read ou en cas d'erreur mais il n'y en a pas :P )

1) **** POWER ON ***

<START 985ms> W @0_ 00_00_04_
<STOP count=4=3x1+1>

<START 1819ms> R @0_ 01^
<STOP count=2=3x0+2>

<START 1821ms> W @0_ [les 435 octets du code IBA vont ici]
STOP count=436=3x145+1>

<START 1822ms> R @0_ 02^
<STOP count=2=3x0+2>

<START 1822ms> W @0_ 00_00_05_
<STOP count=4=3x1+1>

<START 1822ms> W @0_ 09_00_17_
<STOP count=4=3x1+1>

<START 1838ms> R @0_ 89_00_17_ 05_F1_BF^
<STOP count=7=3x2+1>

<START 1839ms> W @0_ 80_02_52_ 00_FF_FF_ 80_01_52_ 01_00_00_
<STOP count=13=3x4+1>

<START 1840ms> W @0_ 80_02_7F_ BF_FF_FF_ 80_02_10_ 3F_BF_C0_ 80_01_10_ 80_00_20_
<STOP count=19=3x6+1>

<START 1842ms> W @0_ 8A_00_00_ 00_00_00_ 9C_00_00_ 00_00_01_ 8E_00_00_ 00_00_00_
<STOP count=19=3x6+1>

<START 1844ms> W @0_ 88_00_08_ 00_00_00_ 88_00_0A_ 00_00_00_ 88_00_0B_ 00_00_00_ 88_00_0C_ 7F_FF_FF_ 88_00_02_ 00_00_00_ 88_00_04_ 00_00_00_ 88_00_05_ 00_00_00_
<STOP count=43=3x14+1>

<START 1846ms> W @0_ 94_00_00_ 00_11_F1_ 94_00_01_ 7F_FF_FF_ 94_00_02_ 7F_FF_FF_ 94_00_03_ 7F_FF_FF_ 94_00_04_ 7F_FF_FF_ 94_00_05_ 7F_FF_FF_ 94_00_06_ 7F_FF_FF_ 94_00_07_ 00_00_00_ 94_00_08_ 00_00_00_ 94_00_09_ 00_00_00_ 94_00_0A_ 00_00_00_ 94_00_0B_ 00_00_00_ 94_00_0C_ 00_00_00_ 94_00_0D_ 00_00_00_ 94_00_0E_ 00_00_00_ 94_00_0F_ 00_00_00_ 94_00_10_ 00_00_00_ 94_00_11_ 0D_8E_F6_ 94_00_12_ 0D_8E_F6_ 94_00_13_ 0D_8E_F6_ 94_00_14_ 0D_8E_F6_ 94_00_15_ 0D_8E_F6_ 94_00_16_ 7F_FF_FF_
<STOP count=139=3x46+1>

<START 1848ms> W @0_ 94_00_11_ 2C_00_00_ 94_00_12_ 00_00_00_ 94_00_13_ 2C_00_00_ 94_00_14_ 00_00_00_ 94_00_15_ 00_00_00_ 94_00_16_ 00_00_00_
<STOP count=37=3x12+1>

<START 1850ms> W @0_ 88_00_00_ 00_90_11_
<STOP count=7=3x2+1>

<START 1852ms> R @0_ 87_00_00_ 80_00_23^
<STOP count=7=3x2+1>


2) *** SMALL SPEAKER ****

<START 1879ms> W @0_ 94_00_00_ 00_11_F1_ 94_00_01_ 7F_FF_FF_ 94_00_02_ 7F_FF_FF_ 94_00_03_ 7F_FF_FF_ 94_00_04_ 7F_FF_FF_ 94_00_05_ 7F_FF_FF_ 94_00_06_ 7F_FF_FF_ 94_00_07_ 00_00_00_ 94_00_08_ 00_00_00_ 94_00_09_ 00_00_00_ 94_00_0A_ 00_00_00_ 94_00_0B_ 00_00_00_ 94_00_0C_ 00_00_00_ 94_00_0D_ 00_00_00_ 94_00_0E_ 00_00_00_ 94_00_0F_ 00_00_00_ 94_00_10_ 00_00_00_ 94_00_11_ 0D_8E_F6_ 94_00_12_ 0D_8E_F6_ 94_00_13_ 0D_8E_F6_ 94_00_14_ 0D_8E_F6_ 94_00_15_ 0D_8E_F6_ 94_00_16_ 7F_FF_FF_
<STOP count=139=3x46+1>

<START 1882ms> W @0_ 94_00_11_ 2C_00_00_ 94_00_12_ 00_00_00_ 94_00_13_ 2C_00_00_ 94_00_14_ 00_00_00_ 94_00_15_ 00_00_00_ 94_00_16_ 00_00_00_
<STOP count=37=3x12+1>


3) *** LARGE SPEAKER ****

<START 1645ms> W @0_ 94_00_00_ 01_10_B1_ 94_00_01_ 7F_FF_FF_ 94_00_02_ 7F_FF_FF_ 94_00_03_ 7F_FF_FF_ 94_00_04_ 7F_FF_FF_ 94_00_05_ 7F_FF_FF_ 94_00_06_ 00_00_00_ 94_00_07_ 7F_FF_FF_ 94_00_08_ 00_00_00_ 94_00_09_ 7F_FF_FF_ 94_00_0A_ 00_00_00_ 94_00_0B_ 00_00_00_ 94_00_0C_ 00_00_00_ 94_00_0D_ 00_00_00_ 94_00_0E_ 00_00_00_ 94_00_0F_ 00_00_00_ 94_00_10_ 00_00_00_ 94_00_11_ 00_00_00_ 94_00_12_ 4C_3E_A7_ 94_00_13_ 00_00_00_ 94_00_14_ 4C_3E_A7_ 94_00_15_ 4C_3E_A7_ 94_00_16_ 7F_7F_7F_
<STOP count=139=3x46+1>

<START 1649ms> W @0_ 94_00_11_ 2C_00_00_ 94_00_12_ 00_00_00_ 94_00_13_ 2C_00_00_ 94_00_14_ 00_00_00_ 94_00_15_ 00_00_00_ 94_00_16_ 00_00_00_
<STOP count=37=3x12+1>


:zzzz:
maxidcx
Membre HCFR Contributeur
Membre HCFR Contributeur
 
Messages: 3103
Inscription Forum: 25 Avr 2007 10:50
  • offline

Message » 07 Jan 2012 18:36

Chapeau bas maxidcx, beau boulot :thks:
Effectivement les codes correspondent bien au datasheet AN163:

<START 985ms> W @0_ 00_00_04_
<STOP count=4=3x1+1>
<START 1819ms> R @0_ 01^
<STOP count=2=3x0+2>
<START 1821ms> W @0_ [les 435 octets du code IBA vont ici]
STOP count=436=3x145+1>
<START 1822ms> R @0_ 02^
<STOP count=2=3x0+2>
<START 1822ms> W @0_ 00_00_05_
<STOP count=4=3x1+1>


HOST envoie DOWNLOAD_BOOT
DSP renvoie BOOT_START
HOST envoie le code IBA
DSP renvoie BOOT_SUCCESS
HOST envoie BOOT_SUCCESS_RECEIVED

Le reste est une configuration du DSP.
Voilà une bonne base pour la structure du programme :thks:
NETeagle2k
 
Messages: 281
Inscription Forum: 20 Avr 2005 19:38
  • offline


Retourner vers Kits & Tweaks et WIY