Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   847 / 1319
(#) edison14 hozzászólása Nov 28, 2010 /
 
Hali.

Volna egy két kérdésem. Az első az, hogy PIC16F628A-s mikrovezérlőnél hogyan tudom beállítani a belső oszcillátort? A FOSC2-t kellene 1-esbe állítanom a FOSC0-át és a FOSC1-et pedig 0-ba, de ezt hogyan tehetem meg a konfigurációban? A másik kérdésem, hogy miért lehet az hogy a programba beírom a konfigurációs beállításokat és kidob egy csomó hibát rájuk pedig mindent az adatlap alapján írtam bele. Csatolom a konfigurációs beállításokat és a hibákat.

A segítségeteket előre is köszönöm.

hibák.txt
    
(#) fokti Attila válasza edison14 hozzászólására (») Nov 28, 2010 /
 
Erre a kérdésre ma már érkezett válasz :
[/quote]Szia!

A kontrollrenek két (vagy több) konfigurációs szava van, így az első paraméter a konfigurációs szót kell azonosítsa:

1.
__CONFIG _CONFIG1,_CP_OFF & _WDT_OFF& _LVP_OFF & _XT_OSC[/code]
(#) edison14 válasza fokti Attila hozzászólására (») Nov 28, 2010 /
 
Szia.

Bocs hogy kérdeztem, de fogalmam sem volt hogy pont ez lesz a megoldás. És ezt most akkor hogyan van? Ezt nem találom meg az adatlapban és még ilyennel nem is találkoztam. A suliban simán írtuk de lehet hogy azok régebbi PIC-ek voltak. Esetleg ha csak én nem kerestem jól az adatlapban pontos címet tudnál mondani?
(#) Lozsa hozzászólása Nov 28, 2010 /
 
Sziasztok!

Az volna a kérdésem, hogy az MPLAB nem képes a C kódot rendesen szerkeszteni? Arra gondolok, hogy némi támogatást nem tud nyújtani a szerkesztéshez?
pl: automatikusan teszi a TABulátorokat a megfelelő mennyiségben a nyelvi sajátságoknak megfelelően, hogy átlátható legyen és ne nekem kelljen vele bajlódni?
Ill. olyan nincs benne, hogy függvények összecsukása, vagy pl függvénytörzsek kapcsos zárojeleinek automatikus párosítása ha rajta állok az egyiken?

Marha bosszantó, hogy nekem kell kimazsolázni, hogy melyik hova tartozik...

Van esetleg rá mód, hogy külső C szerkesztőben szerkesszek?

Ti hogyan hidaljátok át az efféle problémákat?
(#) edison14 válasza Lozsa hozzászólására (») Nov 28, 2010 /
 
Hali.

Szerintem mindenkinek a saját érdeke, hogy a programja jól átlátható legyen és hogy el tudj rajta igazodni valamint szerintem az is szempont, hogy ha valakinek megmutatod a programot akkor ki tudjon rajta igazodni és tudja hogy mi hova tartozik. Én inkább megírom lassabban a programot de a fő szempotom hogy helytakarékos, jól működő és átlátható programot készítsek.
(#) Lozsa válasza edison14 hozzászólására (») Nov 28, 2010 /
 
Ebben igazad van , csak már hozzászoktam, hogy a VisualStudioban gyönyörűen struktúrálja a kódot, és tökéletesen átláthatóvá teszi.
Amikor pedig át kell írni egy részt akkor egy pillanat alatt átstruktúrálja.

Sok egymásba ágyazott feltételes kifejezésnél könnyen belekavarodik az ember, hogy mi hova tartozik amikor átír egy kis részt.
(#) fokti Attila válasza Lozsa hozzászólására (») Nov 28, 2010 /
 
A kapcsos zárójeleket párosítja ha be van állítva a szerkesztőn:
Properties->'C' File types->Highlight Matched
függvény összecsukás: Code folding
(#) edison14 válasza Lozsa hozzászólására (») Nov 28, 2010 /
 
Hát igen. Azért ha úgy veszed akkor a Visualstudio és az MPlab is teljesen más.
(#) Seclusion hozzászólása Nov 28, 2010 /
 
Sziasztok!

Olyan problémám akadt, hogy a 18F2550-esem lábaira ha terhelés nélkül rámérek, vagy terhelés alá kerül bármely lába ( b és c port esetén), elveszti a feszültséget... A terheletlen lábon az elején mérem az 5 voltot, majd leesik 0-ra, a többin pedig nem is mérek feszültséget (be vannak kapcsolva pedig). Áramellátás PICKiT2-n történik, ami 5 voltra van beállítva.
Van valami tippetek, hol nézzek körbe?
Köszi!
(#) icserny válasza Lozsa hozzászólására (») Nov 28, 2010 /
 
Idézet:
„Az volna a kérdésem, hogy az MPLAB nem képes a C kódot rendesen szerkeszteni?”
Nem. Ez a felhasználó dolga.
Idézet:
„Van esetleg rá mód, hogy külső C szerkesztőben szerkesszek?”
Igen, az MPLAB IDE beállításában is lehet külső szerkesztőt megadni, vagy itt van egy leírás, hogy hogyan lehet Visual Studio-ban C18 kódot írni, s egy batch fájlsegítségével az MCC18 fordítót meghívni. Azt nem tudom, hogy ennek van-e értelme.

Az MPLAB editorban be lehet kapcsolni a Code Expand opciót (jobb gombos menu, s Properties). Sok értelmét ennek sem látom.
(#) trudnai válasza Seclusion hozzászólására (») Nov 28, 2010 /
 
Mekkora a terheles? Hogyan programoztad fel a portokat?
(#) trudnai válasza icserny hozzászólására (») Nov 28, 2010 /
 
En is szeretem az auto indent modot, de sokszor vim-et hasznalok, majd vissza megyek az MPLAB alat (Alt-TAB) es ott az automatikusan beemeli a megvaltozott file-okat a sajat szovegszerkesztojebe. Ha nincs betoltva az sem baj persze, de debuggolashoz az jo. Szoval nem kell "integralni" csak hasznalni a kulsot.
(#) Lozsa válasza fokti Attila hozzászólására (») Nov 28, 2010 /
 
Köszönöm, ez így már teljesen megfelelő!
(#) Seclusion válasza trudnai hozzászólására (») Nov 28, 2010 /
 
Egy LED van kötve ellenállással (350 ohm) 4 lábra (b4, b5, b6, b7), a LED(ek)nek a földjét pedig összekötöttem, ezt egy tranzisztorral vezérelném, amit egy 45 kohm-ra állított potin keresztül hajtanék meg a PIC egyik lábáról(c7). A LEDek működnek ha 3,5 voltot kötök a tranzisztorra, tehát itt elvileg nincs probléma.
(#) fokti Attila válasza Seclusion hozzászólására (») Nov 28, 2010 /
 
Az MCLR engedélyezve van? Rendszerint úgy járok hogy engedélyezve felejtem, a felhúzó ellenállást meg kispórolom. Emiatt látszólag teljesen kiszámíthatatlan módon meg-megáll a pic (resetelődik). Pl kézzel közelítesz hozzá-megáll, erősen ránézel-megáll. Itt a fórumon jelezték a tisztelt kollégák hogy az MCLR-t le kell tiltani és/vagy felhúzó ellenállással Vdd szintre húzni.
(#) Seclusion válasza fokti Attila hozzászólására (») Nov 28, 2010 /
 
Azt megnézem, bár én bekötöttem... De előfordulhat, hogy hibáztam Pár perc, és reagálok
(#) Seclusion válasza Seclusion hozzászólására (») Nov 28, 2010 /
 
Igen... Forrasztási hiba van az MCLR lábnál... Meglátszik, hogy első áramkör Nagyon szépen köszönöm fokti Attila!
(#) Lucifer válasza icserny hozzászólására (») Nov 28, 2010 /
 
Ez csodálatos, köszönöm szépen.
(#) geri12 hozzászólása Nov 28, 2010 /
 
Üdv mindenkinek!

Sokáig gondolokodtam hová írjam mert a megoldáshoz lehetne AVR-t vagy mást is használni, de mivel zömében PIC családot használtam, szimpatikusabb ezért ide teszem fel a kérdést.

Na szóval arról lenne szó hogy szükségem volna egy Data logger-ra (Magyarul adatgyüjtő), ami serial (RS232) eszköz adatai venné, és gyüjteni egy nagyobb memóriába, ami a pichez kapcsolodna. Példának van mondjuk egy kézi hőmérő, ami serial porton keresztül veszi az értékeket. Számítógépes kapcsolat helyett pic-en keresztül egy 24C-be kerülne be az érték. Az érték nyilván nem értelmezhető, mert konvertálni kéne, de nincs szükség semmi megjelenítésre külsőleg, csak arra hogy gépre utólag beolvassam és majd ott konvertáljam programon keresztül. (avval nem lenne gond)

Kérdés:

-24C hogy lenne a legcélszerübb kiolvasni programozó nélkül, ha már tele van? Tehát lehetséges arról az RS232-ről kiolvasni, ami a gyüjtésre szolgál?

Minden ötlet segteni! Még a PIC típusa is kérdéses. Ha van valami link ami serialról olvas, majd 24C-be rögziti akkor írjátok meg.

Köszi!

Geri12
(#) potyo válasza geri12 hozzászólására (») Nov 28, 2010 /
 
Lehet, ugyanazt a portot is használni, pl. egy láb magasra húzásával jelezheted a PIC-nek, hogy most nem adatrögzítés van, hanem kiolvasás. Persze a külső áramkört is úgy tervezd meg, hogy ez ne okozzon problémát.

Vagy használhatsz pl. két soros porttal rendelkező PIC-et, esetleg USB-n keresztül pl. CDC használatával is történhet a kiolvasás. Vagy akár szoftveres soros portot is létrehozhatsz és azon keresztül olvasod ki vagy azon keresztül gyűjtöd az adatokat.
(#) kissi válasza geri12 hozzászólására (») Nov 28, 2010 /
 
Az RS232-n kétirányú kommunikációt tudsz folytatni ( + vannak "segédlábak" ), csak a szintillesztést kell megoldanod!
Gyűjtöd az adatokat és amikor kiakarod olvasni, akkor például bekapcsolás közben nyomni kell egy gombot és akkor kiküldi az adatokat! Az I2C protokollt meg lehet írni ( nem használod a belsőt ! ), vagy az RS232-t írod meg, vagy olyat PIC-et keresel ( MAPS a Microchip-nél ), ami egyszerre tudja... a lehetőségek tárháza "végtelen" ( vagy használj két PIC-et, ahogy Potyo kolléga javasolta )!

Steve
(#) watt válasza geri12 hozzászólására (») Nov 29, 2010 /
 
Nálam úgy megy, hogy soros porton keresztül(RS485, de ez mindegy, mert ugyanaz az USART) kapja egy 18F2550 a gyűjteni szándékozott adatokat és írja SPI-n kerestül egy SD kártyára, majd USB-n keresztül tudom kiolvasni a gyűjtött adatokat.
De a többi megoldás is jó, ami említve lett.

Ha a gyűjtött adatok fontosak, nem maradhat ki semmi, valamint a kommunikáció kétirányú a soros eszközzel, akkor mindenképpen külön soros csatorna szükséges a gyűjtéshez és a kiolvasáshoz.

Ha a gyűjtés kommunikációja egyirányú(csak fogadni kell a bejövő adatokat a soros eszközről, nem kell megszólítani.), akkor elvileg az RX és TX beköthető más-más helyre. Ilyenkor a PC csak a TX-et kapná, bármikor ki lehetne olvasni a tárat.
Ezzel a megoldással viszont a PC nem szólíthatja meg a PIC-et(pl. tár törlése, index alaphelyzetbe állítása stb.), azt a PIC-ben kell akkor kezelni pl. gombokkal.

Erről ha tudnál bővebben, akkor lehetne szűkíteni a megoldások tárházát!
(#) icserny válasza geri12 hozzászólására (») Nov 29, 2010 /
 
Van ilyen készen is, ötletadónak érdemes megnézni a dokumentációját. Bővebben: Link
(#) watt válasza icserny hozzászólására (») Nov 29, 2010 /
 
Ez egy host modul. Nem néztem a doksiját, de ez nem csatlakoztatható a PC-hez. (? Host- host kapcsolat nem működik, ha jól tudom... ? Csatlakozót se nagyon lehet hozzá találni készen.)
(#) icserny válasza watt hozzászólására (») Nov 29, 2010 /
 
Soros porton csatlakozik akármihez. Az USB host porthoz célszerűen egy pendrive csatlakoztatható.
(#) icserny hozzászólása Nov 29, 2010 /
 
Bővült a PIC fejlesztőeszközök kínálata!

A ChipCAD a Mikroelektronika termékeivel bővítette kínálatát.

A Sure Electronics fejlesztői kártyái között megjelent néhány új PIC24, illetve PIC32 kártya.
(#) Beachway hozzászólása Nov 29, 2010 /
 
Segítséget szeretnék tőletek kérni. Megépítettem az LTP portos IC-s égetőt is, de azzal sem járok sikerrel. Raktam a kapuk kimeneteire 1-1 LED-et is hogy láthassam kommunikál e a géppel. Olvasásnál ,Írásnál , ellenőrzésnél mind 3 led villog "össze vissza". És az áramkört külön is leteszteltem gép nélkül. Úgy működik ahogyan annak kell. Viszont ha nem teszek bele mikrovezérlőt, és elindítom az IC felismerést, akkor 12F683- nak ismeri fel a semmit. Ha beleteszem a 12F629-et figyelmeztet ,hogy nem olyan. Alaplapi LTP portot használok. A winpic800, nál mindent úgy állítottam be ahogy azt a Watt féle oldalon találtam. De a két beállításnál még is van némi eltérés. A Propic2 programozó eszköznél a port I/o biteknél a Data nekem sötét zöld, neki világos zöld, és a Datain nekem világos zöld, neki sötét zöld, és a clock nekem sötétzöld, neki pedig világos zöld. És ha kiolvasom a be nem rakott mikrovezérlőt, akkor az csupa 4575 van benne. És az ellenőrzésnél is mindent rendben talál a semminél. Engem itt valami nagyon csúnyán megvezet. Minden segítséget előre is köszönök.
(#) watt válasza icserny hozzászólására (») Nov 29, 2010 /
 
A kérdésben az a feladat, hogy a soros porton érkező adatokat el kell tárolni átmenetileg egy a kártyán lévő memóriába. Ezt az adatot később a PC-re kell tudni feltölteni.
Elvileg a pendrive-al is át lehet mozgatni a mentett adatot, ha erre gondoltál, akkor működhet, kivéve, ha nem szabad, hogy adatvesztés legyen, ami a pendrive cseréjekor előfordulhat.
(#) watt válasza Beachway hozzászólására (») Nov 29, 2010 /
 
Az - Itt - és a korábbi hozzászólásom szerint kéne végignézned a felismerés folyamatát a LED-ekkel, természetesen azokkal a PIC-ekkel, amiket a WPB_F18_F16_v1.19b program kezel.
Ha megfelelő sorrenben villognak a LED-ek, akkor az égetőd jó. Ha ez így lenne, akkor a programok, amiket használsz, nem illeszkednek a PC-dhez hardveresen, vagy szoftveresen. Sajnos nem tudok jó megoldást a 12F-ekhez, legfeljebb egy PK2 építését. Az LPT-s égetővel fel lehet programozni a 18F2550-et...
(#) Gamedavid hozzászólása Nov 29, 2010 /
 
Sziasztok!

Most először szeretném használni a PICkit3-at egy 18F27J53-al, amit belső oszcillátorral szeretnék hajtani, de nem tudom mekkora órajelen van, azt hol kell beállítani? De a legnagyobb baj, hogy ezt írja ki program módban PICkit3-al az OUTPUT ablakban:
PICkit 3 detected
Connecting to PICkit 3...
Running self test...
Self test completed
Firmware Suite Version...... 01.26.26
Firmware type......................PIC18FJ
PICkit 3 Connected.
Target Device ID (000000e0) does not match expected Device
ID (00005860).

Programming...
The following memory regions failed to program correctly:
Program Memory
Address: 00000001 Expected Value: 000000ef Received Value: 000000ff
Programming failed

és néha még így is megprogramozza, ami érdekes és utána működik is. Debug módban viszont ezt írja ki:
Connecting to PICkit 3...
Firmware Suite Version...... 01.26.26
Firmware type......................PIC18FJ
PICkit 3 Connected.
Target Device ID (000000e0) does not match expected Device
ID (00005860).

MPLAB's memory has changed since the last program operation.
Would you like to continue?

Running...
PK3Err0040: The target device is not ready for debugging.
Please check your configuration bit settings and program
the device before proceeding.

és nem is tudok semmit sem kezdeni. A konfigurációs biteket nem a programban adom meg, hanem menüpontból, de azok sem tiszták pontosan hogy mi mire való, sajnos a PIC adatlapjából sem jöttem rá. Elmagyarázná nekem valaki, hogy a következő beállítások mire jók: CFGPLLEN, CPUDIV, SOSCEL, CLKOEC, FCMEN, IESO, DSWDTOSC, IOL1WAY, LS48MHZ

Előre is köszönöm segítségeteket.
Következő: »»   847 / 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