Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Greska u komunikaciji

[es] :: Elektronika :: Greska u komunikaciji

Strane: 1 2

[ Pregleda: 9252 | Odgovora: 39 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Greska u komunikaciji13.11.2013. u 15:15 - pre 127 meseci
Pozdrav ekipa!

Na tapetu nekakav projekat pa zapelo.

Ovako.U pitanju su homemade 7-segmenti displeji sa 74HC595 i ULN2803A kolima.Cijela prica se sastoji od 4 bloka segmenata koji su medjusobno povezani na jednu upravljacku plocu sa 16F877A kolom.(slika) Obzirom da je potrosnja segmenata takva potrebne su 2 napojne.Komunikacija od PIC-a do segmenata se sastoji od 3 signala : data, dataclock i enable.Svi idu kroz isti kabal ( 6x0.22 ) kao i +5V za napajanje logike kola 74HC595.
Dužina kablova je :
od 16F877 do prvog bloka (1) je cca 20cm,
od 1.bloka do 2.bloka je cca 70cm,
od 2.bloka do 3.bloka cca 90 cm i
od 3.bloka od 4.bloka cca 70 cm.

Sve fino spojeno, upaljeno, PIC programiran da pušta niz brojeva od 0 do 9.

Problem - BRLJAVE SKORO SVI SEGMENTI!!!

Otkačim komunikaciju i 5V izmedju 1. i 2. bloka - 1.blok RADI
Zakacim 2.blok , otkačim 3. - 1. i 2. blok RADE
Zakacim 3.blok , otkacim 4. - BRLJAVE SVI!!

Ostavim kabal zakacen na 2. bloku a skinem ga sa 3.bloka --BRLJAVE SVI!!!

Izmjerim kabal omski - DOBAR!

Znaci kad otkacim kabal sa kraja 2.bloka RADI , kad zakacim sam kabal - NE RADI.

Stavim 3 otpora od 100R izmedju GND i signala na kraj kabla - 1.blok radi , 2.blok BRLJAVI!

Ima li ko ideju???

zaboravio: dataclock i enable su paralelni sa sva 74HC595 kola dok data se prenosi od kola do kola u seriju ( carry out )
i sva prica oko signala se dešava u clocku od 10mS-20mS




[Ovu poruku je menjao boogi dana 13.11.2013. u 16:27 GMT+1]

[Ovu poruku je menjao boogi dana 13.11.2013. u 16:31 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:18 - pre 127 meseci
Jesi li proveravao da li imaš stabilnih 5V za napajanje logike kad krene da brljavi?
gorankg
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:22 - pre 127 meseci
Obzirom da sam tvorac sve te skalamerije od nule ( hardver + softver ) može i pitanje za dodatna objasnjenja.
Kuc , Kuc ima li koga?

Telepatija! Ja pišem - covjek postavlja pitanje!

Jesam 5,03V mjereno digitalnim instumentom.
 
Odgovor na temu

Zlatni_bg
Nikola S
Beograd

Član broj: 65708
Poruke: 4420
*.dynamic.sbb.rs.



+498 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:24 - pre 127 meseci
Verujem da bi dobro doslo par kondenzatora tu.
THE ONLY EASY DAY WAS YESTERDAY
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:26 - pre 127 meseci
Na svakoj 7-segmentnoj polči na +5V ima 100nF.znaci ukupno 13 kom jer na zadnjem bloku postoji i dvotacka kojom se uppravlja sa 74hc595. inace 5V je dodijeno iz 7805 regulatora. Elko od 100uf + 100n na ulazu i 10uF i 100n na izlazu iz 7805. cijenim da je na 30-40 stepeni celzijusa u radu - mlak.
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:27 - pre 127 meseci
Decoupling na displejima lokalno, terminacija flet kablova na krajevima sa nekim otporom (probati od 1K do 330R).

A ako treba i fazno pomeriš data malo iza kloka, ili obrnuto.

Sve zavisi kako si zamislio prenos (neg. poz. logika ili šta već).

Šift registri moraju već imati stabilno stanje data u trenutku kada se pojavi tranzicija clock koja usempluje data u flop.
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:39 - pre 127 meseci
Hm. Kablovi nisu flet nego alarmni 6x0,22. Probavao sam sa 100R pa je radio samo prvi blok , drugi ne(bila su prikljucena 2 i kabal ka trecem).
Podaci idu otprilike ovako: 16F877 postavi data na odredjeni pin, saceka 10mS, setuje CLK sa 0 na 1 , ostavi ga 10mS, setuje CLK sa 1 na 0 , saceka 10mS, odradi iz početka sve navedeno za preostalih 7 bitova ( za 1 segment) , saceka 750mS, setuje ENABLE , saceka 10mS, resetuje ENABLE , saceka 10mS i onda na sledeci bajt.

Smatram da je 10mS i više nego dovoljno.

http://www.google.ba/imgres?im...yzBtKkgJAO&ved=0CCoQ9QEwAQ

Displej radii na bazi ovoga PDF-a( LATCH = ENABLE )
Prikačeni fajlovi
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 20:57 - pre 127 meseci
Sva prica (isti hardver i softver ) radi vec 2 mjeseca besprekorno na displeju koji ima 4 segmenta ( 1 blok ). problemi su nastali kada sam htjeo da dodam još blokova.
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: Greska u komunikaciji13.11.2013. u 21:16 - pre 127 meseci
Probaj da između drugog i trećeg modula dodaš jedan 74HC245 za clock i enable linije.
gorankg
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 21:23 - pre 127 meseci
Da ih malo "pojacam", ustabilim? Probat cu sa otporom od 330-1K ako ne da rezultate trazim 245.Ili mozda po dva NOT kola?
Da.Još jednu stvar sam zaboravio: kad sam otkacio CLK zicu sa 2.bloka a ostavio sve zice ka 3.bloku ( 3.blok nije bio zakacen ) radila su oba OK.
Ne mogu da vjerujem da su CLK i EN na toj duzini kabla pokupili toliko kapaciteta parazitnog, smetnji ili cega vec da su izoblicili signal.

[Ovu poruku je menjao boogi dana 13.11.2013. u 22:42 GMT+1]
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: Greska u komunikaciji13.11.2013. u 21:40 - pre 127 meseci
ako svaki modul ima 4 595 onda je zgodno posle svakog modula na izlaz da stavis neki line driver (moze 245 koji kolega predlaze npr)

ono sto ti je bitno je kako ti krece data a kako klok sa ulaza, da li ih menjas zajedno ili promenis datu pa klokujes sa zakasnjenjem, posto ti data putuje vec posle 4 595 data moze da kasni tako da ti je klok stigao pre date zakaci osciloskop na poslednji modul (tu najbolje vidis kasnjenje) na data i klok liniju i gledaj sta se desava bice ti sve jasno :D... najjednostavnije resenje ti je da okasnis clock na sorsu tako da izbacis data bit, sacekas 25% vremena koje si odredio za klok time, onda flashnes klok opet 25% vremena i vratis se na idle, na taj nacin das data liniji vreme da stigne do cetvrtog modula ... dakle samim usporenjem kloka ne dobijas nista, moras da pomeris ivicu kloka u odnosu na data ivicu tako da data upadne na vreme


EDIT:
inace kada pravis takve module, ako ti je cilj da budu "izmenjivi/multiupotrebljiv/multikorisni" na izlaz svakog modula (posto ih vezes u lanac) treba da stavis line drivere, izlaz sa mcu-a ili cime vec generises signal takodje mora da ide preko line driver-a (nadam se iskreno da ne vozis n metara kabla direktno sa noge mcu-a :D )

[Ovu poruku je menjao bogdan.kecman dana 13.11.2013. u 22:52 GMT+1]
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: Greska u komunikaciji13.11.2013. u 21:41 - pre 127 meseci
Ovaj 74HC245 se lako nalazi zato sam ti ga i preporučio. Mada mislim da ti je mnogo bolje da promeniš sam koncept tvojih displeja. Prvo da umesto 16F877 odabereš neki 40-pinski PIC iz 18F serije. A drugo, da ti jedan modul čini jedan taj 18F PIC i 4 ULN2803. Module vezuj serijski preko USART. Prvi PIC u nizu ti može biti master a svi ostali slave (svaki slave ima svoju adresu). Tako ćeš moći module da udaljiš još više ukoliko se ukaže potreba.
gorankg
 
Odgovor na temu

vladd

Član broj: 37217
Poruke: 12059
*.dynamic.isp.telekom.rs.



+5251 Profil

icon Re: Greska u komunikaciji13.11.2013. u 21:50 - pre 127 meseci
Spoj celu informaciju za dva vezana displeja u jednu "rec". I postavi je odjednom. Mislim, tretiraj dva displeja kao jedan, ali sa osam znakova.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: Greska u komunikaciji13.11.2013. u 22:02 - pre 127 meseci
zaboravih, ima jos jedno resenje ... ja sam koristio sledece na nekom led panelu koji sam pravio, isto sam po plocki imao 4x595 a bilo mnogo plocki .. nisam stavljao line drajvere posto je sve bilo blizu ali sam na ulaz od svake ploce na klok liniju stavio jedan hex inverter, sta je fora, uvedes klok u inverter i provuces ga kroz svih 6 komada tako da na izlazu dobijes identican signal samo sa nekim malim kasnjenjem koje se prilicno poklapa sa kasnjenjem koje data dobije kroz 4 595 tako da sam ja na nekih 50 plocki uvezanih imao svih 50 da rade ok :D
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji13.11.2013. u 22:26 - pre 127 meseci
mislim da sam shvatio poentu.

@bogdan.kecman
bogdane evo i dio programa:


for b = 12 to 0 step -1

serial = data(b) -----------------data(B) je niz od 13 bajtova koliko ja imam 595 kola

for bitt=7 to 0 step -1

tb=testbit(serial,bitt) -----------setovanje data
if tb=0 then
PORTA.2 = 0
else
setbit ( PORTA,2 )
end if

delay_ms(10)
setbit ( PORTA,1 ) ----------------set CLK
delay_ms(10)
clearbit ( PORTA,1 )

next bitt
delay_ms(750)

delay_ms(10)
setbit(PORTA,0) -------------set ENABLE
delay_ms(10)
clearbit(PORTA,0)

next b

mislim da imam kasnjenje CLK od 10mS u odnosu na data.
Line driveri? (pogled oboren ka dole, kruzim stopalom po pijesku....) Prvi macici se ..... Line driveri - nema.

 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: Greska u komunikaciji13.11.2013. u 22:48 - pre 127 meseci
stavljaj source u [ code ] tagove bude citljiviji

Code:


for b = 12 to 0 step -1

    serial = data(b)

      for bitt=7 to 0 step -1

        tb=testbit(serial,bitt)
        if tb=0 then
         PORTA.2 = 0
         else
         setbit ( PORTA,2 )
        end if

         delay_ms(10)
         setbit ( PORTA,1 )
         delay_ms(10)
         clearbit ( PORTA,1 )

      next bitt
    delay_ms(750)
      
    delay_ms(10)
    setbit(PORTA,0)
    delay_ms(10)
    clearbit(PORTA,0)
      
next b


ok ti ovde imas dobrih 10ms pre nego strobujes latch .. osim sto je komunikacija extra spora to bi sto se tajminga tice moralo da radi ... ja 595 vozim sa hardwerskog SPI porta na par megaherca ... ti sa tajmingom ne bi smeo da imas problema sa ovim kodom posto kasnjenja su reda velicine 10-200nS.. ti sa 10ms pauzom ihahaj nemas taj problem.. dakle moras da obratis paznju na sve ostalo:
- line driveri omogucuju da upumpas signal u zicu
- terminatori uguse dosta nois-a sa linije i ujednace impedancu
- decoupling na svakom 595

ja cesto koristim 74hc244 drajvere doduse oni su bas line drajveri, kolega ti je predlozio transciever (bidirekcioni) no verovatno ti je savetovao njega posto se mozda malo lakse dobavlja od 245.

Citat:
boogi
Line driveri? (pogled oboren ka dole, kruzim stopalom po pijesku....) Prvi macici se ..... Line driveri - nema.


ovo cu razumeti kao PIC tera direktno xyz metara kabla ... there's your problem, ne moze pic pin da savlada kapacitet kabla, moras da turis line drajver tu .. dakle probaj da dodas line drajver bar izmedju pica i prvog modula
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Greska u komunikaciji13.11.2013. u 23:23 - pre 127 meseci
Bez obzira što ti je komunikacija ultraspora, tranzicije ti traju isto vreme. Dakle refleksije i preslušavanje kroz kabl su ti na istom nivou kao kada bi radio sa megahercima komunikacije. Postoji visoka mogućnost kapacitativnog preslušavanja ili transformatorskog efekta. Ti kablovi nisu ni predene parice, možda ni širmovani, pa jednom rečju nisu za tu namenu.


Predlog za stavljanje buffera-drivera je odličan.

Vrlo niska impendansa će verovatno pomoći. Ako ni to ne pomogne, onda namerno uspori tranzicije rc članovima na minimalnu vrednost koju dozvoljavaju 595 za siguran rad.

Kada se svaki pojedinačni signal pošalje po jednom širmovanom predenom paricom, direktno iz PIC to može i koju desetinu metara (PIC ima prilično nisku impendansu kad je pin izlaz, nije on uopšte tako osetljiv).

To bi bio korektan prenos na veće daljine naponskom metodom.

Pozz
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji14.11.2013. u 20:06 - pre 127 meseci
Momci hvala na trudu!

Nešto sam naučio. Problem je riješen - 1K na kraju kabla i rade sva 4 bloka.Definitivno će u sljedećim projektima biti prisutan i 245 da ne bi razmišljao hoće/neće.

Hvala još jednom

POZZZZ
 
Odgovor na temu

boogi
RS-BiH

Član broj: 56974
Poruke: 352
*.teol.net.



+7 Profil

icon Re: Greska u komunikaciji15.11.2013. u 12:08 - pre 127 meseci
Da ne otvaram novu temu.
18B20 temperaturni senzor.
Zna li ko koja je max dužina kabla na koji se senzor može nakačiti? pretpostavljam da zavisi od vrste kabla. Generalno mi treba očitavanje temp na nekih 15m sa 18B20.

Otvoren za sve predloge.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: Greska u komunikaciji15.11.2013. u 12:17 - pre 127 meseci
nisam terao 18B20 vec jedan drugi senzor (za pozar) koji radi na
identicnom protokolu i radio je na upredenoj plavobeloj zici (dodatno
upredena busilicom od onoga kakva je u originalu) na nekim 70 metara
(dakle dvozicno, parazitno se napajao) .. kapiram da bi i 18B20 radio
slicno ako dobro uradis sw
 
Odgovor na temu

[es] :: Elektronika :: Greska u komunikaciji

Strane: 1 2

[ Pregleda: 9252 | Odgovora: 39 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.