Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   1 / 1320
(#) G-Lex hozzászólása Jan 9, 2006 / 5
 
Na * ide írkáljuk a PIC-es dolgokat.

Első kérdésem az lenne, hogy úgy látom a 16F877A PIC lenne nekem a legidálisabb, az rendelkezik elég porttal na meg az I2C sem utolsó... Ezt a PICet lehet progizni az ICD-vel?
(#) Magor válasza G-Lex hozzászólására (») Jan 9, 2006 /
 
Szia!

Természetesen lehet programozni vele. Igazából kimondottan a 16F87x családhoz lett kitalálva az ICD. Én is így programozom fel a PIC-emet.

Remélem tudtam segíteni.
Ha valami kérdésed van csak szólj!

Üdv: MaGor
(#) mspike válasza Magor hozzászólására (») Jan 9, 2006 /
 
mármint az ICD1, az ICD2-vel is lehet progizni, de azzal még jó sok mást is
(#) mspike válasza mspike hozzászólására (») Jan 9, 2006 1 /
 
De igazából ha rám halgatsz akkor inkább 18F452-essel kezded. Az szinte ugyan az mint a 16F877 még lábkiosztásra is, csakhát jóval többet tud Minden memóriája Több és ez már kezel 16Bitet is... És ha késöbb belevágnál egy kicsit PIC - C nyelvbe akkor a 18-as kell hozzá...
(#) G-Lex válasza mspike hozzászólására (») Jan 9, 2006 /
 
Köszi szépen!
Megnézem a 452-est is. Én mikroPASCAL-ban akarom megírni a progit. igaz elég nagy kódot generál, de pascalban jobban tolom mint asm-ben
(#) Csapajev válasza mspike hozzászólására (») Jan 9, 2006 /
 
Csak támogatni tudom mspike véleményét. Én ugyan Pascal és Delphi imádó vagyok, de PIC-ben nagyon hamar átáltam C-re. Főleg, ahol az időzítések lényegesek, pl. I2C, ott a C sokkal jobb. C fordító minden PIC-re van, de a 18-as családra vannak a legjobbak.

Ha pedig - még gondolatnak is szürnyű - nem PIC-et, hanem AVR-t akarsz használni, vagy 8085-t, a kód gyakorlatilag hordozható. Linux fejlesztő környezetben a C ugyancsak nagy előny.

A Pascal után a C-t elég nehéz megszokni, de azért 1-2 hét után megy. Néhány assembly kódot mindenképp érdemes megnézni, hogy legalább nagyjából értsd a memória-kezelést. Assembly-ben azonban csak úgy lehet hatékonyan dolgozni, hogy a makrókat is használod. Azok azonban nagyon elvarázsolt dolgok tudnak lenni.

Én az összes nyelvféleséget tanítottam hosszú éveken át kezdve Commodore 64-esen és kétségtelen a Pascal a legemberibb. De ez nem az egyedüli szempont. Sőt.

Üdv

Csapajev
(#) Norberto válasza Csapajev hozzászólására (») Jan 12, 2006 /
 
Sziasztok!

Valaki (BÁRKI!!!) tud nekem ajánlani pár féle assembler-t 18F szériás PIC-ekhez? Jó lett volna, ha a Tech-Tools gyártott volna már ilyet, mert profik ezen a téren, de sajnos náluk nem láttam fordítót.

Tehát egy 18 szériás fordítóra lenne szükségem assembly nyelvre (lehet, hogy C-ben egyszerűbb, stb, meg könnyebb is, de én utálom a C-t, az ASM-et viszont imádom...).
(#) Pavel válasza Norberto hozzászólására (») Jan 12, 2006 /
 
Hi!

MPLAB! (www.microchip.com), szerintem ennél jobb nem kell....
(#) jon@ válasza Pavel hozzászólására (») Jan 20, 2006 /
 
Sziasztok!

egy 16F627 es PIC et szeretnék a sorosportra csatolni, csak nem nagyob hajlandó működni. egy TI gyártmányú max232N -thasználnék, úgy kötöttem me ahogy az adatlapban volt, 1µF os kondikkal. Ha DC mérésre állítom a multimétert akkor a PIC Tx lábán kb 1,5 V van. A max ehhez tartózó kimenetén meg kb -2,5V.
Egy egyszerű programmal próbálnám ki ami egy A t küld folyamatosan. Milyen programot kellene a PCn használnom? Eddig a Bray"s terminal meg Realterm nevűeket próbáltam. Előre is köszi.
(#) Manyoc válasza jon@ hozzászólására (») Jan 20, 2006 /
 
Használt már valaki MAX233A-t soros illesztésre? Azért érdekelne,mert az adatlap szerint ennek nem kell külső kondi és egyébként megegyezne a 232vel
(#) jon@ válasza jon@ hozzászólására (») Jan 21, 2006 /
 
Egyébként két PIC között működött az átvitel. Akkor vagy a használt programban vagy a max körül van probléma. Tud valaki segíteni??
(#) Gory válasza jon@ hozzászólására (») Jan 22, 2006 /
 
Milyen terminálprogramot használsz? A windowsos hyper terminal gatya, lehet azzal vana baj. Tudom ajánlani pl a Docklight-ot helyette.
(#) jon@ válasza Gory hozzászólására (») Jan 22, 2006 /
 
Kipróbáltam a Docklightot, de se kép se hang...Nem hiszem most már, hogy 3 programból egysem lenne jó. Esetleg van valami módszer amivel megállapítható, hogy a max normálisan működik?
Ha nyugalom van a porton akkor a Tx és az Rx is -10 V on kell hogy legyen?
A kábeleket is már sokszor ellenőriztem.
(#) Gory válasza jon@ hozzászólására (») Jan 22, 2006 /
 
Akkor lehet hogy jó minden csak a sorosport csatlakozóra kötötted rosszul a dolgokat. Pl a 2 és a 3-as összecserélése lehet gond. Vagy a GND valahogy rossz helyre lett kötve(mondjukaz 1-esre). Ennek nézz utána. A csatin a 2 és a 3 a TX és RX (nemtudom fejből melyik melyik) és az 5 a GND. a max-ról jövő TXout-ot kell a gép RX-el összekötni és fordítva. Ha nincs a csatlakozódon számozás esetleg valamit itt ronthattál el.
(#) Tomee válasza jon@ hozzászólására (») Jan 22, 2006 /
 
A realterm az szerintem tők jó. Nézd meg az rx és tx elcserélését! RX => TX ; TX => RX

itt nézd meg. Alul van egy pár soros port rutin.
(#) jon@ válasza Tomee hozzászólására (») Jan 22, 2006 /
 
Köszönöm a segítséget Nektek, mostmár működik a Realterm el is. Én eddig kényelmesen abban a tévhitben éltem, hogy a 3 as láb az Rx . Szóval átnéztem a kábel bekötését egy rajz szerint újra, és fel voltak cserélve.
(#) mspike válasza jon@ hozzászólására (») Jan 22, 2006 /
 
Bocsánat, hogy ide rakom, de ezért nem nyitok új topicot. Van egy úgynevezett PIC mikro WEBRING, ami igazából úgy fest, hogy ezernyi angol PIC-el foglalkozó lapot fog össze, talál érdemes itt körülnézzni mindenkinek aki PIC-kel foglalkozik. PIC (és bocsi, hogy többször, de jó ha sokan látják !!!)
(#) st3 válasza mspike hozzászólására (») Jan 24, 2006 /
 
Sziasztok!
Nekem is lenne egy kérdésem. Nem vagyok járatos PIC ügyben, de meg kéne tanulni. Ma valaki felajánlott nekem egy eszközt,programozót stb állítólag a Conradnál vette két hónapja. Csak rövid ideig láttam de egy velleman gyártmányú kütyü. Ismeri valamelyikőtök? Érdemes megszerezni? A srác elcserélné egy olyan dologért, ami nekem semmibe se került, szal ingyen lenne. Ő szerzett egy komolyabbat-legalábbis ezt mondta.
Szóval "megvegyem", jó lesz kezdetnek?
(#) mspike válasza st3 hozzászólására (») Jan 24, 2006 /
 
Kezdetnek bármilyen progizó jó, és ha késöb akarsz gyártani mondjuk egy ICD2-t, ami szerintem a legjobb tanuláshoz, akkor már lesz mivel felprogizni annak a vezérlő PICjét...
(#) st3 válasza mspike hozzászólására (») Jan 25, 2006 /
 
Köszönöm. Akkor nyélbe ütöm az üzletet.
(#) Tomee válasza Tomee hozzászólására (») Jan 29, 2006 /
 
Vajon miért tünik el a 2x20 karakteres alfanumerikus lcd kijelzőmből egyik napról a másikra pár sor? akármit csinálok vele ( ütögetem, ki-be kapcs) semmi sem változik. Miért van ez? Eddig semmi baja sem volt, még csak 1 éves.
(#) Tomee válasza Tomee hozzászólására (») Feb 2, 2006 /
 
Nem akartam új topicot nyitni azért írom ide!
Egy teljes i2c kommunikáció szeretnék kialakítani két vagy több pic között. (Master-Slave) A teljes alatt azt értem, hogy start - device cím - datan - stop v. start device cím - datan - restart - device cím – slave küld. Inkább az utolsóval lenne egy kis problémám. Írni tudom a slave pict csak olvasni nem. Mit kell figyelni, hogy először lezajlik a kommunikáció első fele majd esetleg restart után meg olvasni, szeretne a master?
Egy db ciklusban szándékozom megcsinálni, de nem jó.
Úgy gondoltam, hogy ha stop jön akkokr már biztos, hogy nem jön több data, ha meg start van akkor meg restart van és küldeni kéne... De nem jó...
Mi lenne benne a hiba?

  1. rec
  2.                 bank1
  3.                 btfss   SSPSTAT,0               ; buffer ful?
  4.                 goto    $-1                     ; nem
  5.                 bank0
  6.                 movfw   SSPBUF                  ; igen (cim olvasása mert SSPSTAT,0 csak akkor lesz nulla, ha kiolvasuk)
  7.                 bank1
  8.                 btfsc   SSPSTAT,2               ; R/W = 0?      
  9.                 goto    rec_tx                  ; R/W=1 => adatot küld
  10.                                                 ; R/W=0 => adatot vesz
  11.                 btfsc   SSPSTAT,0               ; buffer ful?
  12.                 goto    $-1                     ; nem
  13. rec3
  14.                 bank0
  15.                 movfw   SSPBUF                  ; igen
  16.                 movwf   temp1                   ; vett adat = temp1
  17.                 bank1
  18. rec2
  19.                 btfsc   SSPSTAT,3               ; star bit=1 ?
  20.                 goto    rec
  21.                 btfsc   SSPSTAT,4               ; stop bit=1 ?
  22.                 goto    rec_end
  23.                 btfss   SSPSTAT,0               ; buffer ful?
  24.                 goto    rec2
  25.                 bank0
  26.                 movfw   SSPBUF                  ; igen
  27.                 movwf   temp2                   ; vett adat = temp2
  28.                 movfw   temp1                   ; temp1 - cime
  29.                 movwf   FSR                     ; FSR feltötése temp2 értékével
  30.                 movfw   temp2
  31.                 movwf   INDF                    ; Az FSR által hivatkozott reg-t ezen keresztül érjük el.
  32. rec4
  33.                 bank1
  34.                 btfsc   SSPSTAT,3               ; star bit=1 ?
  35.                 goto    rec
  36.                 btfsc   SSPSTAT,4               ; stop bit=1 ?
  37.                 goto    rec_end
  38.                 btfsc   SSPSTAT,0               ; buffer ful?
  39.                 goto    rec4                    ; nem
  40.                 goto    rec3
  41. rec_tx
  42.                 bank0
  43.                 movfw   temp1                   ; memória rekesz címe
  44.                 movwf   FSR
  45.                 movfw   INDF                    ; memória rekesz tartalam
  46.                 movwf   SSPBUF
  47. rec_end
  48.                 return



Remélem azért érthető volt, hogy mire gondoltam?
(#) tibcsi válasza mspike hozzászólására (») Feb 6, 2006 /
 
Hello !
Nekem is akad egy furcsa problemam.
Velleman programozo panelt hasznalok az egeteshez. Kitunoen mukodik. Amikor viszont ICSP-en keresztul akarok egetni, "iras hibat" kuld. A Velleman panel es az en panelem szalag kabellel van osszekotve (kb 25 cm, 5 ér).
Csinaltam egy olyan probat, hogy a PIC-et benne hagytam a Velleman panelbe, de becsatlakoztattam a ICSP kabelemet uresen logva a masik veget. Akkor minden OK. Viszont ha PGD,PGC vezeteket egy kicsit is meghosszabitom maris jon a hiba. Azaz nem mukodik az egetes.
Szerintem mivel kozel van egymashoz a ket vezetekek, valami "interferencia" jon letre.
Hogy lehetne ezt megoldani?
Szeretnem meghagyni a szalag kabelt.
Remelem ertheto volt e hiba leirasom.
(#) eSDi válasza tibcsi hozzászólására (») Ápr 13, 2006 /
 
Helló! Hogyan tudnám kiszámolni a Timer0 túlcsordulási idejét ha előosztót használok. 4MHz-re kellene számolni.
mert ha csak úgy elosztom az 1Mhz-et(osc/4) 256-al akkor 3906Hz-nek kellene kijönnie, de a valóságban sokkal lassabb.
(#) jon@ válasza eSDi hozzászólására (») Ápr 13, 2006 /
 
Hali

Az option reg ben a WDT hez kell rendelni az előosztót, ha nem akarod használni mert egyébként asszem 1:2 a legkisebb amit be lehet állítani. Egyébként meg:
1/(0,000001*előosztó*255)
(#) iamrob válasza eSDi hozzászólására (») Ápr 13, 2006 /
 
Hali!

Ha előosztót használsz, akkor azzal is oszd el. A 256 pedig csak 8 bites TMR0-nál igaz, 16 bitesnél 65536.
(#) eSDi válasza jon@ hozzászólására (») Ápr 13, 2006 /
 
kösz! alakul de nem az igazi. így 15Hz re jönne ki, de még ennél is lassabb valójában. Azt ne írjátok hogy mit kell beállítani, azt tudom.
(#) Ven válasza eSDi hozzászólására (») Ápr 13, 2006 /
 
Hi!
Valaki itt a topic eleje fele olyant írt, hogy C-ben pontosabban lehet időzíteni, ezért nagyon jó I2C-hez. Nálam nem megy a pontos időzítés. A beállított Delay függvényt hajszál pontosan végrehajtja csak fordítás után elugrál még száz helyre (asm-ben nézve) és így borul fel az I2C-hez szükséges pontos időzítés. Ki milyen fordítot használ 16f és 18f családhoz?
(#) iamrob válasza Ven hozzászólására (») Ápr 14, 2006 /
 
Hello!

Szerintem a legjobb fordító az MPASM.
C-ben és egyéb magas szintű nyelvekben pont az időzítés és a rövid kód az, ami nem oldható meg - a két legfontosabb egy kontrollerben :yes:
Egyébként az I2C-hez miért kell pontos időzítés. Ha master vagy, akkor te adod az órajelet, ha slave, akkor az éleket kell figyelni és rögtön reagálni rájuk. :nemtudom:
(#) dilan válasza Ven hozzászólására (») Ápr 14, 2006 /
 
Assembly. :yes:
MPLAB IDE V7.30

Az én problémám az A/D pontatlansága. Arra nincs valakinek tippje?
Az értékek átlagolása nem segít (mert az átlag ugyanúgy ugrál), sleep után meg nem akar megszakítást adni
Következő: »»   1 / 1320
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