test żyra ITG3205

FC oparte na Arduino

Moderatorzy: moderatorzy2014, moderatorzy

kuncfot
Posty: 5
Rejestracja: wtorek 10 sty 2012, 12:19
Lokalizacja: warszawa

test żyra ITG3205

Post autor: kuncfot »

Witam wszystkich, to mój pierwszy post na tym forum.
Lecz, nie jest to pierwszy raz kiedy tu zaglądam. Przewertowałem wątek o budowie taniego quadro koptera, postanowiłem nie zaśmiecać długiego już wątku moim dziwnym problemem.

Otóż zmajstrowałem płytkę (mojej produkcji) z atmega168, na wyjściach SDA, SCL podpiąłem wycięte żyro z WM+ (ITG3205) żyro zasilam z 3,3v konwertuje napięcie z procka także na 3,3V lecz nie otrzymuję komunikatów od tego żyra.
Jak można zweryfikować czy podczas lutowania nie uszkodziłem przypadkiem tego scalaka?
(mam dostęp do oscyloskopu)
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

W kodzie Multiwii zablokowałeś wewnętrzne pullupy Arduino? no i podciągnąłeś do 3.3 szynę I²C ? no i oczywiście dałeś definicję w kodzie dla żyrka ITG3200?
W dataszicie od ITG3200 znajdziesz na których nóżkach masz analogowe wyjścia - możesz obadać oscyloskopem...
infekcja FPV postępuje w zastraszającym tempie...
kuncfot
Posty: 5
Rejestracja: wtorek 10 sty 2012, 12:19
Lokalizacja: warszawa

Post autor: kuncfot »

z nóżek atmegi mam wyjścia na konwerter oparty o znany ze sparkfina na mosfetach bss138

tam zarówno na wejściu 5V jak i 3,3V jest rezystor podciągający do zasilania więc pull upy wewnętrzne powinny być wyłączone

nie działała komunikacja z softem wiicoptera więc (wszystkie opisane przez Ciebie rzeczy zrobiłem)

uprosciłem kod do minimum

oczekuję na potwierdzenie na 9 takcie od żyra ACK po wysłaniu 8 bitów (led powinien mi migać cały czas)

Kod: Zaznacz cały


const int SDA=A4;
const int SCL=A5;
void setup()
{

  pinMode(13, OUTPUT); 
  //SDA A4 
  //SCL A5
  pinMode(SCL,OUTPUT);
   pinMode(SDA,OUTPUT);
}

void cyk(int i)
{
  if(i<1)
  {
    if(i==1)
    {
      digitalWrite(SDA,HIGH);
    }else
    {
      digitalWrite(SDA,LOW);
    }
    delay(10);
  }
  digitalWrite(SCL,HIGH);
  delay(100);
  digitalWrite(SCL,LOW);
  delay(100);
  
}


void loop()
{

  digitalWrite(SCL,HIGH);
  digitalWrite(SDA,HIGH);
  digitalWrite(13, HIGH);   // set the LED on
  delay(200);
  
  digitalWrite(SDA,LOW); //Start
  digitalWrite(13, LOW);
  delay(20);
  digitalWrite(SCL,LOW);
   
  cyk(1); //1 adr
  cyk(1);
  cyk(0);
  cyk(1);
  cyk(0);
  cyk(0);
  cyk(0);//7 adr koniec
  cyk(1);//8 
  digitalWrite(13,HIGH);
  digitalWrite(SDA,HIGH);
  delay(10);
  pinMode(SDA,INPUT);
  while(digitalRead(SDA)==HIGH){} //czeka na ack
  pinMode(SDA,OUTPUT);
  digitalWrite(13,LOW);
  cyk(2);//9
  
  digitalWrite(SDA,LOW);
  delay(20);
    digitalWrite(SCL,HIGH);//stop
    delay(20);
   digitalWrite(SDA,HIGH); 
      digitalWrite(13, LOW);    // set the LED off
  delay(5000);              // wait for a second

}
czy można jakoś zweryfikować sam scalak? może mam jakiś pechowy zimny lut, lub poprostu zwalone samo żyro

boję się go wylutowywać bo już nigdy go nie wlutuję..

w datasheecie ITG3205 nie widzę żadnych analogowych wyjść żyra

ps
Rurek Ty produkowałeś szildy do kopterów i widziałem wlutowane na gotowo takie scalaczki, masz jakiś dostęp do takiego sprzetu (tak z ciekawości) można to komuś zlecić?
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

kuncfot pisze:....

ps
Rurek Ty produkowałeś szildy do kopterów i widziałem wlutowane na gotowo takie scalaczki, masz jakiś dostęp do takiego sprzetu (tak z ciekawości) można to komuś zlecić?
u mnie na szildzie są całe WMP oraz NK, sensory nie wylutowywane.
Czekaj, no gdzieś mi się obiło,,, chyba Cholo pokazywał skąd pobrać analogowy sygnał ...aaa...aaale to rzeczywiście może było na płytce WMP i tam w procku DAC robił analoga...chyba jednak tak to było.
infekcja FPV postępuje w zastraszającym tempie...
Awatar użytkownika
slawko_k
Posty: 1596
Rejestracja: niedziela 28 lut 2010, 14:24
Lokalizacja: podkarpackie

Post autor: slawko_k »

kuncfot,
takiej obslugi i2c to jeszcze nie widziałem.
Zrób to jak przykazali i powinno działać.
wgraj soft MWC do procka i zobaczysz czy ci zyro odpowie na 100% pewnym sofcie.
kuncfot
Posty: 5
Rejestracja: wtorek 10 sty 2012, 12:19
Lokalizacja: warszawa

Post autor: kuncfot »

wgraj soft MWC do procka i zobaczysz czy ci zyro odpowie na 100% pewnym sofcie.
sęk w tym że nie odpowiada... :(

Może ma ktoś na sprzedaż sprawdzone żyro + ew akcelerometr w cenie zbliżonej do tych z ebaya :)
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

Ja mam ale w cenie ciut wyższej niż ebay - wiesz - logistyka, testowanie, lutowanie....no i po pierwsze - SPRAWDZONE i latające u wielu kolegów.
infekcja FPV postępuje w zastraszającym tempie...
ODPOWIEDZ