akcelerometr ADXL362 - pomoc!
Ondřej Janovský
ondrej.janovsky na alarex.cz
Středa Září 3 14:51:04 CEST 2014
Děkuji za odpověď. Ještě dotaz, chápu to tak, že když akcelerometr
připojím na napájení a zkusím načíst jeden jeho registr, tak mi odpoví.
Nebo ho musím nějak inicializovat, aby se se mnou bavil?
Dělá to na mne dojem, že jsem chytil asi vadný kus :(
Dne 3.9.2014 v 14:34 Fanda Kopriva napsal(a):
> jeste
>
> unsigned short SPIout (unsigned int spiznak)
> {
> unsigned int timout;
> SPI2_DR = spiznak;
> timout = 0;
> while ((!(SPI2_SR & 0x1)) && (timout<1000)) {timout++;};
> if (timout>998) Serror |= 4;
> return SPI2_DR;
> }
>
>
>
>
>
> Dne 3.9.2014 14:32, Fanda Kopriva napsal(a):
>> Dne 3.9.2014 14:13, Ondřej Janovský napsal(a):
>>> Zdravím,
>>>
>>> snažím se rozchodit ADXL362 (BREAKOUT) viz.
>>> http://www.farnell.com/datasheets/1683423.pdf
>>> Komunikuji přes SPI, ale odpovědi se nedočkám. Zkusil jsem už různá
>>> časování, na log. analyzátoru vidím krásně vysílání mastera, ale
>>> odpověď nikde :(
>>>
>>> Nemáte s tímto ADXL zkušenosti?
>>>
>>> Díky Oja
>>>
>>>
>>> _______________________________________________
>>> HW-list mailing list - sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>
>> dobry den
>> tady jsem neco vyzobl z programu ,je to pro STM32L162.
>> funguje to bez problemu.
>>
>> zapojeni nozicek 1 a 14 na 3V
>> 12,13,16 gnd
>> 11 vystup int
>> 4 sclk
>> 6 mosi
>> 7 miso
>> 8 cs
>>
>>
>> inicializace
>> GMETRtract = 150;GMETRtiact = 3;GMETRtrinact =
>> 100;GMETRtiinact = 30;GMETRcr = 0x13;
>> GPIOB_BSRR =GMCSB<<16; // zapis 0xa adr data cteni 0xb
>> adr data
>> SPIout(0xa);SPIout(0x20);
>> SPIout(GMETRtract);SPIout(GMETRtract>>8);SPIout(GMETRtiact);
>> //treshold-time activity
>> SPIout(GMETRtrinact);SPIout(GMETRtrinact>>8);SPIout(GMETRtiinact);SPIout(GMETRtiinact>>8);
>> //inactivyty
>> GMETRcr = 0x3f;SPIout(GMETRcr); //27 loop mode referenc
>> SPIout(0x0);SPIout(0x0); //28 fifo dis
>> SPIout(0x40);SPIout(0x0); //2a 2b activity
>> interrupt na INT1 a INT2
>> SPIout(0x13); //2c filter 110hz
>> SPIout(0x2); //2d merici mod
>> GPIOB_BSRR =GMCSB;
>> SPIrezim = 0;
>>
>>
>> cteni hodnot
>> GPIOB_BSRR =GMCSB<<16;
>> SPIout(0xb);SPIout(0xb);
>> GMETRs = SPIout(0);
>> GPIOB_BSRR =GMCSB;
>> GMETRs = SPI2_DR; //status
>> GPIOB_BSRR =GMCSB<<16;
>> SPIout(0xb);SPIout(0xe);
>> GMETRx = SPIout(0) ;GMETRx = GMETRx + (SPIout(0)<<8);
>> GMETRy = SPIout(0) ;GMETRy = GMETRy + (SPIout(0)<<8);
>> GMETRz = SPIout(0) ;GMETRz = GMETRz + (SPIout(0)<<8);
>> GPIOB_BSRR =GMCSB; //gmetry
>> SPIrezim = 0;
>> if (GMETRx<GMETRxi) GMETRxi=GMETRx;
>> if (GMETRy<GMETRyi) GMETRyi=GMETRy;
>> if (GMETRz<GMETRzi) GMETRzi=GMETRz;
>> if (GMETRx>GMETRxa) GMETRxa=GMETRx;
>> if (GMETRy>GMETRya) GMETRya=GMETRy;
>> if (GMETRz>GMETRza) GMETRza=GMETRz;
>> if (GMETRval) {
>> GMETRMAX = 0;GMETRpom = GMETRxa - GMETRxi;if
>> (GMETRpom>GMETRMAX) GMETRMAX = GMETRpom;
>> GMETRpom = GMETRya - GMETRyi;if (GMETRpom>GMETRMAX)
>> GMETRMAX = GMETRpom;
>> GMETRpom = GMETRza - GMETRzi;if (GMETRpom>GMETRMAX)
>> GMETRMAX = GMETRpom;
>> GMETRxi=30000;GMETRyi=30000;GMETRzi=30000;GMETRxa=-30000;GMETRya=-30000;GMETRza=-30000;
>>
>> GMETRval = 0;
>>
>> Fanda
>>
>>
>>
>>
>> _______________________________________________
>> HW-list mailing list - sponsored bywww.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
--
*Ondřej Janovský
Alarex-Group s.r.o.
*
mobil: +420 723 616 751
em na il: ondrej.janovsky na alarex.cz
www.m2marchitect.cz <http://www.m2marchitect.cz>
www.alarex.cz <http://www.alarex.cz>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20140903/82952641/attachment.html>
Další informace o konferenci Hw-list