Tema: Re: Amega168 ir ADC
Autorius: svk
Data: 2011-07-14 16:36:01
O kas yra pull'up'ai žmoniška kalba?


7/13/11 7:44 PM, Kantega rašė:
> Sveiki,
>
> pagelbėkit su megos ADC, jau antrą dieną nesugebu jo paleisti cikle..
> ADC sukonfiginau vienetinio keitimo režime, ADC5 kanalas, su pertraukimais.
> Problema - ADC "suveikia" tik vieną kartą, po to į įtampos pokyčius ant pino nereaguoja, visą laiką nusiskaito tas pats rezultatas.
> Jeigu tą patį piną nuskaityti skaitmeniniame režime, tai jis gražiai vartosi ir su pull´up´u ir be jo.
> Pinas kaba laisvas, su pincetu arba įžeminu, arba į pliusą; skaitmeniniame režime suveikia o ADC režime - ne...
> kodas toks:
>
>   ADC5_DDR = 0; //configure ADC5 as input
>   ADC5 = 0;
>   ADMUX=0x45 ; //0100.0101 - Vcc ref, ADC5
>   DIDR0 = 0x20; // isj. skaitmenine dali
>   ADCSRA =0x8E; //1000.1110/ int e,nable div. factor 64
>
>
>   while(1){
>    WriteByteToDOG(0x01, DOG_CMD); //clrscr
>    ADCSRA |= _BV(ADSC); //start conversion
>   while (!F_ADCIRQ);
>   F_ADCIRQ = 0;
>   ADCResult = (ADCH<<8)|ADCL;
>   //ADCResult = ADC5_PIN; cia nuskaitymas skaitmeniame rezime, veikia
>   WriteShortToDisplay(ADCResult);
>   ADCResult = 0;
>   _delay_ms(1000);
>   LED1 = !LED1;
>   }//while 1
> }// main
>
> pertraukimas labai paprastas sprendžiant pagal LED mirksėjimą, jis vyksta:
> ISR (ADC_vect){
>   //ADCSRA |= 0x10;
>   F_ADCIRQ = 1;
>   LED=!LED;
> }
> Displėjaus duomenys pajungti per žemesnyjį PORTC ketvertuką, todėl išvedimo funkcijos daro tokias operacijas:
>
> duomenų išvedimui į displėjų:
>   DDRC|=0x0F; //cause direction is changed to read data
>   PORTC = (PORTC&  0xF0) | (BitsToSend&  0x0F); //do not touch upper niblle of portc
>
> displėjaus statuso nuskaitymui:
>   DDRC&= 0xF0; // PC0..PC3 - input
>   _delay_us(10);
>   ...
> ...
>   status=PINC;
>
>
> būčiau dėkingas už bet kokią pagalbą...

3Dastronomyagricultureaudioautosautos.audiautos.audioautos.binariesautos.bmwautos.clubautos.fordautos.hondacrxautos.japanautos.mercedesautos.opelautos.sportautos.volvoautos.vwaviaavia.binariesbankcardsbinariesbooksbuildingcinemacommercecomp.hardwarecomp.softwarecomp.lietuvinimascomp.networksculturedarbas.ieskaudarbas.siulaudesigneconomicselectronicsfaunafauna.aquafauna.binariesfishingflorafotofoto.binariesgamesgames.csgames.onlinegsmgurmanaihumourhumour.binariesinternetlawmicrosoftmotomusicmusic.binariesmusic.instrumentsmusic.LT.binariesnavigacijaphppoliticsprogrammingrpgsportstudyingsveikatatalktesttranslationtransportationtraveltravel.binariestvunixvideovideo.binarieswatersportswwwwww.flashpdaautos.supermama.ltmobiledarbasretro.3Dretro.agricultureretro.astronomyretro.audioretro.autosretro.autos.audiretro.autos.audioretro.autos.binariesretro.autos.bmwretro.autos.clubretro.autos.fordretro.autos.hondacrxretro.autos.japanretro.autos.mercedesretro.autos.opelretro.autos.sportretro.autos.supermamaretro.autos.supermama.ltretro.autos.volvoretro.autos.vwretro.aviaretro.avia.binariesretro.bankcardsretro.beosretro.binariesretro.booksretro.buildingretro.cinemaretro.commerceretro.compretro.comp.hardwareretro.comp.lietuvinimasretro.comp.networksretro.comp.softwareretro.cultureretro.darbasretro.darbas.ieskauretro.darbas.siulauretro.designretro.economicsretro.electronicsretro.e-vejasretro.faunaretro.fauna.aquaretro.fauna.binariesretro.fishingretro.floraretro.fotoretro.foto.binariesretro.gamesretro.games.csretro.games.onlineretro.games.rpgretro.genealogijaretro.gsmretro.gurmanairetro.humourretro.humour.binariesretro.internetretro.YZFretro.YZF.nebukretro.YZF.nebuk.netikintisretro.YZF.nebuk.netikintis.bukretro.YZF.nebuk.netikintis.buk.tikintisretro.lawretro.microsoftretro.mobileretro.motoretro.musicretro.music.binariesretro.music.instrumentsretro.music.LTretro.music.LT.binariesretro.navigacijaretro.newsretro.news.taisyklesretro.newuserretro.pdaretro.phpretro.politicsretro.programmingretro.rpgretro.sportretro.studyingretro.sveikataretro.talkretro.translationretro.transportationretro.travelretro.travel.binariesretro.tvretro.unixretro.videoretro.video.binariesretro.watersportsretro.wwwretro.www.flashdiylt.rkm.news.announcelt.rkm.news.newuser