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 
Sponsored by SiOL

Shift-in registri

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Arduino sekcija
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
haRmOniKa
Član
Član



Pridružen-a: Pet 03 Dec 2010 20:10
Prispevkov: 94
Aktiv.: 0.87
Kraj: Dolenjska

PrispevekObjavljeno: Ned Maj 27, 2018 6:14 pm    Naslov sporočila:  Shift-in registri Odgovori s citatom

Zdravo,

po navodilih sem sestavil vezje, ki ga sestavlja 8 shift registrov. Vezje je pri dveh registrih še stabilno, pri več pa nič več. Včasih kakšen bit določi pravilno, večinoma pa ne.

Vezje sestavljajo samo shift registir in pull-up upori. Gotovo bi rabil še kakšen blokirni kondenzator pri registrih. Mogoče še kaj? Kako naj naredim stabilno vezje?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Jaka57
Moderator
Moderator



Pridružen-a: Ned 12 Dec 2004 21:47
Prispevkov: 5133
Aktiv.: 30.55
Kraj: Grosuplje

PrispevekObjavljeno: Ned Maj 27, 2018 7:43 pm    Naslov sporočila:   Odgovori s citatom

Ne vem, kaj delaš narobe, toda zaželjena bi bila shema in seveda sam program, da ti lahko soforumaši kaj več povedo.
_________________
Lp, Jaka
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
haRmOniKa
Član
Član



Pridružen-a: Pet 03 Dec 2010 20:10
Prispevkov: 94
Aktiv.: 0.87
Kraj: Dolenjska

PrispevekObjavljeno: Ned Maj 27, 2018 8:43 pm    Naslov sporočila:   Odgovori s citatom

Prej sem dal napačen link... Shema in program je tak, kot tukaj: https://playground.arduino.cc/Code/ShiftRegSN74HC165N

Razlika je, da sem uporabil 8 registrov v vrsti (64 gumbov), program pa spremenil tako, da imam
Koda:

...
#define NUMBER_OF_SHIFT_CHIPS   8
...
#define BYTES_VAL_T unsigned long long
...


Celotno vezje je sestavljeno. Če berem samo 2 registra (prvega in drugega), potem deluje brez problema. Kakor hitro berem več kot dva sistem postane nestabilen.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3567
Aktiv.: 22.49
Kraj: Krško

PrispevekObjavljeno: Ned Maj 27, 2018 10:06 pm    Naslov sporočila:   Odgovori s citatom

Ne kompliciraj s 64-bitno spremenljivko, ker se potem porabi ogromno časa za preverjanje posameznega bita in ustrezen odziv na spremembo.
V zanki osemkrat zapored preberi 8-bitno spremenljivko in jo shrani v array Vhodi[i], kjer gre i od 0 do 7.

8-bitno maskiranje bitov v zanki je bistveno enostavnejše v primerih, ko preverjaš stanja večih bitov hkrati (če je recimo poleg tipke za vklop pritisnjena še tipka za izklop, ima prednost izklop, ali pa se zgodi nekaj drugega, če je že ugasnjeno, ter nekaj tretjega, če je že vklopljeno).

Vedno imej v mislih, da se usedeš na tipkovnico in ob obstoječem stanju izhodov pritisneš večino tipk. Zato uredi prioritete, kaj se kdaj izvede in kaj se kdaj ignorira.

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
haRmOniKa
Član
Član



Pridružen-a: Pet 03 Dec 2010 20:10
Prispevkov: 94
Aktiv.: 0.87
Kraj: Dolenjska

PrispevekObjavljeno: Pon Maj 28, 2018 10:10 am    Naslov sporočila:   Odgovori s citatom

Sem popravil. Pa je še vedno čudno nestabilno.

Bi moral na signalnem pinu namestiti še kakšen upor?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
DusanK
Član
Član



Pridružen-a: Pon 19 Nov 2012 23:46
Prispevkov: 1210
Aktiv.: 14.37
Kraj: Medvode - med vodami

PrispevekObjavljeno: Pon Maj 28, 2018 11:59 am    Naslov sporočila:   Odgovori s citatom

Na shemi sicer manjka napajanje za oba čipa 74HC165, a ker ti nekaj dela, predvidevam, da si to vseeno povezal s +5V linijo.
Pri vsakem čipu daj med VCC (pin 16) in GND (pin 8) še 100nF (0,1uF) kondenzator, ki naj bo čim bližje pinom.

_________________
Največji čar - električar
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
haRmOniKa
Član
Član



Pridružen-a: Pet 03 Dec 2010 20:10
Prispevkov: 94
Aktiv.: 0.87
Kraj: Dolenjska

PrispevekObjavljeno: Pon Maj 28, 2018 4:19 pm    Naslov sporočila:   Odgovori s citatom

Ja, napajanje sem dodal. Dodal bom še kondenzatorje in bom videl kako bo.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Arduino sekcija Č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: 174 dni


Powered by phpBB © 2001, 2005 phpBB Group