Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   346 / 1319
(#) trudnai válasza fejesg hozzászólására (») Nov 23, 2008 /
 
Idézet:
„Nos, a rutin elején kinullázom az egész regisztert, és akkor írok 1-et, ha szükséges. Ezért nincs bcf.”


No igen, de ugye ha sok bitet kuldesz el sorban (soros kommunikacio) akkor folyamatosan a megfelelo iranyba kell valtani a bit allasat. A te rutinod pedig csak arrol gondoskodott, hogy magasba allitsa a bitet, arrol nem, hogy ha kell alacsonyra vissza kapcsolja. Pl ha elkuldesz b'10000000' -t akkor a te megvalositasod szerint a vevo b'11111111'-et kapna...

Icserny megvalositasa mar sokkal jobb, annak csak az egyetlen bokkenoje, hogy nem azonos utamben tortennek meg az atmenetek. Tehat a magasba allas az 2us -al korabban tortenik meg, mint az alacsonyba allas tortenne. Talan a synchron miatt ez nem jelent gondot, de en valahogy igy csinalnam inkabb:
  1. SendHi:
  2. ; delay
  3.      movf      GPIO,W
  4.      iorlw     (1<<SCL)       ; set SCL in W
  5.      bcf       GPIO,SCL       ; Clock set to Low
  6. ; delay
  7.      rlf       DataHi,f       ; Rotate next data bit into Carry
  8.      andlw     ~(1<<SDA)      ; clear SDA in W
  9.      btfsc     STATUS,C       ; Set SDA according to Carry
  10.      iorlw     (1<<SDA)       ; set SDA in W
  11.      movwf     GPIO           ; put SDA and SCL in GPIO
  12.      decfsz    Bitcount,f
  13.      goto      SendHi         ; Loops for all 8 bits of the high order byte

Anugy egy NRZ kodolassal ennel kb 20-30%-kal magasabb sebesseget lehetne elerni es elegendo lenne egyetlen vezetek az osszekotteteshez - ha mar a masik aramkor is egy altalunk megirt firmware-re epulo kontroller, akkor miert ne?

szerk: Sot, akkor me is lehetne csinalni azt (ill. ahhoz nagyon hasonlo) kodot amit eredetileg kigondoltal es akkor ugye 8 ciklus helyett 2 lenne bitenkent ami 4x sebesseg novekedes!
(#) googa hozzászólása Nov 23, 2008 /
 
Sziasztok! 16F887-re szeretnék külső 20MHz-es oszcillátort. Van is egy 20megás kristályom, vagy minek nevezzük. Az lenne a kérdésem, hogy milyen kondikat tegyek mellé. Van kerámia kondim 100nF, az jó lesz hozzá? Köszi!
(#) Norberto válasza googa hozzászólására (») Nov 23, 2008 /
 
Idézet:
„milyen kondikat tegyek mellé”


15-33 pF közöttit szokás.
(#) googa válasza Norberto hozzászólására (») Nov 23, 2008 /
 
Köszönöm!
(#) fejesg válasza trudnai hozzászólására (») Nov 23, 2008 /
 
Szia!

Köszi az infót; valószínűleg ez a gond...

fejesg
(#) icserny válasza trudnai hozzászólására (») Nov 23, 2008 /
 
  1. movwf     GPIO           ; put SDA and SCL in GPIO


Ezzel a megoldással az a bajom, hogy versenyhelyzetet teremt: nem garantálja, hogy SDA már beállt, amikor SCL felfutó éle a fogadó eszközre ér.

Esetemben az nem számít, hogy az adatvonal mikor áll be, vagy milyen sebességgel történik az adatátvitel, hiszen a fogadó eszköz (egy 16 bites D/A konverter) csak azt nézi, hogy a szinkronjel felfutásakor milyen állapotban van az adatvonal.
(#) trudnai válasza icserny hozzászólására (») Nov 23, 2008 /
 
Idézet:
„Ezzel a megoldással az a bajom, hogy versenyhelyzetet teremt: nem garantálja, hogy SDA már beállt, amikor SCL felfutó éle a fogadó eszközre ér.”


Igen ebben igazad van. Azt most igy nem tudom fejol, hogy a szabvany szerint az SCL ele utan milyen idonek kell eltelnie, hogy a szint bealljon.
(#) icserny válasza trudnai hozzászólására (») Nov 23, 2008 /
 
Nem tudom, hogy van-e erre szabvány. Az általam használt D/A konverter adatlapja min. 40 ns adatbeállási időt ír elő. A Microchip MCP23S17 (ez az SPI változat) periféria-bővítője pedig tápfeszültségtől függően min. 10-20 ns-ot igényel.

(#) icserny válasza trudnai hozzászólására (») Nov 23, 2008 /
 
Idézet:
„az SCL ele utan”

SCL felfutó éle előtt...
(#) Dubi hozzászólása Nov 23, 2008 /
 
Sziasztok!
Nemrég elkezdtem olvasgatni a mikrokontorllerek világából,és nagyon tetszik a dolog,amatőr vagyok a témában,bár C nyelvet azt elég jól ismerem (3éve foglalkozom Cvel)de szeretnék valami "fizikai" dolgot is alkotni ezért tetszik ez mert itt összeköthetem a programot az általam elkészített hardwareval! Elsőként meg szeretném építeni azt a hőmérőt amit itt találtam az oldalon,egyszerűnek tűnik kevés alkatrésszel de szükségem lenne egy égetőre,hol tudok venni is melyik tipust érdemes megvásárolnom?Azért szeretnék inkább venni mert ugy érzem nem tudnék még saját magamnak készíteni egyet!
Előre is köszönöm a válaszokat!

Üdv!
(#) potyo válasza Dubi hozzászólására (») Nov 23, 2008 /
 
Idézet:
„Azért szeretnék inkább venni mert ugy érzem nem tudnék még saját magamnak készíteni egyet”


Ha így érzed, akkor kicsit korainak érzem, hogy kontrollerekkel foglalkozz. A kontrollerhez a programozás csak egy kis részlet, nagyobbik része áramkörépítés.

Venni Pickit2-t érdemes. Chipcadnél 6-7000Ft körül van.
(#) Norberto válasza Dubi hozzászólására (») Nov 23, 2008 /
 
Ha mindenképp megvenni szeretnéd:

ChipCAD nevű bolt >>> PICKit 2 starter

Akciós termék, 2008. november 30-ig nettó: 6 540 Ft
(#) Dubi válasza potyo hozzászólására (») Nov 23, 2008 /
 
Elöször is köszönöm a gyors válaszokat! Áramkört tudok építeni az alapokkal tisztában vagyok,Pécsre járok suliba a Pollackra Mérnök Informatikára,másodéves vagyok,van digitális technika órám,ott áramköröket építünk+stb! Csináltam már 7szegmenses kijelzővel áramkört ami 0-7ig kiirta a decimális számokat persze nekem kellett egy kapcsolóval állitgatni a bemeneti biteket! Tudom hogy ez nem nagy szám de sztem alapnak jó! Nekem a nyáklap elkészítésével vannak problémáim mivel mi mindig probapanelen dolgozunk! Még sosem csináltam nyákot.

Üdv!
(#) gulasoft válasza Dubi hozzászólására (») Nov 24, 2008 /
 
Ehhez a nyák készítés fórumot ajánlanám, ott tárgyalják a vasalásos és fotózásos eljárást is, ez utóbbihoz a tele-work.hu-n a lap alján találsz videót, a többi ilyen jellegű kérdést az említett fórumon tedd fel, de csak miután kicsit végignézted.
(#) icserny válasza Dubi hozzászólására (») Nov 24, 2008 /
 
Nézz körül a www.microchip.com és a www.chipcad.hu honlapján, s döntsd el, hogy mire van szükséged!

A PICkit2 starter kit kezdésnek jó, minimális prototípus felületet is ad, s a PICtail bővítőkártyákhoz illeszkedő csatlakozójához természetesen próbapanelt is csatlakoztatkatsz.

De:
1. A panelen található PIC16F690 C-ben csak "third party" (CCS, Hi-Tech stb) fordítókkal programozható C nyelven.
2. A debug-olást nem támogatja

Ha ezek tudatában döntesz a megvásárlása mellett, akkor nem fogsz csalódni. A PICkit2 pedig - mint programozó és debugger, illetve kommunikációs segédeszköz a későbbi fejlesztésekhez is jól használható.
(#) kompakt hozzászólása Nov 24, 2008 /
 
Sziasztok a segitségeteket szeretném kérni. Találtam egy oldalt ahol fent van egy wav player http://www.sfcompiler.co.uk/wiki/pmwiki.php?n=SwordfishUser.SDMMCWavPlayer

s a pic tartalma is fent van mint szöveg a kérdés az hogy ezt mivel tom hex re forditani *.bas a forrás természetesen ez sem fileban van hanem a httml be irva. A pic 18F452 előre is köszönöm. Pickit2 égetőm van .
(#) Norberto válasza kompakt hozzászólására (») Nov 24, 2008 /
 
Lehet, hogy a Swordfish Compiler nevű fordítóprogrammal lehetne PIC számára emészthető formába "önteni"?

Ugyanis egész véletlenül ez a projekt ennek a fordítónak a honlapján található, mint bemutató-projekt.
(#) mrfencer válasza watt hozzászólására (») Nov 24, 2008 /
 
Üdv Újra!

Tartottam egy kis szünetet, áttévedtünk Amsterdamba :smoke: Újult erővel programozok. Rögtön ellentétbe is keveredtem a konzulensemmel Megirtam a progit, ő azt mondja, hogy a feltétel végén ne a startra ugorjak, hanem menjen végig a progin. De ha már egyszer teljesült a feltétel miért menjek tovább? Nem értem.
Pl a GO_LM igy néz ki:
  1. GO_LM
  2.          bsf    LM
  3.          goto  start
(#) watt válasza mrfencer hozzászólására (») Nov 24, 2008 /
 
Hú! Mi sem akarunk összetűzésbe keveredni a konzulenseddel, ezért most hallgass rá, és menj végig. Nem sok értelme van, ill. majdnem mindegy, de akkor legyen neki!
(#) trudnai válasza mrfencer hozzászólására (») Nov 24, 2008 /
 
Amszterdamba mentetek? Nagyon fustolsz...

Nyilvan ugy erthette a tanarod, hogy nem illik minden feltetel agbol a ciklus elejere ugralni, hanem egy ciklusnak kell lennie, es az elagazasok mind ugyanoda, a ciklus vegere kell kikossenek. Nehez elmagyarazni, megprobalom lerajzolni:
  1. (start)
  2. +----------------> | <----------------------+
  3. |                  | <----------------+     |
  4. |              <FELTETEL>             |     |
  5. |            /     |     \            |     |
  6. |           /      |      \           |     |
  7. |  +--------+  +-------+  +--------+  |     |
  8. |  | GO_LM  |  | GO_RM |  | GO_xxx |  |     |
  9. |  +--------+  +-------+  +--------+  |     |
  10. |      |           |           |      |     |
  11. +------+           |           +------+     |
  12.                    +------------------------+

Azert ebbol a Moriczka rajzbol erzekelheto, hogy kicsit bonyas az ugy + ha valahol valtoztatni kell akkor az osszes helyen at kell vezetni stb, szoval bonyas. Helyette:
  1. (start)
  2. +----------------> |
  3. |                  |
  4. |              <FELTETEL>
  5. |            /     |     \
  6. |           /      |      \
  7. |  +--------+  +-------+  +--------+
  8. |  | GO_LM  |  | GO_RM |  | GO_xxx |
  9. |  +--------+  +-------+  +--------+
  10. |           \      |      /
  11. |            \     |     /
  12. |            +-----------+
  13. |            | cikl.vege |
  14. |            +-----------+
  15. |                  |
  16. +------------------+

Igy mar sokkal egyszerubb az ugy, nem? Szerintem erre gondolt a tanar, de azert rajzold le neki es kerdezd meg hogy tiszta legyen.
(#) icserny hozzászólása Nov 25, 2008 /
 
Muvium-mal (www.muvium.com) próbálkozott már valaki? Érdekesnek látszik, csak még nem világos, hogy pontosan mire is jó. A dokumentációja nem túl olvasmányos, a wiki oldalát meg feltörték, így nehéz rajta eligazodni.
(#) delmur82 hozzászólása Nov 25, 2008 /
 
Sziasztok!

Lenne egy olyan kérdésem hogy lehet e olyat programozni PIC - be és ha igen hogyan hogy egy véletlenszámmal töltök fel egy regisztert, és ha az a regiszter leszámolt akkor újra feltöltöm egy véletlenszámmal és igy tovább. Azt szeretném elérni hogy mondjuk egy led véletlenszerűen villogjon ne pedig egyenletesen. (vibráló neon effekt.) Nagyon barón nézne ki.
Köszi a választ
(#) kobold válasza delmur82 hozzászólására (») Nov 25, 2008 /
 
Nem igazi véletlenszám-generátort, de valami olyat viszonylag egyszerűen lehet készíteni. A belső RAM-terület véletlenszerű értékeket vesz fel induláskor, abból kiolvashatsz egy byte-ot; aztán ez alapján kiolvasod a programmemória adott részét (ha a RAM-ból két byte-ot olvasol ki, és azok címzik meg a programmemóriát, még jobb). Aztán, ha megvan ez a lépés is, újra olvashatsz egy-két byte RAM-ot, csinálsz (mondjuk a bitek állásástól függően) pár összeadást, kivonást, XOR-t, vagy akármit, és végeredményként elég összevissza (álvéletlenhez hasonló) értékeket kapsz.
(#) bbalazs_ válasza kobold hozzászólására (») Nov 25, 2008 /
 
Vagy az AD bemenetre kotsz egy hosszabb drotdarabot es kiolvasod az also biteket...
(#) Thowra hozzászólása Nov 25, 2008 /
 
Üdv mindenkinek!
Nagy szükségem lenne egy olyan progira/doksira ami tartalmaz léptető motort. Egy 16F628A val szeretném megoldani a dolgot, cosc be tervezem a progi többi részét. Sajnos eddig nem jutottam sokra, pedig elég egyszerűnek tűnt a dolog. A tekercsek közös pontja - ra a maradék 4 drót + ra mégpedig 1, 1 és 2, 2, 2 és 3, 3, 3 és 4, 4, 4 és 1 szerint kapcsolgatva. A progi amit csináltam ledekkel ok de a motor nem nagyon szereti.
Mi lehet a gond? Van esetleg valakinek kész project motorvezérlésre? A motorok 12V os unipoláris motorok.
Előre is köszönöm.
(#) gulasoft válasza Thowra hozzászólására (») Nov 25, 2008 /
 
Hát a led meg a 12V.os motor között igen nagy különbség van!
Kéne valami meghajtót tenni a motor és a pic közé, diódás viszáram védelemmel, és akkor talán menni fog.
Az én léptető motorjaim simán megeszik a 3A-t induláskor, ekkorára tervezz minimum (hacsak nem valami kis semmire nem jó fejléptető motor)
(#) gulasoft válasza gulasoft hozzászólására (») Nov 25, 2008 /
 
Egyébként én az Elektro Konthánál vettem olyan panelt, aminek csak a jelet kell adni és lépteti a mototort előre hátra. Szerintem kezdésnek az is jó, és igazából két lábat foglal az egyik a jelet adja a másik az irányt.
(#) Thowra válasza gulasoft hozzászólására (») Nov 25, 2008 /
 
Üdv!
Tetem meghajtó fokozatot 4 db tranyóval és védődiódával csak az előbb lemaradt. A ledeket a motor helyére kötöttem ellenállatal.
Tudsz linket a panelről?
(#) gulasoft válasza Thowra hozzászólására (») Nov 26, 2008 /
 
Nem tudok linket. Bemész a Konthába motorvezérlő kittként árulják. Esetleg este fényképet, de azzal sokra nem mész.
(#) Thowra válasza gulasoft hozzászólására (») Nov 26, 2008 /
 
Ok, köszönöm az infót.
Következő: »»   346 / 1319
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem