Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Ezt hogy tudom onnan kiszedni?
A processzor definiálásra gondolsz 17. sor gyanánt?
Próbáltam már átírni, tudom még kicsit kusza a programom. De ha a GOTO után mást írok akkor se megy, sőtt ha ott van az a sor akkor nem megy.
Köszönet!!!
Ezt hova tanácsos áttenni???
Hát már az elején ki akarom kapcsolni a WDT-t. Azért raktam előre, most a megszakításkezelés után beraktam közvetlen. Ott jó helyen lesz?
Amúgy mi a véleményetek a programról?
Olyan helyre kellene tenni, ahol le is fut majd. Pl. a START címke után. Vagy akár az ORG 0x0000 és a GOTO START közé is teheted.
Már lefordítja. Köszi szépen nektek. Sajna még nincs meg a tesztpanel, így nem tudom leellenőrizni, hogy jó-e.
Szia!
Állítsd be a szimulátort (Debugger / Select tool / MpLab Sim). A szimulátorral meggyőződhetsz, arról, hogy a programod azt csinálja, amit szeretnél.... Szia
Lenne még kérdésem. Az ICSP hogy működik? A lábkiosztást megtaláltam PICKIT2 adatlapjában és a pic doksijában, de a táp az nem tiszta. Azt most a programozóról vagy külső tápról kapja? Szélszerű lenne a külső táp, mivel az usb nem bírja el az áramkört. Hogy kössem azt be?
A pic-ben kell valamit állítani?
Szia!
Tápláld meg a külső táppal az áramkörödet, azután csatlakoztasd a PicKit2-t. Érzékelni fogja, hogy a fejlesztendő rendszerből kap tápot, a sajátját nem kapcsolja rá. Az áramkörödet viszont gondosan kell tervezni : RB7, RB6 vonalakat a PicKit2 meg fogja hajtani, a MCLR -re a Vpp fogja kapcsolni (HVP üzemmódban)... Az áramkör nem terhelheti meg jelentősen ezeket a vonalakat (az ide kapcsolódó más áramkör kimenetét le kell választani), a MCLR-re kapcsolódó egyéb áramköröknek el kell viselniük a Vpp feszültséget is. Szia
Köszi a gyors segítséget először is.
Akkor a pickit tápvonalát kössem rá a külső tápra vagy csak lógjon a levegőben?
Szia!
Be kell kötni, azzal a vezetékkel érzékel... Szia
Új fejezettel gyarapodott az esca.atomki.hu/PIC18 címen található, "Ismerkedés a PIC18 mikrovezérlőkkel" című PICCOLO projekt.
Az új fejezet: Az USB kapcsolat használata A fejezet tartalma: * Az USB-ről dióhéjban * USB kommunikáció - alkalmazási szinten * Az USB használata a PICCOLO projektben * A header állományok összefüggéseinek áttekintése * Az USB használatához szükséges legfontosabb függvények * "Helló világ!" mintaprogram lekérdezéssel * "Helló világ!" mintaprogram programmegszakítással * Egyszerű parancsértelmező * "Adatgyűjtő" program Mintaprogramot már korábban is mutattam itt és itt, ezek részben átfednek a fenti fejezet négy mintapéldájával. Ugyanott elérhető, illetve letölthető a PIC18 támogatói programkönyvtár és a példaprogramok Doxygen-nel dokumentált gyűjteménye. Természetesen most még nagyon kezdetleges a gyűjtemény, hiszen csak az eddig elkészült programok vannak benne. A támogatói programkönyvtár jelentős bővítésen és átalakításon ment keresztül az első kiadáshoz képest, ezért aki korábban már használta, gondosan tanulmányozza át a dokumentációt! Az új fejezet mintaprogramjai a PIC18F14K50 és a PIC18F4550 mintaáramkörökre egyaránt lefordíthatók. A kapkodásból eredő hiányosságokért és hibákért előre is elnézést kérek!
Köszi, tanulmányozni fogom!
![]() Nagyon jó ez a DURACELL ![]() Steve
Szuper az oldal
![]() Azt vettem észre hogy a "A kísérleti áramkör" menüpontban meg van cserélve az USB és az IO portok menüpont a többihez képest. Ettől függetlenül jó helyre mutat.
Hat... ize... na jo... akkor most teljesen oszinte leszek: Kutya jo!!!
![]() Szokas szerint szinvonalas a leiras! Az a piccolo konyvtar is tetszik -- bar ki nem probaltam, de a peldaprogramokat nezve nagyon igeretesnek tunik! Csak gratulalni tudok! Egy picit talan az orajel beallitasrol lehetne beszelni, hogy hogyan kell az osztas-szorzasokat beallitani USB-s projectekhez -- vagy az egy kulon szakasz lesz majd?
Köszönöm az észrevételt, kijavítottam a sorrendet.
Idézet: Lehetne is, meg kellene is - csak hátra került a prioritási listán. A PICCOLO projektben azért nem foglalkoztam eddig vele, mert ott a bootloader beégetésével "kőbe vannak vésve" a konfigurációs bitek, nem kell foglalkozni vele a tanulónak. De valahol, valamilyen formában azért sorra fog kerülni. Egyelőre még a PIC18F4550 konfigurációs bitjeinek optimalizálásával is "adós vagyok", ezért a PICCOLO-HID-Bootloader-PIC18F14K50.hex állomány még hiányzik a letölthető csomagból (a gyári bootloaderben pl. nincs bekapcsolva a Brown-out detektálás, ezért időnként "elromlik" a bootloader) „Egy picit talan az orajel beallitasrol lehetne beszelni, hogy hogyan kell az osztas-szorzasokat beallitani USB-s projectekhez”
Boot terület write protected-dé tétele nem oldja meg a bootloader elromlását? Vagy ilyen lehetőség nem mindegyik PIC-ben van?
Idézet: „Boot terület write protected-dé tétele nem oldja meg a bootloader elromlását?” Az első probléma ott van, hogy a HID bootloader helyfogalása kétszerese a PIC18F4550 külön levédhető "bootloader blokk" méreténél, tehát ott nem oldható meg (csak az MCHPFSUSB bootloaderrel, mert az fele méretű - de azt meg nem szeretem használni). A második probléma az, hogy a write protect - tudomásom szerint - nem véd a belső (táblázatos) írás ellen. Egyszer sikerült véletlenül egy olyan programot összehoznom (semmi különös, csak printf() eljárással kiírt egy üzenetet egy 16x2-es LCD-re) amely következetesen minden lekapcsoláskor felülírta a bootloader programot. Ez irányította rá a figyelmemet a dologra.
Bevallom én nem szeretem a bootloadereket, örültem, hogy megszabadultam tőlük(régen, kezdőként azzal fejlesztettem)! Föl nem fogom, miért erőlteti a gyártó! Minden USB-s projectjébe beleteszi...
![]()
Én egyszer használtam, egy ethernetes cucchoz, hogy ha valamiért szükség lenne rá, akkor ne kelljen az égetővel odamászkálnom, szétszednem, stb. csak reset után ip cím alapján rátolom az új firmware-t. Meg lehet, hogy most lesz egy másik meló, aminél usb-s bootloadert fogok használni a majdan kész áramkörben, hogy szintén ne kelljen szét illetve összerakni, ha valamit javítani kell a firmware-en. De ez utóbbit még én sem döntöttem el
![]()
Utána kellene nézni, de halvány emlékeimben az él, mintha meg lehetne valamilyen config-gal védeni a boot területet a véletlen felülírástól. Bár lehet, hogy nem minden PIC-ben azonos. Én akkor nézegettem ezeket, amikor a 18F2321-re megírtam a soros portos hex file alapú bootloadert. De az már elég régen volt, ki is hullott a fejemből teljesen...
Persze, van haszna bizonyos esetekben, a PICKit2 is így oldja meg a frissítést, de a legtöbb esetben csak agybajt okoz a kerülgetése, ha egy gyári projectből indulnánk ki.
![]() A gyár helyében sima projecteket mutatnék be, és opcióként a bootloaderes verziót. Persze nem olyan nehéz leszedni róla...
Valami #define-os megoldás kellene a gyáriakba, és akkor egy sor módosításával meg lehetne oldani, hogy legyen bootloader vagy ne.
Én már így is hányingert kapok a sok ifdeftől!
![]() Igazából akkor vannak gondok, ha meg akarod érteni a kódot... ![]()
Nekem nagy segítség a bootloader, mert nem kell cserélgetni a kábeleket az egyetlen szabad USB porton, s nem kell le-fel dugdosnia PICkit2-t (PIC18F14K50-nék a D+/D- lábakat használják programozásra is).
"Erőltetni" meg szerintem azért erőltetik, mert egyes gyári demókártyák bootloaderrel jönnek, így akár programozó nélkül is be lehet üzemelni (ki lehet próbálni a HID, CDC és custom osztályt). Kivenni meg egyszerűbb mint belerakni. ![]() Inkább az az égő, hogy a bootloaderre vonatkozó definíció nem abban a fájlban van, mint amelyikben mondják! A main.c szerint az usb_config.h-ban van, a valóságban meg a kártyákra vonatkozó hardver profilokban (ami mellesleg sokkal logikusabb, hiszen az egyes kártyákban ez különbözhet) Idézet: „A második probléma az, hogy a write protect - tudomásom szerint - nem véd a belső (táblázatos) írás ellen.” En halvanyan ugy emlekszem, hogy vannak tabla iras ellen vedo configok is, de most nem tudok utana nezni. Igazsag szerint most unnepeltuk egy kollegam szuletes napjat valami azsiai etteremben es tul sok szake-t ittam ![]() ![]()
Pl: 18F4550 - "védő configok"
Code Protection bit Block 0-3 Boot Block Code Protection bit Data EEPROM Code Protection bit Write Protection bit Block 0-3 Boot Block Write Protection bit Configuration Register Write Protection bit Data EEPROM Write Protection bit Table Read Protection bit Block 0-3 Boot Block Table Read Protection Bővebben: Link |
Bejelentkezés
Hirdetés |