Fórum témák
» Több friss téma |
PICKit2, de kell bele egy felprogramozott 18F2550. Tekintettel arra, hogy egyre több az olcsó, de nem 5V -os kontroller, olyat építs, ami állítja a Vdd -t.
Üdv!
Van két változó A és B, az A-nak a felső négy bitje kell a B-nek az alsó négy. Hogyan tudom azt összehozni, hogy a szükséges bitek egy változóban kerüljenek? ASM-ben.
Az eredmény a B -be kerül
Az eredmény a A -be kerül
Az eredmény a W -be kerül
Hali!
Következő problémám adódott a Piccolo project használata során: (PIC18F4550, alap a mérés adatgyűjtő, kiegészítve a I2C méréssel 4 szenzorral, be/kimenetek figyelése, CDC kommunikáció a PC-vel VB6 ban írt programmal) Működik a program oda-vissza kommunikáció, viszont USB kapcsolat megszünésekor, a D0 porton vezérelt "mLED_1_Toggle(); //jelezzük hogy fut a program" működése bizonyos idő után megszünik. A delay csökkentése az interrupt kiszolgálásában történik, mint hogy az USBDeviceTasks() hívása is. Üdv.
Ha nincs USB kapcsolat, akkor mitől lesznek megszakítások? Vagy pont az a baj, hogy nem lesznek?
Sziasztok!
Valaki tudna nekem egy olyan nyák rajzot adni, amin SMD PIC-ek padjei vannak ICSP-re kötve, hogy ha a PIC-et a megfelelő padra rakom, akkor SMD PIC-et is tudok égetni?!
Hali!
Igen erre nem gondoltam, nics megszakítás USB kapcsolat nélkül. Viszont a PIC program működése is leáll. Nekem olyan programra van szükségem ahol USB kapcsolat nélkül is működik a PIC program, USB kapcsolat esetén pedig legyen kommunikáció. (alaphelyzet nyilván az hogy van USB kapcsolat, de ha leáll a PC akkor a PIC progi működjön tovább) USB HID kapcsolattal sikerült megoldanom, viszont az átvitel tekintetében lassú Üdv.
Szia!
Fordítva gondolkodj. Ha SMD tokos kontrollert használsz, akkor a felprogramozás előtt fel kell forrasztanod a készülék paneljára. A soklábú jószágok minden lényeges bekötését biztosítani a programozás alatt máskép nem is lehetne - ill. túl sok összeköttetést kellene megvalósítani. Már a készülék kacsolását, paneljét úgy kell tervezni, hogy az ICSP -vel működjön. A beültetés után felprogramozod az ICSP csatlakozón keresztül... Nagyon kis lábszámnál és bizonyos konfigurációknál (belső oszcilátor, letiltott MCLR, PGC és/vagy PGD vonal kimenet, T1 oszcilátor, stb.) problémák léphetnek fel. De... Az SMD tokok kivezetése kicsit eltartja a tokot a paneltől, ha sikerül jó minőségű felületet elérni a panelen, a tokot rászorítva elég jó kontaktus érhető el. A pontos illeszkedéshez az is kellene, hogy a fémezés ne legyen jelentősen magasabb, mint a panel - elcsúszhat a kontroller. A leszorítás az elmozdulás ellen is véd. Már készült ilyen adapter néhány tokhoz...
Szia !
Köszi a leírást ! Épp a tőle vásárolt óra-panelbe kéne a PIC-et felprogramoznom, de ő nem rakott bele ICSP aljzatot. Múltkor pl. a PK2 demoboardjára ragasztottam a picet, és hozzáónoztam a megfelelő vezetékeket. Azért nem akarom mindig ezt tenni, mert macerás, nehéz, és a PIC is kinyiffanhat. ![]()
Az USB-CDC - legalábbis a régebbi programokkal - nem alkalmas erre a "hun bedugjuk, hun kihúzzuk" üzemmódra. Erre a HID való. A legtöbb PC-s alkalmazás még arra is háklis, hogy előbb kell csatlakoztatni a PIC áramkört, és csak utána szabad indítani a PC alkalmazást, különben nem találja meg a virtuális soros portot. Az is fontos, hogy a PC alkalmazás szakítsa meg a kapcsolatot és nem fordítva, különben képtelen újra csatlakozni.
Egyetlen üdítő kivételt ismerek: a Microchip újabb USB mintapéldái között van egy Dynamic CDC Demo program, az képes tisztességesen és automatikusan kapcsolódni. Ha ezt a megközelítést le tudja utánozni a Visual Basic programod, akkor van értelme a CDC erőltetésének. Ami a PIC elakadást illeti: úgy kellene megírnod az alkalmazást, hogy rendszeresen figyelje az USB kapcsolat státusát, s véletlenül se fusson rá olyan blokkoló várakozásra, ahol karaktert akar küldeni vagy fogadni a már nem létező USB kapcsolaton keresztül.
Sziasztok!
Tudna nekem valaki 18F4550 hez usb bootloader firmware-t ajánlani? Letöltöttem egy kettőt, de valamiért, nem bízom bennük, túl nagyok stb...Ha valaki tudna linkelni egy oldalt ahonnan le lehet szedni annak megköszönném... Üdv!
Idézet: Hogyne , többet is. Én a HID bootloadert használom aPICCOLO projektben. Ez kétszer akkora, mint a Microchip másik bootloadere (MCHPFSUSB), de a HID bootloadernek szimpatikusabb a letöltőprogramja.„Tudna nekem valaki 18F4550 hez usb bootloader firmware-t ajánlani?” Egyébként mindkét bootlader benne szokott lenni a Microchip USB stack mintapéldái között, de az általam módosított konfigurációs bit beállítással stabilabb. Bizonyára a DIOLAN bootloadere is könnyen adaptálható PIC18F4550-re, de nem volt még időm kipróbálni. JAL nyelven is írtak már PIC18F4550 bootloadert, ez végeredményben az MCHPFSUSB-vel kompatibilis (ugyanúgy a Microchip PDFSUSB.EXE demóprogram a letöltője).
Hali!
Köszi a választ. Az USB CDC nyűgjeit már megértetted velem, azért próbálkoztam a HID kapcsolattal. A lassúsága miatt (sok információt akarok küldözgetni 'vica-verza') visszatértem a CDC módhoz. A kapcsolat újra felvétellel nincs gond, ha véletlenül le áll a PC, vagy a progija. Gond az hogy nem figyeltetem (jelenleg nem is tudom hogy kell, majd utána nézek) az USB kapcsolat meglétét és adat küldés vagy vétel blokkoló várakozása miatt áll le a PIC program, mint ahogy írtad. Üdv.
A piccolo_usb.c-ben kellene valamit csinálni a ProcessIO() függvényben. Most, ha nincs USB kapcsolat, nem csinál semmit (return-nel kilép). A bolokkoló várakozásokat tartalmazó I/O függvények (_user_putc, usb_cdc_getc) viszont a ProcessIO-t hívogatják, hogy csináljon valamit a betelt vagy üres bufferekkel.
Az az alkalmazástól függ, hogy mi ennek a patthelyzetnek az értelmes feloldása.
Köszi szépen! Amúgy a Piccolo projektben lévő linkek nálam nem mutattak semmi jóra..
Sziasztok!
Aminek a hibakeresésében segítséget kértem legutóbb, immáron publikálva: Bővebben: Link A kis panelünk azóta is remekül működik, igazán klassz egyszerű játék ![]()
Üdv! Kipróbáltam 2 bootloader firmwaret 18F4550 en, de a PC nem akaja felismerni
![]()
Idézet: „Amúgy a Piccolo projektben lévő linkek nálam nem mutattak semmi jóra..” A code_axemples.zip-ben minden megtalálható volt. A kibontott fájlokat időközben valóban letöröltem, s külön-külön nem voltak elérhetők, de most pótoltam (bár helyhiánnyal küzdök a szerveren).
HID bootloadernél vagy a MCHPFSUSB bootloadernél az RB4 lábat le kell húzni reset-kor, s előbb a RESET gombot kell felengedni. Ekkor lép be a program bootloader módba.
Szia!
Ugyan nem én kérdeztem, de összedobtam a kapcsolást, beégettem a HEX-et, amit fölraktál, de nem megy... ![]() Endre
Szia!
Itt már írtam róla, a szerző nem a forrásban adta meg a konfigurációs biteket...
Szia!
Köszönöm a gyors választ. Hát, ehhez én még nagyon kezdő vagyok. Ha valaki kisegítene egy működő HEX-el 628-hoz, megköszönném. Üdv: Endre
Köszi icserny! Így hogy működnek a piccolo-ban a linkek és onnan letöltöttem a bootloadert, egyből működik
![]()
Íme, 16F628 ill. 16F628A -ra...
Szia!
Elsőre indult, tökéletes! Nagyon köszönöm! Üdv: Endre
Hali!
Sokat segítettél az infóval, köszönöm. Egyenlőre van fontosabb teendőm a project-l, lényeg tudom a leállás okát. Alaphelyzetben úgy is állandó PC kapcsolattal működik a PIC, az USB kapcsolat megszakadásakor a tovább működés biztonsági kérdés. Üdv. Idézet: Elsőként azt kellen tisztázni, hogy mit is csinál a programod. Az USB kapcsolat megszakadásakor a kiírásokba fullad bele? „az USB kapcsolat megszakadásakor a tovább működés biztonsági kérdés.” |
Bejelentkezés
Hirdetés |