Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   811 / 1320
(#) Hp41C válasza szepesg hozzászólására (») Okt 4, 2010 /
 
Szia!

A leggyorsabb a párhuzamos adatkapcsolat - programból néhány utasítás. Sebesség szempontjából a következő az SPI - 10..20MHz órajellel működtethető D/A konverterek is kaphatók. A leglassabb az I2C, a legtöbb I2C-s áramkör maximum néhány MHz -es órajellel működtethető.
Az I2C-hez 2, az SPI-hez 3, a párhuzamos kapcsolathoz több, mint 16 vezeték kell (16 adat + WR + CS).
(#) googa hozzászólása Okt 5, 2010 /
 
Sziasztok! Ha valaki ráér egy kicsit tudna mutatni egy C-s SPI írás/olvasás példaprogramot, linket? Nagyon köszönöm előre is! Bocsánat a hányavetiségért! goo

Szerk.: 18-as családhoz kellene...
(#) cNobody válasza googa hozzászólására (») Okt 5, 2010 /
 
Milyen C? Esetleg talán nézd meg az általad használt fejlesztő rendszer helpjét!

Amit én használok a mikroC Pro -t abban így néz ki: Bővebben: Link
(nagyon bonyolult: Soft_SPI_Read(), Soft_SPI_Write() )

esetleg nem szoftveres: Bővebben: Link
(#) googa válasza cNobody hozzászólására (») Okt 5, 2010 /
 
Küldtem egy privát üzit. A kérdés pedig jogos, HiTech C-t használok időkorlátos demo-t. Köszi!
(#) cNobody válasza googa hozzászólására (») Okt 5, 2010 /
 
Válasz PM ment.
(#) icserny válasza googa hozzászólására (») Okt 5, 2010 /
 
A www.reesemicro.com címen mindent megtalálsz (elsősorban a Lecture notes és Book C-code examples javasolható).

SPI.pdf
    
(#) mrobi hozzászólása Okt 5, 2010 /
 
Üdv. Olyan problémám lenne hogy ha beprogramozom a pic-et akkor a portb0-án ad jelet. De mindegy hogy milyen programot írok neki mindig ugyanez a probléma. 16f628-ról van szó. Pic-et már kicseréltem. Azzal se megy.
(#) bbalazs_ válasza mrobi hozzászólására (») Okt 5, 2010 /
 
Hmmm...csalafinta...szerintem el sem indul.

Es ha semmit se programozol bele akkor ad-e a portb0 jelet?

Igy elso olvasasra elegge 'csereljen felhasznalot' feelingem van.

Azert kicsit tobb adat kellene. Mondjuk milyen kornyezetben van a PIC, milyen orajelre allitottad, milyen kvarcot hasznalsz, mik a fuse bitek allapotai, milyen nyelven akartad prgramozni, ellenorizted-e beegetes utan, stb, stb.
Az adatlapban megnezted, mik a portb0 beallitasai es problemai?
(#) mrobi válasza bbalazs_ hozzászólására (») Okt 5, 2010 /
 
Hát igen. Felhasználót kellene cserélni. Kicsit megtréfált az MPLAB. Idáig volt egy külön mapáám ahova mentettem. És most pedig az MPLAB alap mappájába mentette. Én meg rossz hex-et töltöttem be.
(#) oleg53 hozzászólása Okt 6, 2010 /
 
Sziasztok!
Eddig csak 16f505-öst használtam, most kezdek egy 16F887-essel, és egy világ kezd bennem összedőlni. Mikor láttam, hogy valami nem stimmel, tesztprogit írtam, és azzal kerestem a hibát.
Ledekre tettem ki regiszterértékeket, és eddig ezt tudom:
A főciklus fut, nem következik be sem watchdog reset (ki is van kapcsolva), sem Brown out reset.
A Timer0 rendesen körbefut.
INTCON-ban GIE, PIE, és T0IE is biztosan folyamatosan 1.
A T0IF is egybe áll, amikor túlcsordul a Timer0.
A megszakítási rutin a 0x004-es szónál kezdődik, és ha valahonnan call-lal hívom, akkor el is indul.

Mindezek ellenére sosem hívódik megszakítás!

MPLAB-ban szimulálva tökéletesen működik, de a gyakorlatban teljesen olyan, mintha tiltva lenne.

Van valami spéci trükk, amiről tudnom kéne?
Már az is megfordult a fejemben, hogy selejtes az IC. De hát most használtam először, és nem kapott túlfeszültséget. A tápfeszültség 5V (akkuról), a két Vdd és a két Vss rendre összekötve, van rajtuk 100µF és 100nF is.
Ic prog-ot használok egy házi gyártmányú külső tápfeszültséges JDM klónnal. Az MCLR lábra 12.5V jut égetés közben. Mivel nincs az ic progban 887-es, így 877-esként írom. Ez lehet a baj? Valamit rossz helyre éget be? Vagy a törléssel tettem volna benne kárt?

A tesztprogi már minden trükkel tele van, de sehogy sem jó. Majd visszaegyszerűsítem, és felteszem azt is.

Előre is köszi a segítséget.
Üdv!
(#) potyo válasza oleg53 hozzászólására (») Okt 6, 2010 /
 
Az lehet a gond, hogy 877-ként írod, és a kettő között vannak különbségek. Mindenképpen 887-ként kell írni, keress olyan programot, ami tudja (talán watt programja is tudja, nézz szét a honlapján).
(#) Hp41C válasza oleg53 hozzászólására (») Okt 6, 2010 /
 
Szia!

A programozásukban van eltérés a 16F877, a 16F877A és a 16F887 között. Ha jól emlékszem az egyszerre beírandó utasítások számában van a lényegi eltérés (16F877 -1 szó, 16F877A, 16F887 - 8 szó), ezenkívül a 887-esnek két konfigurációs szava van...
(#) oleg53 válasza Hp41C hozzászólására (») Okt 6, 2010 /
 
Nahát. Köszönöm szépen. Ez gyors volt.
Watt honlapja alapján simán lehet, hogy a JDM az egyik bűnös. Az azonban furcsa, hogy a futás alatti visszajelzések tökéletesek, egyedül csak a megszakítás nem akar létrejönni. Nem tűnik égetési hibának, bár ki tudja.
Viszont most jutott eszembe, hogy lehet, hogy egyszer hozzáért a 12.5V a 2-es lábhoz. Bár ez már a hiba észlelése után lehetett. Előtte biztosan nem. De hogy pont csak a megszakítás rendszer haljon meg... Az nekem furcsa.
Volt már hasonló gondja valakinek?
Még egyszer köszönöm!
(#) watt válasza oleg53 hozzászólására (») Okt 6, 2010 /
 
Ha a JDM-el tudtál égetni korában, akkor nem hiszem, hogy azzal lenne a baj és az is ellene szól, hogy bizonyos programrészek jól működnek.
A gond ott azzal lesz amit Hp41C írt, a két konfigurációs szóval. Az égetés nem biztos, hogy gond, mert ha jól emlékszem lehet szavanként is égetni és 8-asával is. Lényeg, hogy olyan égetőprogram kell, ami ismeri a 887-et.
(#) icserny válasza oleg53 hozzászólására (») Okt 6, 2010 /
 
Különböző fórumokon a PICpgm programot ajánlják a PIC16F887 JDM-mel (vagy Olimex PG2C-vel) történő programozására.
(#) oleg53 válasza icserny hozzászólására (») Okt 6, 2010 /
 
Hát igen, a CONFIG2 nincs sehol. A CONFIG1-nél ellenőriztem, hogy az ic prog milyen flag-eket pipál be. A 877-esnél ugyan más-más jelentése van a biteknek, de némi összehasonlítás után kiderült, hogy jók vannak bepipálva. Csak sajnos a CONFIG2-ben sincs semmi olyan, ami a megszakításra utalna. Na de mindegy. Elvileg este tudok újra kísérletezni, és kipróbálom PICpgm-et.
(Amúgy szóljatok, ha sokat szövegelek.)
Köszi!
(#) Hp41C válasza oleg53 hozzászólására (») Okt 6, 2010 /
 
Szia!

Tölstd fel a programod forrását, abból könnyebb segíteni. Ha nem szeretnéd az egészet nyilvánossá tenni, törölj ki mindent belőle, csak annyi maradjon, ami reprodukálja a hibát.
(#) koczka hozzászólása Okt 6, 2010 /
 
Sziasztok

Kezdőknek melyik irodalmat ajánljátok?
(#) summer hozzászólása Okt 6, 2010 /
 
Sziasztok !

A segítségeteket szeretném kérni. Némi támpontra vágyom Van egy pic-es kazánverlő áramköröm, és ha a szomszéd helységben felkapcsolom a fénycsöves világítást, akkor újraindul....

Tippek?
(#) watt válasza koczka hozzászólására (») Okt 6, 2010 /
 
Nézz fel az oldalamra...
(#) watt válasza summer hozzászólására (») Okt 6, 2010 /
 
Rossz a tápja, nincs megfelelően hidegítve a PIC lábánál, stb.
(#) Balogh Zsolt hozzászólása Okt 6, 2010 /
 
Sziasztok !
Lehet hogy elcsépelt lesz ez a kérdés, de keresgéltem fórumokon és nem találtam teljeskörű leírást hogyan kell egy magamfajta kezdőnek aki még nem csinált pic égetést.
Nem tudom milyen program a legideálisabb?
hogyan lehet venni csinálni égetőt?
hogyna kell égetni?
Szóval valaki lenne olyan kedves ezt leírni lépésről lépésre ? mert az nagyon jó lenne.mert még nem értettem meg és szeretnék elkezdeni ilyennel is foglalkozni.
Köszi előre is!
(#) potyo válasza Balogh Zsolt hozzászólására (») Okt 6, 2010 /
 
watt honlapján nézelődj.
(#) Balogh Zsolt válasza potyo hozzászólására (») Okt 6, 2010 /
 
Köszi megnézem!
(#) icserny válasza Balogh Zsolt hozzászólására (») Okt 6, 2010 /
 
Hogy hogyan kell csinálni, az attól függ, hogy mivel csinálod.

Az alábbi oldalakon találsz User Guide néven leírást:
www.microchip.com/pickit2
www.microchip.com/pickit3
www.microchip.com/icd3

Vannak olyan Starter Kit-ek, amelyek programozóval egybe vannak építve. Példáulaz egyik legolcsóbb:
www.microchip.com/microstick

Van olyan lehetőség is, hogy valaki beleéget egy bootloadert, és annak segítségével önprogramozó módon történhet a programletöltés. Az USB-s starter kit-ekben például általában benn figyel a HID bootloader.
(#) robing16 hozzászólása Okt 6, 2010 /
 
Sziasztok!

Előrehaladást sikerült elérni DMX terén, most a feldolgozáson ügyködök, és nem tudom, miért nem működik...

A leírás szerint az egész csomag elejét úgy deríthetem fel, hogy egy BREAK, vagyis 0 szintű 2 bájt hosszú jelet küld a vezérlő. Ezt elméletileg az USART Frame Error Bit-el tudom érzékelni, ám, nem működik.

Tehát figyeltetem az RCSTA Regiszter FERR nevű bit.2-es értékét...
A port-ot Olvasásra állítottam, inicializáltam a modult, és feltételnek adtam, hogy ha van Frame Error, akkor egy másik porton legyen 1 a jel, ha nincs, akkor legyen 0...

Ezt a portot oszcilloszkópon figyeltem, de sajnos nem történt semmi...

Van valakinek ötlete?
Előre is köszönöm...
(#) watt válasza robing16 hozzászólására (») Okt 7, 2010 /
 
Kódrészletet tudsz adni?(csatold fájlmellékletben, ha hosszú!) Nem említetted milyen PIC-el dolgozol(USART, EUSART?)
(#) Muti hozzászólása Okt 7, 2010 /
 
sziasztok!
Kezdő PIC-es vagyok, és szeretnék egy sztringet küldeni RS232 porton. 16F84-et sikerült megmozgatnom, és égetni csont nélkül. Most a netről vettem le az UARTInt.asm, 16UARTI.asm és társaikat, melyek 877-re készültek. átírtam 628A-ra, és az MPLAB szimulátorával működik, látszik, hogy mozog a kimenet.
Azonban, ha a szokásos módon be akarom égetni, az égető beolvasáskor panaszkodik, h "No config word in file, or file doesn't matchto the controller type" Megnéztem, mindenütt (az égetőben is) a 16F628A van beállítva. MPLABban próbáltam a config biteket felülíratni, h ne a kódban esetlegesen rosszul beállítottat használja. (Egyébként beégeti rendesen, benne van a hex fájl, de nem működik).
1. Mi lehet a baja?
2. Hogyan kell kijelölnöm a TX, RX lábakat (MAX232-vel illeszteném kifelé)?

Köszönettel venném, ha vki továbblökne.
Üdv, Muti

Kód.txt
    
(#) lidi válasza Muti hozzászólására (») Okt 7, 2010 /
 
Ekkora szöveget inkább mellékletként tölts fel, ne hozzászólásba ömlesztve. Ugye nem 16F84 -be akarsz 628 -as programot tölteni ?
(#) icserny válasza Muti hozzászólására (») Okt 7, 2010 / 1
 
Ha 628A, akkor miért nem ezzel a mintapéldával próbálkozol? (Mellesleg az is kiderül belőle, hogy a config biteket hogyan lehet programban megadni.)
Következő: »»   811 / 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