Forum: Mikrocontroller und Digitale Elektronik Anfänger braucht Hilfe beim Schaltplan


von Sebastian S. (sebastian_s)


Lesenswert?

Hallo zusammen,

wie im Titel schon steht bin ich blutiger Anfänger und bräuchte daher 
kurz eure Hilfe. Ich habe bereits ein Android IOIO Board 
http://www.sparkfun.com/products/10748, welches ich nun mit einem 
zweiten Board (FM Radio Chip) 
http://www.watterott.com/de/Breakout-Board-mit-Si4703-FM-Empfaenger per 
TWI (I2C) zusammenhängen möchte.

Die Stromversorgung der beiden Boards ist mir eigentlich klar, nur bei 
der Verbindung der Boards per I2C bin ich mir nicht sicher. Und zwar 
steht in der Dokumentation des IOIO Boards, dass die I2C Anschlüsse mit 
einem Pull-Up-Wiederstand versehen werden müssen und im open-drain-mode 
(?) laufen. Auf dem Schaltplan des FM Radio Boards 
(http://www.sparkfun.com/datasheets/BreakoutBoards/Si470x-Eval-v11.pdf) 
sind aber schon Pull-Up-Wiederstände eingebaut (sehe ich das richtig?) 
und daher meine Frage: kann ich die Eingänge SDIO und SCLK jeweils 
einfach mit einem Kabel mit dem IOIO Board verbinden und es 
funktioniert?

Um den FM Chip richtig zu initialisieren, muss anscheinend auch noch RST 
kontrolliert werden, wie kann ich das mit meinem IOIO Board hinbekommen?

Code für das FM Breakout Board für ein Arduino Board (also nicht 
meines):
1
//To get the Si4703 inito 2-wire mode, SEN needs to be high and SDIO needs to be low after a reset
2
//The breakout board has SEN pulled high, but also has SDIO pulled high. Therefore, after a normal power up
3
//The Si4703 will be in an unknown state. RST must be controlled
4
void Si4703_Breakout::si4703_init() 
5
{
6
  pinMode(_resetPin, OUTPUT);
7
  pinMode(_sdioPin, OUTPUT); //SDIO is connected to A4 for I2C
8
  digitalWrite(_sdioPin, LOW); //A low SDIO indicates a 2-wire interface
9
  digitalWrite(_resetPin, LOW); //Put Si4703 into reset
10
  delay(1); //Some delays while we allow pins to settle
11
  digitalWrite(_resetPin, HIGH); //Bring Si4703 out of reset with SDIO set to low and SEN pulled high with on-board resistor
12
  delay(1); //Allow Si4703 to come out of reset

Ich danke schon mal im voraus für eure Hilfe!

von MaWin (Gast)


Lesenswert?

> kann ich die Eingänge SDIO und SCLK jeweils
> einfach mit einem Kabel mit dem IOIO Board verbinden

Ja.

> und es funktioniert?

wenn du den Code funktionsgleich umsetzt,
aber das ist doch nur programmieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.