Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Sziasztok!
Nem tudja vki mi a különbség a 18F452 és a 18F4520 között? És mit jelent az hogy I/P vagy E/P ?
Hogy mik vannak a Microchip honlapján
PIC18F452 to PIC18F4520 Migration Az I/P és E/P jelzést meg keresd meg az adatlapban. Ott írja, hogy mit jelentenek.
Köszi! Képzeld, közben nekem is sikerült, pont most akartam jelezni! Csatoltam a képet:
Mégegyszer köszi, főleg az SCL trükköt!
Latom, latom De Te nem csinaltal kulon SCL file-t ehhez? Lehet mar ujabb MPLAB-okban nem kell? Amugy amit meg nem probaltam ki, hogy ha mindegyik elem volt mar akkor ujra kezdi-e a file-bol az adathalmazt?
Nem kell nekem SCL, de szerintem neked sem a régebbi verzióhoz.
Igen ha véget ér a sor, előröl kezdi.
Hat a 7.41-esen nem megy sajna az SCL trukk nelkul. Otthon sajnos most nem volt idom ezzel foglalkozni, elvacakoltam az idom a mini ATX PSU-bol workbench tap ganyolassal
Kép: Hivatkozás Kép: Hivatkozás De legalabb most nehany projectet kenyelmesebben tudok ezzel megvalositani amig nem epitek egy normalisat.
Sziasztok!
Szeretnék ICSP-t használni egy panelen a picek programozására. De nem nagyon tudom hogy ez hogyan megy. Ebben tudna valaki segíteni. Pár kérdés: Csak ugyan olyan típusokat lehet? elvileg minden pic-nek van egy 16bytos ID-ja ez hogy tudom kiolvasni. És egyáltalán honnan tudja a pic, hogy neki megy a program ??? Előre is köszi!
A PIC onnan tudja, hogy neki megy a program, hogy a hozzá tartozó ICSP csatlakozóra kötöd a programozót.
Az ID-t csak olyan program tudja kiolvasni(égető szoftver) ami erre fel van készítve. A PIC önmaga is eléri ezt a memória területet, és ki tudja onnan olvasni, majd átadni egy olyan felületnek(pl. soros port, LCD kijelző) amin keresztül meg lehet jeleníteni. Ehhez a PIC-ben kell a megfelelő programot megírni, természetesen. ICSP programozási móddal bármilyen PIC-et fel lehet programozni, ez a gyári támogatása. Az ICSP port arra a céláramkörre kell kerüljön, amit építesz. Persze lehet adapter nyákokat készíteni egy ICSP kimenetű égetőáramkörhöz, de annak nem sok értelme szokott lenni, hacsak nem sorozatban ,vagy bérbe akarsz PIC-eket égetgetni. A próba panelnek több értelme van(tüskesoros, dugdosós, stb.), amin szintén ki lehet alakítani az ICSP portot. Miután leírtam mindezt, meg kell említsem, hogy a kérdéseidből látom, hogy semmi fogalmad nincs erről az egészről, így javaslom, hogy sokat olvass, kezd mindjárt ezzel a topickal, és akkor találkozni fogsz azokkal az ajánlásokkal, amiket már számtalanszor másoknak linkeltünk! Idézet: „Csak ugyan olyan típusokat lehet?” Ezt a kerdest nem nagyon ertem Idézet: „elvileg minden pic-nek van egy 16bytos ID-ja ez hogy tudom kiolvasni.” Nem tudom honnan veszed a 16 byte-os ID-t, es nem mindegyik PIC-nek van. Baseline-osoknak nincs pl. 14 biteseknek 14 bites, 16 biteseknek 16 bites - gyakorlatilag 1 program szo. A "Memory Programming" vagy "Programming Specification" mindent leir ezzel kapcsolatban. De most Te programozot szeretnel epiteni sajat kutfobol? Vagy miert erdekesek ezek a kerdesek? Idézet: „És egyáltalán honnan tudja a pic, hogy neki megy a program ???” Eszre veszi... De komolyra forditva a temat, ha valoban programozot epitesz es ebben szeretnel elmelyedni, akkor az ICSP (In-Circuit-Serial-Programming), az LVP (Low-Voltage Programming) es a Bootloader / Self writing temakoroket alaposan at kellene tanulmanyoznod. Ha csak kell egy proramozo, akkor javaslom epits meg egy meglevot, es ne foglalkozz vele honnan ismeri fel a PIC-et es az hogyan erti meg, hogy programozni szeretnek.
Szóval a helyzet.
Van egy nyáklap amin van vagy 10 pic. Eddig ezeket külön külön programozgattam, mindegyiknek szinte teljesen ugyan az a kódja, egy nagyon kis különbséggel. Eddig ezt csináltam hogy a programozót mindegyiknél kivezetet csatlakozóba bedugtam, a megírt programban pedig csak átírtam a pic számát (1-10-ig). Most azt szeretném hogy a 10 picet ha nem is egyszerre de legalább egy csatin keresztül programozhassam. Ne kelljen külön külön minden picnél kihúzni -bedugni ID-t átírni. Nem erre lenne jó a ICSP, hogy egy több picet egyszerre lehessen programozni? Ok nem mindegyiknek van 16bytos kulcsuk csak amelyikek támogatják SQTP-t.
Sziasztok!Segítséget szeretnék kérni a mellékelt fájl egy forráskódot tartalmaz.A forráskód a http://www.micro-examples.com/ - ról való.Egy ébresztő óra pic 16F84A -val. De sajnos az MLAB IDE v8.10 programmal valamiért nem sikerül exportálni hex fájlba a forráskódot.A segítségetek előre köszönöm!
Alljon meg a menet! SQTP az arra valo, hogy van egy alkalmazasod, es bele akarsz rakni egy sorozatszamot. Mikor a Microchip-tol rendeled meg a PIC-eket kozvetlenul es szeretned, hogy ok mar eleve felprogramozottan szallitsak le, akkor kerheted toluk ezt a szolgaltatast, es akkor pl ezer db PIC-ed lesz, es egy megadott teruleten a program memorianak lesz egy minden chipre egyedi szamsorozat, amit felhasznalhatsz sokmindenre, pl chip beazonositasara, titkosito kulcskent stb.
Amire szokseged lenne, hogy a Vpp-t egy jumperrel a megfelelo chipre tudd kotni. Pl teszel a panelre egy 10x2 -es vagy 5x3-as 0.1"-es headert, es mikor programozni akarod akkor elobb az 1-es, majd a 2-es stb pozicioba teszed a jumpert. Mikor nincs szukseg programozasra lehuzod a jumpert es kesz. Alternativakent nezd meg a bootloadereket hogy mukodnek, ha a PIC tudja a self memory writing-ot (azaz at tudja firkalni a sajat program memoriajat) akkor ra tudsz fejleszteni egy bootloadert amivel egy sajat kommunikacios protokoll segitsegevel mar azt csinalsz amit csak akarsz. Pl a bootloader mar tartalmazhat IC sorszamot (ami a panelre egyedi, de a sorozatra nem), tehat mikor IC1-et akarod programozni a protokoll a kivalaszto cim segitsegevel megmondja kihez beszel, az osszes tobbi figyelmen kivul hegyja a csomagot kiveve az IC1...
Üdv!
Az MPLAB-al nem is fog menni... Ez valamilyen BASIC-el lett írva. Nézz utána. Az MPLAB-nak meg ASSEMBLY kell.
Aha..azt tudom hogy az sqtp másra való, de akkor ott van a félreértés hogy ezek szerint nincs a picekben alapból egy 16 bytos azonosító....
Akkor ezek szerint az ICSP sem arra való amire én gondoltam...hanem, hanem hogy magán a nyákon programozhatom....hát eddig is így csináltam. Nem akarom elhinni, hogy erre nincs lehetőség hogy egy kábelen keresztül programozzam őket "egyszerre". Programozót nem akarok építeni, fölösleges és macerás és már a Pickit nem is olyan drága, majdhogynem alkatrészárban van. Idézet: „For once, the program is in BASIC (mikroBasic) and I hope it will make a good start for beginners. ” Ezek szerint mikroBasic...
És mi van akkor ha párhuzamosan töltöd fel az összes picet, közösítve a programozó lábakat. Majd a bemeneteikre adott jelekkel, (pl dip kapcsolók, jumperek, vagy esetleg ellenálláslétráról leosztott feszek) midegyik eldönti saját magáról hogy ő hányas is.
A feltöltés még mondjuk megoldható, de a visszaellenőrzés már nem kivitelezhető ilyen egyszerűen. A lehetséges megoldásokat már a többiek megemlítették.
Ezzen az oldalon találtam hogy kell hozzáadni a picbasicet az MPLAB-hoz. A picbasic 2.47 verziója megvan.Fel is ismeri az MPLAB.De még se csinálja meg.
Idézet: „Nem akarom elhinni, hogy erre nincs lehetőség hogy egy kábelen keresztül programozzam őket "egyszerre".” Megegyszer: bootloader - de ha most sem erted meg akkor nem tudom, valamit nagyon nem jol magyarazok.
Lehet hogy én vagyok értetlen.
Én kétféle bootloadert ismerek. 1. Van egy kis ram aminek a tartalmát bekapcsoláskor betölti magának az eszköz. Tehát mind a 10 pic olvasson egy memóriát....nálam ez nem igazán megoldható. 2. Lehet írni egy kis progit amivel előre felprogramozva az ic-ket és így akár saját protokolt is írhat az ember a későbbi programozásra. Nekem tetszik az a megoldás ami ugye kézenfekvő lenne, hogy mindegyik pic programozó lábát összekötném, egyszerre programoznám és egy dip kapcsoló mondaná meg a picnek hogy ő hányas számú. De nem tudom, hogy ezt lehet e...
"De nem tudom, hogy ezt lehet e..."
"A feltöltés még mondjuk megoldható, de a visszaellenőrzés már nem kivitelezhető ilyen egyszerűen."
Esetleg az nem lehet megoldas, hogy az osszes, programozashoz szukseges labat osszekotsz a PIC-ek kozott, viszont 1-et, mondjuk a data CLK-t vagy a Vpp-t pedig egy forgokapcsolo (talan Yaxley?) arra a PIC-re adja, amit eppen kivalasztasz?
Ha nem kell tul gyakran, akkor szerintem jarhato ut. Ha gyakran kell, akkor csinalnek egy kis PIC-es cuccot, ami a PC-tol kapott info alapjan eldonti, hogy melyik PIC kapja a clk-t vagy a Vpp-t. Ha nem titok, mi ez a cucc?
Akkor ezek szerint te ezt már próbáltad? És tényleg felprogramozta? A visszaellenőrzés debuggoloás nem lényeg. (max rakok neki egy jumpert, hogy lehessen...)
Itt pont az lenne a lényeg, hogy semmit nem kell tekergetni meg semmit nem kell csinálni csak rámenni, hogy program és kész...
Hát...bevallom nem nagyon szeretnék túl sokat írni arról hogy mi ez a cucc....nem is annyira lényeges.
Mind a 10 PIC-be ugyanaz a program menne?
Teszel a 10 PIC mellé egy 11.-et, ami "teríti" a programot a másik 10 felé. De akkor a másik 10 felé érdemes bootloaderes megoldással teríteni, és a 11.-kel is valami értelmes módon lehet beszélgetni, mondjuk RS232-n keresztül. Én jobb megoldást nem látok hirtelen a problémára.
Idézet: „Hát...bevallom nem nagyon szeretnék túl sokat írni arról hogy mi ez a cucc....nem is annyira lényeges.” Persze, hogy nem lenyeges. Epits egy teszt aramkort erre a feladatra amit publikalhatsz es amivel magad is tesztelheted ezt a folyamatot. Jo lenne azt viszont tudni meg, hogy mely periferiak szabadok ill mely labak - pl lehet-e CAN vagy I2C megoldasokon agyalni.
Nem, nem próbáltam még. De ha belegondolsz, az égető elküldi a parancsot a pic számára, majd sorban lépteti ki a biteket. Na most hogy csak egy pic fogadta a parancsot, és utána a biteket, vagy tíz, az teljesen mindegy. A gond ott kezdődik, amikor vissza akarunk valamit olvasni, és a chipek miután megkapták az olvasás parancsot, elkezdik az órajelre kiléptetni a biteket. Ekkor kimenetek kapcsolódnak párhuzamosan, ami nem megengedhető, és egyrészt a kimenetek tönkremenetelét is okozhatja, másrészt az adatvezetéken értelmetlen jelszint lesz, ha valamelyikbe hibásan került be a program. Szóval minden szempontból kényelmetlen megoldás. Ilyen alkalmazáshoz a bootloader a célszerű.
Vagy tudok olyan programot mivel át tudnám fordítani hex fájlba a txt?
Huha, ez egy athelyezett uzenet ha jol latom, mi volt az elozmeny? Ha az a bizonyos .txt allomany egy asm file-t takar akkor le kell tolteni az MPLAB-ot a Microchip oldalarol es azzal leforditani.
|
Bejelentkezés
Hirdetés |