Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Sziasztok!
Találkozott már valaki olyannal, hogy az internetről szerzett egy hex fájlt. A pickit2-vel felismertetem a picet, beolvasom a hexfájlt, elkezdem beírni a picbe, ami látszólag be is íródik, majd a beírt programot ugye ellenőrzi a pickit2. Az ellenőrzés során viszont hiba üzenet érkezik a pickit2-ből, hogy nem található pic. És a pic-cel többé nincs kapcsolat.
Tools menü -> Use VPP First Program Entry
LVP bit hogy áll? Pickit2 progiban próbáld a VPP first-ot .
Szia!
Igen, ha kipipálom az általad javasolt menüpontot, akkor felismeri a picet, ha nincs kipipálva akkor nem. Ez így használható?
Hp41C válaszában benne van, miért nem tud kapcsolatot teremteni a PICkit2 a kontrollerrel, programozás után: Bővebben: Link.
Idézet: Ha így van megírva a program, akkor nincs mit tenni, az említett opciót kell használni (újra)programozáskor. Alkalmazás kérdése, hogy ez hiba-e vagy sem (azonnal [a lehető legkorábban] kell indulnia a programnak, vagy meg kell várnia, amíg egyéb periféria is észhez tér).„A belső oszcillátoros konfiguráció miatt a program egyből indul a Vdd rákapcsolására. Ha a MCLR láb benenet, a PowerOnTimer le van tiltva, a programozó láb(ak) kimenetnek állnak be rögtön a program elején, az újraprogramozáskor nem tudja felvenni a kapcsolatot a programozó.” Sem a kontrollernek, sem a programozónak nem lesz baja ettől, ha pedig a PIC is úgy viselkedik, ahogy elvárod, akkor csupa öröm az élet.
Köszönöm szépen! Nagyon megnyugtató volt a válasz.
Sziasztok!
Usb device hid / mouse, keyboard - van ezekkel valakinek projekt elrakva saját kód raktárban? Néztem legacy mla, mla 2018, harmony help weben, és finoman szólva kicsit üresek a példa projektek. Például egér kurzor mozgatásra van példa, de gomb lenyomás / felengedésről semmi. Billentyűzetnél status led kezelés van, billentyű lenyomás / felengedés nincs. Ha valakinek van ilyesmi saját kód raktárban, és nem túl félénk megosztani, sok kotorászástól tudna engem megkímélni. Bármilyen tippet előre is köszönök.
Programozás technikai segítséget kérnék.
18F26K22 re írtam boot ot és PC progival a firmware t írnám fel, de az a gondom, ha configban ráadom a CP védelmet a szektorra mintha a törlés és a flash írás se megy. CP nélkül tökéletes. Menet közben a 300008 configot byte osan nem tudom változtatni. De akkor, hogy oldhatom meg, hogy ne legyen könnyen lopható a firmware ? Köszzi
Boot block: Ide kerül a boot loader. és legyen írásvédett. A további blokkokra kiolvasás elleni védelmet kell aktivizálni - ez nem érinti a kontroller saját memória kiolvasását.
Innen már csak egy dolgot kell megoldani, a boot loader ne adjon lehetőséget programterület kiolvasására. Az ellenőrzést (verify) valahogy másként kell megoldani. A hozzászólás módosítva: Aug 12, 2024
Boot om 0x20-0x5CF ig van kb PDF ben 0x7FF ig is tarthat.
Firmware 0x1000 től van 512hossz CP0 0x800-0x3FFF bootra CPB-0 WRTB-0 menjen ? 0x800-0x3FFF tól melyiket adjam rá, hogy flash törlés/írás működjön de ICSP se n kiolvashatatlan legyen ? WRT0 tuti nem adhatom. Jó lenne, ha a CP0-0 san működne ez.
Az előbb nem jól írtam....
Ahogy most be van állítva, működnie kellene, de meglehet, hogy a WRT0, EBTR0 védelem a 0. blokkra nem teszi lehetővé a boot blokkból való olvasást és/vagy írást. Meg kellene próbálni a firmware -t az 1. blokkba tenni, kódvédelmet adni az 1. blokkra CP1=0, de nem aktiválni a WRT1, EBTR1 biteket. Ha jól értem az adatlapot és a programozási leírást, akkor a boot loader fogja tudni törölni, írni és kiolvasni az 1. blokkot.
Ohhhhh már látom mi a gondom. Felíráskor íródik CP0-0 san rendesen csak vissza kell frissitenem a felépítést az elejétől 1 pontra ugorva.
Kösszi
Én annak idején a PIC16f1455-tel játszott USB-HID-el és már meg nem mondom, mi volt a framework/tool neve, de nem volt bonyolult beállítani.
Meg MZ-hez használtam Harmony v2.x-et és ott CDC-ztem, és bár bármennyire is csak utálatott halottam a "harmmóníáról", én szerettem, bár elsőre komplex volt nagyon, utána belejöttem, már nem volt vele semmi gáz, én utólag jobban bírtam a harmony-t mint a cubemx-et. (Bár nekem ebben benne volt az is, hogy a cube api-jai nem jöttek át, az MCP sokkal logikusabb volt nekem, de az EFM-é, igazándiból azok az amerikai kontrollrek amikkel én találkoztam mindig "szebb" stack-et kaptak) A 1455-öt hoz van valami kódóm, "de semmilyen felelősséget nem tudok érte vállani" 10 éve írtam , de ha segít csatoltam. (ha jól emlékszem hid-ről lehett írni a flash-t és egy soros vezérőröl kitolta a textet egy hd44780-ra)
"32 bites dsPIC" Nem, sajnos a dsPIC33CK sorozat is csak 16 bites.
Igazad van, a dsPIC33CK csk 16 bites, de a dsPIC33AF család már 32 bites. A hír igaz, de a link nem jó helyre mutat.
VPP vezérlése 18F24K22Hogyan kell elképzelnem a szükséges VPP vezérlését 18F2xK22 nél ?Más eszközzel szeretném elérni a flashbootom felírását. (Vdd 5V) Ott tartok, hogy 6.1V os Vpp nél már az ERASE sikeres. Viszont ID lekérdezés a flash minimális méretű írása sikertelen. Itt játszogatni kell a VPP feszültséggel attól függően, hogy milyen DATA üzenetet küldök ? Tudtam még 9.4V ot ráadni, de ezt lesütött jel nélkül végig fixen és ez se volt eredményes. Szerintem Hp41c biztos tud irányt mutatni. Előre is kössz
A Flash Memory Programming Specification kicsit zavaros:
High-Voltage Programming Voltage on MCLR/VPP/RE3 Min Vcc + 4,5V = 5 + 4,5 = min. 9.5V Max 9V A 9V-ot minden esetre ne lépd túl.
PICKIT2 nél 8.7V ot láttam.
Specifikációban VPP 8-9V jelent programozást a Noteben mintha azt írnák, hogy 2 feszültség állapotot vezérelni képes programozó nem jöhet számításba ahogy ICD2. Itt táblázat van eepromra és programflash, de VPPre nem egyértelmű. Amit kellene elérnem: ID read Erase full pflash write hogy ez mehet e 0 és x-Volt 2 állapoti feszültség vezérlésével egyáltalán ? A hozzászólás módosítva: Nov 26, 2024
Lehetőség van magas (HVP) és alacsony (LVP) feszültségű programozásra.
HVP: leírás a programozási adatlapban a 2.5 fejezetében: MCLR alacsony, Vdd bekapcsolás, Vpp bekapcsoáls , programozás, ellenőrzés, Vpp lekapcsolás, Vdd lekapcsolás. LVP: leírás a programozási adatlapban a 2.6 fejezetében: Vdd már be is van kapcsolva, MCLR -re egy impulzus, kulcs beléptetése, programozás, ellenőrzés, MCLR alacsony. Mivel a Vdd be van kapcsolva a programozó lecsatlakoztatása után indul a kontroller. Hab a tortán: Ha tömegével szeretnél programozni és meg kívánsz győződni, hogy a teljes Vdd tartományban működőképes a kontroller, akkor olyan programozót (prodaction programmer) kell használnod, ami képes a Vdd állításara a minimum és a maximum között. De a Vpp maximális értéke függ a Vdd értékétől. Emiatt a Vpp -t változtatni kell. Pl. Vdd minimuma LF esetén 1.8V. Ekkor Vpp minimuma Vdd+4.5V azaz 6.3V. Vdd maximuma LÉF esetén 3.6V. Ekkor a Vpp minimuma 8.1V Vdd minimuma F esetén 2.3V. Ekkor Vpp minimuma Vdd+4.5V azaz 6.8V. Vdd maximuma F esetén 5.5V. Ekkor a Vpp minimuma 9V
Ohhh hát én doksi nélkül estem neki. Dokuban, melyet említettél elég jó leírás van. Csemegézek aztán eldöntöm tovább vagy feladás.
Kössz
Már LVP ben is működik az ERASE.
9es utasítást outputként követ 00000000 majd input 8biten nem hagyhatom low on a DATA t mert akkor válaszként lehúzottan nem lesz bit1 deha végig 1-en áll a DATA akkor sincs lejövő adat. Valami érdekes bekötést kellene tenni ? Amin beszélgetek DATA IO channel ez direktbe megy a ICSPDAT nak.
A megoldás... TTL232 PIC chip programming.
Ha más is ilyen módon akarja a PIC et programozgatni a ICSP DATA ját egy Output vezérelt pinen 2K2 ellenállással vigye az ICSP hez, majd külön egy csak Inputnak beállított TTL pinre direktre kell kötni. Ekkor a lekérdezésnél az Output szintje lehet végig LOW és ehhez rá fog tudni rezegtetni üzenetet a PIC, mivel a 2K2 pinjein tud HIGH és LOW is lenni. Nem minden FT232R tudja a tökéletes bit bang módot. (Full eredeti kell) Teszteltem 2 eltérő utánzatot, egyike full semmi a másik teljesen instabil. Nem gondoltam, hogy a PIC felprogramozásához külön pdf et kell keresni. LVP HVP re is válaszol Ezer köszönet a segítségért. A szememet kiverte az ismerős látvány, vagyis e programozás megegyezik a gépi kódú nyelvi utasításokkal. A hozzászólás módosítva: Nov 30, 2024
CPD locked18F..K22 CPD lockedSzóval, ha ez bit0 és a Pickittel full 00 olvasható ki, az ugye nem jelenti azt, hogy ezt a tartalmat otthon már nem olvassuk ki ? TTL232 vel épp készítettem 1 videót, ahogy a krix krax szerkesztésű eeprom full lockolva PK-val full 00, TTL el meg kijön. a művelet mp ben mérhető. De ez csak feltételek meglétével.
CPD:
A 18F2xK22 adatlapja szerint a CPD = 0 beállítás a "Data EEProm Code Protected" jelenti. Az Adat EEProm tartalmát nem engedi külső programozóval kiolvasni. A kód memória ettől függetlenül olvasható.
Mutatok videón 1 protect eeprom kiolvasását ICSP beavatkozással
(kínába küldés nélkül) A hozzászólás módosítva: Dec 7, 2024
A TLL módszer a CP bitek bepogramozása után kikapcsolja a Vdd -t és az adat EEProm kiolvasása előtt újra bekapcsolja?
Amit meg tudtam figyelni, azt irom. Ahogy kérünk az erase-vel 1 szolgáltatási terület felszabadítását az config teljes tartalmát szerintem RAM ba másolja, majd a configot full 0-ra teszi, mert ha a parancs kiadása után, ha csak 1 rezgésre Vpp t vagy Vcc t 0Voltra lenyomom, majd vissza és ezt
1 bizonyos rezgésszámtól korábban adom ki, akkor a teljes configot már nem fogja visszaírni a RAMból és ott hagyja full 0 bites configgal.Sajnos ezt nagyon jól kitalálták, csak ha a kért feladat folyamata végigment, csak akkor kapunk vissza megfelelő configot. És itt minden egyesével megy, mert 2x sikerűlt látnom csak 1darab bit1 és configot. Még annyi, hogy ez a kritikus rezgésszám határpont Vpp esetében néhány rezgéssel később van. Magyarul ha a Vpp szerinti szám x ahol még a config épp 0ás , akkor Vpp fennt Vdd t leugrasztva config sikeres. Mindebből mit lehet megállapítani? Az összes protect feloldását, akkor lehetne esetleg véghezvinni, Ha az erase paranccsal nem program és eepromra kérünk felszabadítást és a törlési művelete alatt a RAM ból tudnánk biztosítani full 1es bit állpotokat. Van e valami külső elektromos sokk effektus, ami alatt RAM csak 1 eket tud visszaadni ? De mondom ehhez nem szabad memóriára mutató erase t elindítani, mert akkor azt úgyis átirja és elvesztjük. A TTL módszerem lényege Véletlenűl talált flash, melyet a microchip programozók nem tudnak üresiteni és amíg ezt nem tudja valaki törölni használni se tudná. A hozzászólás módosítva: Hé, 12:29
Parancsszavas vezérlésVan közöttünk olyan, aki készített/tudja hogyan kell/lehet parancsszóra működő vezérlést készíteni?
Ezt hogy érted pontosan? Szó szerint megmondod neki mit szeretnél és az eszköz végrehajtja?
|
Bejelentkezés
Hirdetés |