www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

XMega16D4 težave z AD-jem, težave na splošno itd....

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Sob Mar 30, 2013 6:45 pm    Naslov sporočila:  XMega16D4 težave z AD-jem, težave na splošno itd.... Odgovori s citatom

No že nekaj časa raziskujem zgoraj omenjen mikrokontroler. No v multiplex-u sem pognal 4 mestni led displej. Uporabil RTC. Zraven displeja dal še tipke. Končni "testni projekt" digitalna ura. Tukaj ni bilo kakih zelo velikih problemov. Razen dokumentacije, ki niti slučajno ni primerna za programiranje v assemblerju. V kakem višjenivojskem jeziku pa bo še manj razumljiva. Problem je pred vsem v imenih registrov. Če ne bi gledal v INC datoteko ni varjante, da bi kaj spravil skupaj. No sedaj sem prišel do ADC-ja. Gledam - super referenčna napetost za AD notranja 1.00V ad 12 oz. 8 bit. Ni kaj... spišem testno aplikacijo - displej v mutiplexu še imam na testni. Na AD vhod dam en trimer. AD sicer deluje. Prikaz pa je daleč od stabilnega. Vključim 8 bitno konverzijo. Če dam vhod na maso prikaz skače še vedno med 5-10 (v 8 bitnem režimu) Brick wall

Koda:
Inicializacija AD:

   ldi tmp,0b0000_0100            
   sts ADCA_CTRLB,tmp            ;8bitna meritev desna poravnava
;   ldi tmp,0b0000_0011
;   sts ADCA_REFCTRL,tmp         ; prevzeto po resetu AD referencna napetost(1V)
   ldi tmp,0b0000_0101
   sts ADCA_PRESCALER,tmp         ;preddelilnik 1/128

   ldi tmp, 0b0000_0001            ;vklop meritve AD na pinu, enojna pozitivna meritev
   sts ADCA_CH0_CTRL,tmp
   ldi tmp,0b0000_1000
   sts ADCA_CH0_MUXCTRL,tmp      ;izbira kanala (1)
   ldi tmp,0b0000_0001
   sts ADCA_CH0_INTCTRL,tmp      ;vklop ADC prekinitve
   ldi tmp,0b0000_0101         ;
   sts ADCA_CTRLA,tmp            ;vklop ADC,start


Nič se ne spremeni pri povečanju časa konverzijskega časa. Med meritvami je tudi dolga pavza. Nekoliko se stabilnost poveča pri referenčni napetosti VCC/1.6.
Sumil sem tudi napajanje tesnte plate iz programatorja. Napajanje s fiksnega stabilnega vira ni spremenilo situacije. Moti me tudi nihanje Bandgap notranje napetosti, ki jo prav tako lahko čitam. Pri referenčni napetosti VCC/1.6. je 8 biten rezutat v mejah 149-147.

Vprašanje. Je kdo delal z AD-jem omenjenega mikorkontrolerja? Je inicializacija vredo? Mikrokontrolerji niso kitajski. Kupljeni so pri farnellu. V nadaljavenju bom poskusil še zunanjo referenco.

_________________
lp
Silvo


Nazadnje urejal/a Silvo Sre Jun 12, 2013 4:09 pm; skupaj popravljeno 1 krat
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Ned Mar 31, 2013 1:21 pm    Naslov sporočila:   Odgovori s citatom

No odgovarjam samemu sebi, morda bo komu prišlo prav.

Da AD "ne gre" na 0 je "normalno" vsaj koliko sem zasledil v datashetu. "0" je dejansko ΔV ~= 0.05*Vref kar je razvidno na printscreenu. Več v PDF-ju v prilogi.

Težave s stablnostjo ADC so očitno znane. Tole sem našel na spletu.
Imam občutek, da je tale xmega nekoliko zgrešen projekt? Glede na to, da ne gre ravno za nov čip, bi na spletu pričakoval kaj več( dokumentacije, projektov, kode...)
a ne najdeš praktično nič. No ima nekaj stvari, ki so zanimive. (kalibrirani interni oscilatorji max 32Mhz z praktično neomejeno možnostjo deljenja frekvence, virtualni porti...)

No teh par kom, ki sem jih kupil bom sigurno porabil. Naprej pa bom vide.... Boo hoo!



adc_xmega.pdf
 Opis:

Download
 Ime datoteke:  adc_xmega.pdf
 Velikost datoteke:  349.62 KB
 Downloadano:  5 krat


_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mucek
Član
Član



Pridružen-a: Tor 01 Avg 2006 10:47
Prispevkov: 5327
Aktiv.: 24.78
Kraj: Domzale

PrispevekObjavljeno: Ned Mar 31, 2013 1:37 pm    Naslov sporočila:   Odgovori s citatom

Hja, načeloma na papirju sploh niso slabe ...
Samo ko cenovno primerjaš s kakšnimi (po resourcih primerljivimi) ARMi, te pa malo glava zaboli. Delal z xmego še nisem (razen malo igračkanja z Xplain boardom), tako da težko komentiram.

Lp, g

_________________
...lahko pa se tudi motim ...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Ned Mar 31, 2013 8:48 pm    Naslov sporočila:   Odgovori s citatom

No še nekaj ugotovitev testov....
Spisal sem proceduro, ki računa povpreček večjih meritev. (256) Pri referenčni napetosti Vcc/1.6 sem dosegel kar zadovoljive rezultate. Pri resoluciji 11bit sem dosegel zadovoljivo stabilnost (1 max 2 bita) Pri resoluciji 12bit pa (1-3 max) Pri interni referenci 1.00V je stabilnost precej slabša do 3 bite pri 11bitni resoluciji, ter do 4 pri 12 bitni. Vse skupaj je sicer na testni plošči napajano iz programatorja. Morebiti bi dosegel še boljše rezultate s pravilno konstruiranim tiskanim vezjem, ter dobro izvedbo napajanja. Vseeno se mi zdi, da je interna referenca 1.00V prenizka za zanesljivo 12bitno meritev. Ja pa zadovoljiva, ter stabilna v koliko zadostuje 8 bitni rezultat.

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Pon Apr 01, 2013 12:38 pm    Naslov sporočila:   Odgovori s citatom

Še posnetek testiranja.

Testni hardware:

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
.
Neznanec
Neznanec



Pridružen-a: Pet 01 Okt 2004 1:17
Prispevkov: 1
Aktiv.: 0.00

PrispevekObjavljeno: Pon Apr 01, 2013 1:16 pm    Naslov sporočila:   Odgovori s citatom

Brisana vsebina odstranjenega uporabnika.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Pon Apr 01, 2013 1:32 pm    Naslov sporočila:   Odgovori s citatom

Tole sem naredil na hitro z namenom splošnega testiranja. Vem, da je hardware daleč od idealnega. To sem napisal tudi zgoraj. Kondezatorji 100n so. Sicer keramika na vrhu. Celo dva. Napajanje sem testiral iz čistega enosmernega vira - baterije. Tudi če AD deluje res zanesljivo z 1.00V notranjo referenco. bo zelo tečko doseči ustezne pogoje zunaj mikrokontrolerja. Konec koncev znaša 1 enota AD-ja nekaj čez 2mV!
Sem pa prišel do enakega zaključka. Bolje uporabit ali višjo notranjo ali še bolje zunanjo referenčno napetost, v koliko so zahteve za 12bit-no AD konverzijo.

PS
A običajni LCD s kontrolerjem HD44780 delajo na 3.3V?

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
.
Neznanec
Neznanec



Pridružen-a: Pet 01 Okt 2004 1:17
Prispevkov: 1
Aktiv.: 0.00

PrispevekObjavljeno: Pon Apr 01, 2013 2:13 pm    Naslov sporočila:   Odgovori s citatom

Brisana vsebina odstranjenega uporabnika.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Pon Apr 01, 2013 2:17 pm    Naslov sporočila:   Odgovori s citatom

Kroko je napisal/a:
LDC lahko napajaš s 5V in krmiliš s 3.3V


Hvala,
Bom probal, ko pride LCD na vrsto Wink.

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Čet Apr 11, 2013 7:55 pm    Naslov sporočila:   Odgovori s citatom

No xmega preživela tudi "šok test" Shocked Testno ploščo sem selil z enega računalnika na drugega. Pri tem pa sem na drugem računalniku programator pozabil prestavit na 3.3V. Tako je bil mikrokontroler priključen kake dve uri na 5V. Poganjal je 4mestni LED displej v multiplexu, ki je bil prav tako prilagojen za 3.3V. (68 Omega upori v segmente) Posvetilo se mi je šele, ko sem hotel programirat pa nisem imel izbranega pravega mikrokontrolerja. No programirat nisem poskusil s 5V. Ostalo je mikrokontroler preživel. Nisem zaznal niti segrevanja.
_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Sre Jun 12, 2013 4:07 pm    Naslov sporočila:   Odgovori s citatom

Vse bolj se mi dozdeva, da je tale XMEGA malo zgrešen projekt. No želel sem narediti nekaj s RFM70. XMega bi mi ustrezala ravno zaradi 3.5V napajanja. Imam je še tudi kar nekaj kosov.

Ne vem a nima prave dokumentacije oz. ne najdem. Sploh nimam pojma kateri pini so SPI. Imam dva datasheta.

Evo vse kar piše za SPI (copy-paste)
23. SPI – Serial Peripheral Interface
23.1 Features
• Two Identical SPI peripherals
• Full-duplex, three-wire synchronous data transfer
• Master or slave operation
• Lsb first or msb first data transfer
• Eight programmable bit rates
• Interrupt flag at the end of transmission
• Write collision flag to indicate data collision
• Wake up from idle sleep mode
• Double speed master mode
23.2 Overview
The Serial Peripheral Interface (SPI) is a high-speed synchronous data transfer interface using three or four pins. It
allows fast communication between an Atmel AVR XMEGA device and peripheral devices or between several
microcontrollers. The SPI supports full-duplex communication.
A device connected to the bus must act as a master or slave. The master initiates and controls all data transactions.
PORTC and PORTD each has one SPI. Notation of these peripherals are SPIC and SPID.


Tole je iz datasheta "Atmel-8387-8-and16-bit-AVR-Microcontroller-XMEGA-A4U_Datasheet.pdf" - 345 strani

Nekaj več je v datashetu Atmel-8210-8-and-16-bit-AVR-Microcontrollers-XMEGA-D_Manual.pdf kjer so delno opisani registri. Pri programiranju sem si pomagal še z ini datoteko kajti vsaka periferija zase ima ista imena registrov v datashetu. Recimo CTRL kot kontrolni register najdeš povsod. Potem je CLK_CTRL // Control Register CLK - Clock System, SLEEP_CTRL SLEEP Control Register OSC_CTRL OSC - Oscillator Control....

Skratka dokumentacija, ki sem jo uspel najti, ter jo imam je 0 od 0 Twisted Evil

Recimo ko sem delal z AD-ji sem ad vklopil ter iskal kateri pin je ...

Ima me, da bi vse xmege, ki jih še imam zabrisal v kanto.

Pinout:



PS
A sploh kdo na forumu dela z njimi?

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
elektronik1982
Član
Član



Pridružen-a: Pet 18 Maj 2012 5:53
Prispevkov: 101
Aktiv.: 0.70
Kraj: Maribor

PrispevekObjavljeno: Sre Jun 12, 2013 7:33 pm    Naslov sporočila:   Odgovori s citatom

Uporabljamo 128 in 256D3. V datasheetu poskusi iskati pod Alternate PIN functions, tam je napisano kateri pin je kateri signal. Tudi sami smo imeli probleme z AD pretvorbo, ampak je v errati napisano, da unsigned pretvorba ne deluje normalno, zato smo priceli uporabljati signed in sedaj deluje dobro.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14551
Aktiv.: 65.53
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Sre Jun 12, 2013 9:01 pm    Naslov sporočila:   Odgovori s citatom

elektronik1982 je napisal/a:
V datasheetu poskusi iskati pod Alternate PIN functions, tam je napisano kateri pin je kateri signal. ....


Hvala, res sem našel, in to v datashetu "Atmel-8135-8-and-16-bit-AVR-microcontroller-ATxmega16D4-32D4-64D4-128D4_datasheet" Škoda, da so dokumentacijo tako razdrobili. Gre sicer za zanimivo serijo mikrokontrolerja, a bojim se, da bo tukaj kak začetnik obupal. (vsaj pri taki dokumentaciji)

No, SPI pa je že tudi živ. Whistle

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
dragoon
Član
Član



Pridružen-a: Čet 03 Maj 2007 21:51
Prispevkov: 452
Aktiv.: 2.20
Kraj: Trojane

PrispevekObjavljeno: Ned Dec 24, 2017 9:48 pm    Naslov sporočila:   Odgovori s citatom

Nekaj me muči ADC na Xmega16A4
GCC, Atmel studio 7
Koda:


   ADCA.CTRLA = 0x01 ;
   ADCA.CTRLB = 0x04;
   ADCA.REFCTRL = 0x10;
   ADCA.EVCTRL = 0 ;
   ADCA.PRESCALER = 0x04 ;
   ADCA.CH0.INTCTRL = 0x00 ;
   ADCA.CH0.CTRL =0x01;

uint16_t ReadADC(uint8_t Channel){
   ADCA.CH0.MUXCTRL = (Channel<<3);
   ADCA.CTRLA |= 0x04; // Start conversion
   while (ADCA.INTFLAGS==0)  // Wait for complete
   return ADCA.CH0.RESL;
}



Read_ADC(ch); mi vedno vrne 0, pa nikakor ne pogruntam kaj je narobe.


edit:
po parih urah googlanja najdem rešitev:
Koda:
PR.PRPA = 0x05; // POWER ON ADC

_________________
LP, Mitja
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 48 dni


Powered by phpBB © 2001, 2005 phpBB Group