Elektronika.lt
 2025 m. gruodžio 25 d. Projektas | Reklama | Žinokite | Klausimai | Prisidėkite | Atsiliepimai | Kontaktai
Paieška portale
EN Facebook RSS

 Kas naujo  Katalogas  Parduotuvės  Forumas  Tinklaraščiai
 Pirmas puslapisSąrašas
 Forumas / + pokalbiai
 - Paieška forume
 - D.U.K. / Forumo taisyklės
 - Narių sąrašas
 - Registruotis
 - Prisijungti

Elektronika.lt portalo forumas

Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo. Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.

Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius, kurie nesilaiko forumo taisyklių. Pastebėjus nusižengimus, prašome pranešti.

Dabar yra 2025 12 25, 06:33. Visos datos yra GMT + 2 valandos.
 Forumas » Mikrovaldikliai » Mygtuko paspaudimu delsimo trukmes keitimas
Jūs negalite rašyti naujų pranešimų į šį forumą
Jūs negalite atsakinėti į pranešimus šiame forume
Jūs negalite redaguoti savo pranešimų šiame forume
Jūs negalite ištrinti savo pranešimų šiame forume
Jūs negalite dalyvauti apklausose šiame forume
 
  
Puslapis 23
Pereiti prie Atgal  1, 2, 3  Toliau
Pradėti naują temą  Atsakyti į pranešimą Rodyti ankstesnį pranešimą :: Rodyti kitą pranešimą 
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 13:05 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Kas blogai su tuo išėjimu? Taip jungiu gi: .

Jūsų kodas rodo 0 ir viskas Very Happy
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 13:36 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Kodas:
#include <avr/io.h>
#include <util/delay.h>
unsigned char a[10]= {18, 250, 84, 112, 184, 49, 17, 122, 16, 48};
volatile unsigned char sk;

int main(int sk)
  {
        DDRD=0xFF;
   DDRC=0x00;
      PORTC=0xFF;
        sk=0;
        while(1){
           if(!(PINC&1) || sk == 9){ //tikrina ar nepaspaustas mygtukas ir/ar nepasiekta sk9
             sk=0;
              }
          else {
             sk++;
             }                                       
   PORTD=a[(sk)];
   _delay_ms(1000);
        }
 }   


Nu turi suktis tik čia jis automatiškai nusinulins jei bus 9 ir jei bus paspasustas mygtukas. Aš prieš tai nemačiau, kad padaryta PORTC kaip išėjimas.
Pasiskaityk čia labai pora sakinių viskas aprašyta

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 14:11 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Kodas:
#include <avr/io.h>
#include <util/delay.h>

unsigned char a[10]= {18, 250, 84, 112, 184, 49, 17, 122, 16, 48};
volatile unsigned char sk;

int main(void){
DDRD=255;
DDRB=0;
PORTB=255;

sk=0;

while(1){
   if (sk<9){
      sk++;
   }
   else if(sk=9){
      sk=9;
   }
    else{
   sk=0;
   }
 PORTD=a[(sk)];
 _delay_ms(1000);
   }
   if(!(PINB&255)){
   sk=0;
   }
 return 0;
            };
Pakeičiau ant B kojų nes gal C jau nupuvusios (nutrumpintos Very Happy). Tas pats net nereaguoja. Pamatuoju mygtuką, kai išjungtas 5v rodo, kai įjungtas 0v. Kažkaip atvirkščiai... Taip turi būti?
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 14:29 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Ugniues rašo:
Pakeičiau ant B kojų nes gal C jau nupuvusios (nutrumpintos Very Happy). Tas pats net nereaguoja. Pamatuoju mygtuką, kai išjungtas 5v rodo, kai įjungtas 0v. Kažkaip atvirkščiai... Taip turi būti?


aš nesuprantu ką tu čia makaloji su tuo kodu.

Kodas:
#include <avr/io.h>
#include <util/delay.h>

unsigned char a[10]= {18, 250, 84, 112, 184, 49, 17, 122, 16, 48};
volatile unsigned char sk;

int main(void){
DDRD=255;
DDRB=0;
PORTB=255;

sk=0;

while(1){
   if (sk<9){
      sk++;
   }
   else if(sk=9){
      sk=9;
   }
    else    if(!(PINB&1){
   sk=0;
   }
 PORTD=a[(sk)];
 _delay_ms(1000);
   }
 return 0;
            };


P.s. nežiūrėjau ar kur kokių skliaustų netrūksta

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 18:03 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
"DDRB=0; " šito deklaruoti man atrodo nereikia, bet nei su, nei be neveikia. Tik po minutės mygtuko minkymo vieną karta pradėjo vėl skaičiuoti iš naujo..
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 19:18 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
aš jau nebesuprantu ko tu nori iš tos programos..

va: skaičiuoja iki 9 ir sustoja kai jau suskaičiuoja iki 9 paspaudus mygtuką nusirestartuoja kokio tau dar reikia kodo?

Kodas:

#include <avr/io.h>
#include <util/delay.h>

 unsigned char a[10]= {18, 250, 84, 112, 184, 49, 17, 122, 16, 48};
 volatile unsigned char sk;

int main(void){
   DDRD=255;
   DDRB=0;
   PORTB=255;
   sk=0;
   while(1){
      if (sk<9){
         sk++;
         _delay_ms(1000);
         }
      else if(sk=9){
         sk=9;
         if(!(PINB&1)){
               sk=0;}}
               PORTD=a[(sk)];
         }
               return 0;
};

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 23, 19:28 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Nepagaunu kampo... Dabar veikia. Ačiū!
Čia tikriausiai dėl to "else if"... reikėjo naudot "if".
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 24, 11:32 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Dabar bandau mokintis su mygtukais:
Kodas:
#include <avr/io.h>
#include <util/delay.h>

unsigned char a[10]= {18, 250, 84, 112, 184, 49, 17, 122, 16, 48};
volatile unsigned char sk;

int main(void){
DDRD=255;
DDRB=0;
PORTB=255;

sk=0;

while(1){
   if (!(PINB&1)){
        sk++;
      _delay_ms(500);
         }
   if (!(PINB&1) || sk==9){
         sk=0;
         }
   if (!(PINB&2) || sk==0){
         sk=9;
         }
   if(!(PINB&2)){
         sk--;
         _delay_ms(500);
         }

 PORTD=a[(sk)];
   }
 return 0;
            };

Kai pasiekia 9 ir paspaudi mygtuką į priekį turi nusimušt į 0, o kai yra nulis ir paspaudi atgal turi būti 9. Iš šitos programos gaunasi tik tai, kad mygtukai sunkiai reaguoja numušinėja skaičiai, kada nori tada 0 mėto Very Happy Gal žinot kas blogai gali būti? Ačiū.
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 24, 13:29 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
žinok, neatsakau kad čia geras kodas, bet vienas iš variantų toks. Gal būt galima būtų ir kitaip perdaryt

Kodas:
#include <avr/io.h>
#include <util/delay.h>

unsigned char a[10]= {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
volatile unsigned char sk;

int main(int i, int sk){
   DDRD=255;
   DDRB=0;
   PORTB=255;
   sk=0;
   while(1){
      PORTD=a[sk];
      if ((sk==9) && (!(PINB&2))) {
         mazinam();
         sk=0;
      }
      else if((sk==0) && (!(PINB&1))){
         didinam();
         sk=9;
      }
   }   
}   
void mazinam(void){
   int i;
   for(i=9; i>0; i--){
      PORTD=a[i];
      _delay_ms(500);
   }
}
void didinam(void){
   int i;
   for(i=0; i<9; i++){
      PORTD=a[i];
      _delay_ms(500);
   }
}


KLAUSIMAS: O tu savo kodą skaitai ir ar truputį bent supranti? Tu gi nusistatęs, kad arba paspaudis mygtuką, arba kai pasiekiama tam tikra reikšmė nusinulintų arba pasidarytų 9..

P.S. kartojuos dar kartą, nežinau ar tai pats trumpiausias kodas tokiam dalykui, bet tingiu skut galvą, pats pasigalvok kitą kartą Wink[/quote]

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 24, 13:34 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
atsiprašau, sumaišiau || ir &&...
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 24, 13:36 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Ugniues rašo:
atsiprašau, sumaišiau || ir &&...

ai dar, a masyvo skaičius pakeičiau netyčia, susigražink atgal Wink

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 24, 14:23 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Ačiū!
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 25, 13:05 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Ką galit pasiūlyti išmokti dar? Very Happy Ledus blyksint mokų, su displėjum žaisti moku, su dvejais irgi bandžiau, mygtukai aiškus taip pat. Vo šįryt pabandžiau keypad'ą prisijungt, visiškai niekas neaišku... Pažiūrėjau į pavyzdinį kodą visokie &, #define iš kažkur ištraukti... nieko nesupratau...
Gal kažką su lcd, bet irgi ten tiek te suprantu, jeigu ir bandyt tai aklai nieko nesuprantant nėr beveik naudos.
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 25, 15:27 Pranešti apie taisyklių pažeidimą Atsakyti su citata
fubs
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
https://www.google.lt/search?client=opera&q=programavimas+c+kalba&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest

bent jau dėl define žinosi...

_________________
Bandau praplėst žinias
 Mygtuko paspaudimu delsimo trukmes keitimas
PranešimasParašytas: 2013 03 25, 16:22 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Ugniues
Užkietėjęs dalyvis
Užkietėjęs dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Tai nieko nekeičia perskaičius... Vis tiek pačio kodo nesuprantu ir pats tikrai nesugebėsiu parašyti kažko panašaus.
Pradėti naują temą  Atsakyti į pranešimą Pereiti prie Atgal  1, 2, 3  Toliau
 
Forumo sistema: phpBB
 „Google“ paieška forume
 Kas naujesnio?
 Naujos temos forume

Global electronic components distributor – Allicdata Electronics

Electronic component supply – „Eurodis Electronics“

LOKMITA – įvairi matavimo, testavimo, analizės ir litavimo produkcija

Full feature custom PCB prototype service

Sveiki ir ekologiški maisto produktai

Mokslo festivalis „Erdvėlaivis Žemė

LTV.LT - lietuviškų tinklalapių vitrina

„Konstanta 42“

„Mokslo sriuba“

www.matuok.lt - Interneto spartos matavimo sistema

Programuotojas Tautvydas – interneto svetainių-sistemų kūrimas

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

Draugiškas internetas

FS25 Tractors
Farming Simulator 25 Mods, FS25 Maps, FS25 Trucks
ETS2 Mods
ETS2 Trucks, ETS2 Bus, Euro Truck Simulator 2 Mods
FS22 Tractors
Farming Simulator 22 Mods, FS22 Maps, FS25 Mods
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija
FS25 Mods
FS25 Maps, FS25 Cheats, FS25 Install Mods
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps
ATS Trailers
American Truck Simulator Mods, ATS Trucks, ATS Maps
Must have farming mods
Farming simulator modhub, Best farming simulator mods
Reklama
‡ 1999– © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Turinys | Reklama | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina
Ets2 mods, Ats mods, Beamng drive mods
allmods.net
„MokslasPlius“ – mokslui skirtų svetainių portalas
www.mokslasplius.lt
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
LTV.LT – lietuviškų tinklalapių vitrina
www.ltv.lt/technologijos/
Elektroninių parduotuvių optimizavimas „Google“ paieškos sistemai
www.seospiders.lt
Mokslo festivalis „Erdvėlaivis žemė“
www.mokslofestivalis.eu
Reklama


Reklama