 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Čet Jun 12, 2008 5:52 pm Naslov sporočila: AVR-ISP? |
|
|
Načrtujem eno vezje, ki bo komuniciralo preko SPI protokola s senzorjem in še z eno zunanjo napravo. To vezje mislim programirati z ISP USB-programatorjem(od Darkota), ki pa za svoje delovanje prav tako uporablja SPI protokol. Zanima me, kako je sedaj s tistimi linijami, ki so skupne(Clk, MOSI, MISO), s senzorjem zunanjo napravo in programatorjem? Ali je kaj narobe, če sta med programiranjem povezana tudi senzor in zunanja naprava? Kako je to običajno v teh aplikacijah, kjer se SPI uporablja za povezavo z drugimi napravami, obenem pa še za programiranje?
|
|
Nazaj na vrh |
|
 |
int47 Član


Pridružen-a: Pon 15 Dec 2003 0:10 Prispevkov: 2104 Aktiv.: 8.88 Kraj: Ljubljana
|
Objavljeno: Čet Jun 12, 2008 7:10 pm Naslov sporočila: |
|
|
Vhode (senzorja) lahko vežeš skupaj.
Problem so izhodi (senzorja).
Ena možnost je da (npr s pomočjo RESET signala) zaznaš način programiranje in takrat preprečiš, da bi senzor karkoli pošiljal na vodilo.
Druga možnost je, da izhod senzorja priklopiš preko upora. Takšno vezavo imaš tukaj Za programiranje je uporabljen CONN1.
Vezava preverjeno deluje s programatorjem, ki po končanem programiranju izhode postavi v visoko-impendančno stanje (High Z).
Kakšen "direkt kabel na LPT port" programator bi lahko motil SPI vodilo, zato ga je po končanem programiranju potrebno odklopiti.
|
|
Nazaj na vrh |
|
 |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Čet Jun 12, 2008 9:02 pm Naslov sporočila: |
|
|
Hm, bom še videl. Rad bi čim manjše vezje brez veliko dodatnih elementov. Mogoče bom uporabil kar jumper, in bom pač prekinil MISO vez...A bi se zagotovo pojavile motnje med programiranjem, če bi senzor kaj poslal v času programiranja?
|
|
Nazaj na vrh |
|
 |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Pet Jun 20, 2008 10:21 pm Naslov sporočila: |
|
|
Citiram: |
Druga možnost je, da izhod senzorja priklopiš preko upora. Takšno vezavo imaš tukaj Za programiranje je uporabljen CONN1.
Vezava preverjeno deluje s programatorjem, ki po končanem programiranju izhode postavi v visoko-impendančno stanje (High Z). |
Sedaj sem videl, da bom res moral najti drugačno rešitev. In sicer namen imam uporabiti 74hc125. Če prav razumem, to vezje deluje tako, da npr. damo z logično "1" izhod v visoko impedančno stanje(v bistvu ga zapremo), z "0" pa je izhod povezan. Sedaj me zanima, ali so v času programiranja mikrokrmilnikovi izhodi v stanju logične "1"?
|
|
Nazaj na vrh |
|
 |
int47 Član


Pridružen-a: Pon 15 Dec 2003 0:10 Prispevkov: 2104 Aktiv.: 8.88 Kraj: Ljubljana
|
Objavljeno: Ned Jun 22, 2008 8:13 am Naslov sporočila: |
|
|
Med programiranjem se I/O pini uC-ja, ki niso uporabljeni za programiranje, navadno obnašajo kot vhodi.
Logično stanje na njih je odvisno tudi od ostalih komponent vezja.
74125: Ja, posamezne izhode se da vklopiti/odklopiti s kontrolnim signalom /Gx.
P.S. Med mikrokontroler-jem in mikrokrmilnik-om je razlika.
|
|
Nazaj na vrh |
|
 |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Ned Jun 22, 2008 12:10 pm Naslov sporočila: |
|
|
Citiram: |
Med programiranjem se I/O pini uC-ja, ki niso uporabljeni za programiranje, navadno obnašajo kot vhodi.
Logično stanje na njih je odvisno tudi od ostalih komponent vezja.
|
Kako bi torej moral narediti, da bi v času programiranja bil izhod iz senzorja "odklopljen"? Na krmilnem priključku /Gx čipa 74125 bi morala biti logična "1" v času programiranja, ampak kako pa to dosežem?
Citiram: |
P.S. Med mikrokontroler-jem in mikrokrmilnik-om je razlika. |
Kakšna?
|
|
Nazaj na vrh |
|
 |
int47 Član


Pridružen-a: Pon 15 Dec 2003 0:10 Prispevkov: 2104 Aktiv.: 8.88 Kraj: Ljubljana
|
Objavljeno: Ned Jun 22, 2008 3:27 pm Naslov sporočila: |
|
|
Kakšno logično stanje ima RESET uC-ja med programiranjem?
Zakaj ti rešitev z uporom ni všeč?
Daj prilepi shemo vezja, da bomo videli, o čem se pogovarjamo.
Moji sodelavci vse kar vsebuje "kontroler" razumejo kot PLC. Ko sem hotel to pravilo podpreti z linkom, sem ugotovil, da to ni splošna praksa. P.S. lahko zanemariš.
|
|
Nazaj na vrh |
|
 |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Ned Jun 29, 2008 10:00 pm Naslov sporočila: |
|
|
Citiram: |
Daj prilepi shemo vezja, da bomo videli, o čem se pogovarjamo.
|
Upal sem, da bom narisal shemo in jo prilepil, vendar mi še ni uspelo zaradi pomanjkanja časa, pa tudi zato ker se še nisem odločil za nekatere elemente, ki jih bom uporabil. Drugače bo je vezava podobna kot na tej priloženi shemi, le da bo namesto ENC28J60 uporabljen en senzor.
Citiram: |
Zakaj ti rešitev z uporom ni všeč? |
Če povem po pravici, ne razumem točno kako potem deluje to, ko je na izhod senzorja vezan upor. Mi lahko prosim malo bolj razložiš?
|
|
Nazaj na vrh |
|
 |
int47 Član


Pridružen-a: Pon 15 Dec 2003 0:10 Prispevkov: 2104 Aktiv.: 8.88 Kraj: Ljubljana
|
Objavljeno: Pon Jun 30, 2008 9:39 pm Naslov sporočila: |
|
|
Med normalnim delovanjem je na vodilu naenkrat aktiven le en izhod.
Izhod si lahko predstavljaš kot (realen) napetostni generator (ima U0 in Rn).
Notranja upornost izhoda je nizka (Rn1, Rn2).
Notranja upornost vhoda je visoka (Rv).
Na vhodu je torej vedno praktično enaka napetost, kot jo daje izhod (U01).
Ko zraven priključiš še programator, imaš vzporedno vezna dva izhoda na en vhod.
Notranji upornosti obeh izhodov si lahko predstavljaš kot delilnik napetosti, na katerega je priključen tvoj vhod.
a)
Notranji upornosti izhodov (Rn1 in Rn2 uporovnega delilnika) sta nizki in približno enaki.
Ko je en izhod (U01) na '0' in drugi (U02) na '1', teče skozi delilnik (pre)velik tok. Izhodna napetost je približno na polovici med '0' in '1'.
b)
Če zaporedno z enim od izhodov (npr Rn1) vežeš upor (Rz), se ta upornost prišteje notranji upornosti tega izhoda.
Dobiš delilnik napetosti, pri katerem je (Rn1+ Rz) >> Rn2. Če je Rz dovolj velik, tok skozi delilnik ne preseže zmogljivosti izhodov. Izhodna napetost takšnega delilnika je blizu napetosti U02.
Ker je Rv >> Rz, upor Rz ne moti, kadar izhod2 (programator) ni prisoten.
|
|
Nazaj na vrh |
|
 |
upornik Član

Pridružen-a: Ned 09 Jan 2005 22:35 Prispevkov: 261 Aktiv.: 1.10 Kraj: Celje
|
Objavljeno: Sob Jul 19, 2008 11:56 am Naslov sporočila: |
|
|
Končno sem prišel do več časa za projekt. Int47 hvala za razlago. Sedaj nekako razumem tole rešitev z uporom. Ali bi lahko stvar rešil z uporom tudi v primeru, če so na istem ISP vodilu 4 naprave, kot v tem primeru? Upam, da se dokaj razločno vidi na shemi. Torej, AVR je povezan z senzorjem, VF modulom in še med programiranjem z ISP programatorjem. Bi delolovalo, če bi na izhod senzorja in izhod
VF modula dodal upor, tako kot si mi svetoval?
Opis: |
|
Velikost datoteke: |
62.79 KB |
Pogledana: |
21 krat |

|
|
|
Nazaj na vrh |
|
 |
int47 Član


Pridružen-a: Pon 15 Dec 2003 0:10 Prispevkov: 2104 Aktiv.: 8.88 Kraj: Ljubljana
|
Objavljeno: Čet Jul 31, 2008 11:30 pm Naslov sporočila: |
|
|
Kako uC izbere napravo na vodilu, s katero bo potekala komunikacija ? (manjka "chip select").
|
|
Nazaj na vrh |
|
 |
|
|
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: 494 dni
Powered by phpBB © 2001, 2005 phpBB Group
|