[ alarmi ns @ 04.05.2016. 17:35 ] @
Pozdrav svima treba da pravim neki led panel sa otprilike stotinjak ledica ,upravljacu sa njima sa shift registrima i nekim picem jos nisam resio sa kojim
e sada problem mi je dali u pbp-u ima neka komanda koja upravlja sa bitom
naprimer ako u osmo bitnoj promenljevoj imam a=%00001100 kako mogu cetvrtu jedonicu pomeriti na peto mesto sa sabiranjem znam kako al nekada cu imati puno pinova u sift registru sa kojim treba da upravljam koristicu 74hc595
cuo sam da ima komanda set bit i reset bit....
[ ZAS011 @ 05.05.2016. 06:20 ] @
Nađi reference manual za PBP.
"Čuo sam" i pročitao sam ali mi nije jasno, su dve različite stvari.

Znači, čitati, čitati i opet čitati
[ alarmi ns @ 05.05.2016. 19:10 ] @
CCC znas da su mi postali zanimljivi tvoji komentari citati citati..... :) aman dokle vise ccc odgovor uvek bude na zadnjoj strani, a sta god sam trazio na ovom forumu dobiio sam isti odgovor CITAJ!!! A mozda je to i pametno bar sam nesto naucio, ja vas pozdravljam i zahvaljujem vam se idem da citam pbp manual
[ ZAS011 @ 05.05.2016. 19:54 ] @
Da bi upoznao specifičnosti nekog programskog jezika POTREBNO je pročitati njegov namual i to više puta, SA RAZUMEVANJEM.
Mogao bi Siniša da ti napiše odgovor na tvoje pitanje pošto je on mnogo koristio PBP (ja koristim Proton+), međutim i on bi ti dao savet Č Č Č

Niko se od nas nije naučen rodio, ali, bez čitanja literature ne bismo ni naučili ovoliko koliko (ne)znamo

BTW, komentari ČČČ nisu samo moji, prvi ih je upotrebio Siniša , a SetBit i ClearBit imaš u Proton+ a nemaš u PBP 2.x (za 3.x ne znam, ne "trošim")


[Ovu poruku je menjao ZAS011 dana 05.05.2016. u 21:07 GMT+1]
[ veselinovic @ 06.05.2016. 08:44 ] @
Nioje mi bas najjasnije sta zelis, ali pbp ima mogucnost rada sa bitovima.
Recimo :
PORTB.1 = 1 ' Set PORTB, bit 1 to a 1

ili plejada logickih funkcija sa bitovima:

B0 = B0 & %00000001 ' Isolate bit 0 of B0
B0 = B0 | %00000001 ' Set bit 0 of B0
B0 = B0 ^ %00000001 ' Reverse state of bit 0 of B0

Naravno postoji i siftovanje :

B0 = B0 << 3 ' Shifts B0 left 3 places (same as multiply by 8)
W1 = W0 >> 1 ' Shifts W0 right 1 position and places result in W1 (same as divide by 2)

imas i funkciju toggle :

TOGGLE Pin

Invert the state of the specified Pin. Pin is automatically made an output. Pin may be a constant, 0 - 15, or a variable that contains a number 0 - 15 (e.g. B0) or a pin name (e.g. PORTA.0).

Example

LOW 0 ' Start Pin0 as low
TOGGLE 0 ' Change state of Pin0 to high

naravno i high i low funkciju:

Make the specified Pin high. Pin is automatically made an output. Pin may be a constant, 0-15, or a variable that contains a number 0-15 (e.g. B0) or a pin name (e.g. PORTA.0).

Example

HIGH 0 ' Make Pin0 an output and set it high (~5 volts)
HIGH PORTA.0 ' Make PORTA, pin 0 an output and set it high (~5 volts)
led VAR PORTB.0 ' Define LED pin
HIGH led ' Make LED pin an output and set it high (~5 volts)

Alternatively, if the pin is already an output, a much quicker and shorter way (from a generated code standpoint) to set it high would be:

PORTB.0 = 1 ' Set PORTB pin 0 high



Bilo bi lakse kad bi napisao tacno sta zelis ( sa sve vrijednostima prije i poslije).
[ ZAS011 @ 06.05.2016. 15:38 ] @
Pinove HC595 ne možeš pojedinačno menjati kako ti hoćeš.

Ovo što je Jovan napisao je manipulacija pojedinačnim pinovima I/O porta na nivou bit-a.

Stotinjak LEDara? Kako planiraš da veyuješ šift registre? Sve kaskadno? Pazi da te tu hardver ne "ujede" nezgodno
Programski može sve da bude idelno i bez greške a da ti hardver "pomeri pamet", no o tom potom, kada stigneš dotle.
[ alarmi ns @ 08.05.2016. 18:50 ] @
Nije mi net radio par dana,al sad je opet sve uredu, ma mala trceca reklama registri na red pa u svaka dva po jedan broj od 16 bita treba mi naprimer ovo
@ zaso ako ja broj pre guranja u registar izmenjam mogu ga gurnuti unutra,al svaki put bi u registar ugurao sve nule pa onda novo stanje,tu promenu oko nevidi,kako registar moze da pobrljavi?
100000
010000
001000
pa tako u krug
pa po dva
1100000
011000
mogu i ovako nadgledati bitove
A = %00000001
for i=0 to 7
A.0(i) = 1
next i
al mi nije jasno kako da dodajem
kad treba lupam imam pet bitova popaljenih kako da dodam sesti,tacnije znam kako al po mom treba jako puno kucati
na ovo mislim
001111
pa kad po cetiri letice obigraju krug treba dodati petu
1111100
sve dok se sva slova nepopale

[Ovu poruku je menjao alarmi ns dana 08.05.2016. u 20:02 GMT+1]
[ ZAS011 @ 08.05.2016. 19:03 ] @
Imaš li ti tačnu predstavu kako radi HC595 i kako se klokuju podaci u isti?
Ako nije supertajna daj šemu kako si osmislio elektroniku i barem neku skicu te tvoje "trčkalice".
Ne mogu da odgonetnem šta si zamislio iz gore napisanog
[ alarmi ns @ 08.05.2016. 19:14 ] @
Haha super tajna,nisam jos poceo crtkati znam kako radi ima data clik i strob kroz data guram broj dali osmobitni ili /16,nisam jos iscrtao semu prvo pokusavam da smozgam kako da guram sve tj kako da napravim matematiki
eeee kada bi negde trkalicu u pbp-u nasao to bi idealno bilo da vidim kako radi tj kako je smisljenja, jel ce i ovo na taj fazon raditi
recimo A ce imati sesnaist bitova dva registra
i krenuce prvo progura jednu ledicu kroz ceo A, znaci obidje svih sesnaist bita pa upali prve dve ledice pa trkaaaaa

Ocu da napisem AUTO ALARMI pred radionicom sa trcecim ledicama :)
[ ZAS011 @ 08.05.2016. 20:44 ] @
Ahm... tibi da "popunjavaš" diskretna slova napravljena od LEDara
Onda ćeš morati da se bakćeš i matematikom
BTW HC595 ima i Output Enable (OE) i Clear

A ima i trčkalica sa pravljenjem slova u matrici, one što ih imasve više i više, a pored žutaća nema šanse da napraviš da bude jeftinije

Prvo smisli hardver a posle mozgaj kako ćeš to softverski da poteraš.