Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Modositani lehet! Barmikor torolheted a teljes PIC tartalmat! Csak kiolvasni nem fogod tudni... Ha Modositas ellen is vedeni akarod, akkor egy OTP-s valtozatot kell valasztanod amit csak egyszer es kizarolag egyetlenegyszer lehet irni... (ill az sem teljesen igaz, mivel ugye az 1-eseket egeted at 0-sokka az egetes soran, tehat meg mindig lehet barbalkodni...)
Sziasztok!
Azt szeretném kérdezni, hogy egy .hex fájlt hogy tudok visszafordítani assemblyre vagy C-re?
Szia !
Megnyitod az MPLAB-ot. Importálod a hex-et. Wiev menübe a programmemóriát bepipálod ,és kész. ASM-lesz benne.
Vegulis a MPLAB tartalmaz disassemblert, ami ASM-re forditja a HEX allomanyt. C-re nem igen van.
akkor nem kell új projekt hozzá?
a hex-et importáltam de a program memória üres marad (biztos van program a PIC-ben, ez a hexen is látszik)
Védelemmel van ellátva a PIC (ha megpróbáltad kiolvasni), sajnos itt megállt a tudományom. Én úgy értettem ,hogy hex fájlod van. Érdemben a tartalmát amúgy is csak kinyomtatni lehet , szerkeszteni nem.
Köszönöm a segítséget. Sikerült, Immáron ASM formátumban a program.
Sziasztok!
Nemrég kaptam kézhez egy pic18f2320 nevű eszközt. Programot szeretnék rátölteni. Átnéztem az alkatrészspecifikációt, de nem tudom, hogy kezdjek hozzá! ![]()
A programozasi leiras. Persze ez alapjan nem eppen konnyu megcsinalni, viszont van keszen kaphato programozo eszkoz, pl PicKit2, amivel a PC-rol lehet programozni ezt, es meg nagyon sok mas eszkozt is.
Sziasztok.
Valaki foglalkozik itt TFT kijelzős érintőpanelekkel? Egy-két példaprogramot szívesen megnéznék ha esetleg akad valakinek. Lehetőleg C-nyelven.
Köszönöm!
Mindegyik CPU mindegyik tápját be kell kötni.
De ez általában a CPU data sheet-jének az elején le is van írva.
Sziasztok,
A PIC24f-nél a szoftveres késleltetéseket nekem kell megírni? Arra gondolok, hogy mint a 18f-nél olyan, hogy timers.h nem találok. Ez azért van mert a fordító "demó"? Idézet: Csak akkor, ha a __delay32, __delay_us és __delay_ms nem elégíti ki az igényeidet. „A PIC24f-nél a szoftveres késleltetéseket nekem kell megírni?” ![]()
Van egy pic32 demo boardom.
Elvileg 80Mhz-en megy a pic. C-ben kipróbáltam, hogy 1 ciklus mennyi idő alatt fut le:
450ns lett a periódus idő. 80Mhz-et ezt egy kicsit sokallom. Mit lehet tenni, hogy gyorsabb legyen?
Ezt a 450ns-ot szkópon nézted? Az 36 utasításciklus, tényleg kcisit sok, meg kellene nézni mit csinál az a makró, ha maszkolással oldja meg a bit állítást, akkor sok utasítás kell neki. Próbáld meg ezt, elvileg így a led 40Mhz en villog, a while ciklushoz tartozó részek kivételével...
Így már sokkal jobb lett
![]() A 25Mhz-es szkóp már nem tudja mérni a jelet. Lehet letölteni a pic32 C fordítóhoz egy összefoglalót, hogy ezeket az utasításokat megtaláljam? A függvényes megvan, hanem ez az egyszerűsített dolog érdekelne.
Én is mostanában kezdtem el foglalkozni a PIC32 szériával, érdemes kihagyni a szerintem a gyári függvényeket ahol lehet, adatlapból és application note-okból, meg az adott perifériához tartozó reference manual-okból mindent ki lehet hámozni. Ha megnézed a head file-t akkor abban látod, hogy minden regiszterhez tartozik 3 másik is. Ez esetben LATD, LATDCLR, LATDSET, LATDINV, a nevükből a működésük szerintem már egyértelmű
![]() A makró valószínű a hagyományos LATD = LATD & 0x01; re bővül ki, míg a LATDINV = 0x01; sokkal kevesebb asm utasításra fordul. Gondolom Te is "Lite" módban használod a fordítót, valószínú a pro verzió ezeket az optimalizálásokat megcsinálja... ui: Miután átírtam a kódomat az ilyen maszkolások helyett INV SET CLR alkalmazására, kb 15% al kevesebb lett a program memória ![]()
Köszönöm az információt. (Idáig a pic18-al foglalatoskodtam és, hát elég nagy különbségeket vélek felfedezni) de a 16 bit az 16 bit.
Idézet: „ui: Miután átírtam a kódomat az ilyen maszkolások helyett INV SET CLR alkalmazására, kb 15% al kevesebb lett a program memória” De nem csak az az elonye ezeknek, hogy kevesebb utasitasra fordul, hanem, hogy egyszerre tobb bitet manipulalhatsz.
16 bites pic vagy avr az van-e?
Ugy tudom 8 es 32 bites van csak, de a 8 bitesnek is vannak 16 bites aritmetikai muveletei. Amugy ezt az AVR Miertekben kellene kerdezni!
32 bites is jó jönne.
Ja en meg most latom azt irtad "PIC *vagy* AVR" -- valamiert csak az AVR szot vettem eszre, elnezest!
PIC-bol termeszetesen van 16 bites, a dsPIC ill a PIC24 sorozatok a neked valok. Ezzel a MAPS nevu eszkozzel tudod kivalasztani a megfelelo PIC tipust. Pl a 8 es 32 bites pipakat leveszed (mindegyik utan kicsit kell csak varni mire a valtozas megjelenik a kepernyodon). Aztan kivalasztod mire van szukseged, hany labra, vagy I/O-ra vag milyen funkciokra stb, es kiirja neked melyik chipek a felteteleknek megfeleloek. Ott van a Specifikacio es a technikai Dokumentacio-ra inkek is, akkor a "Budgetary Price" azaz a chip arazasa is, szoval jo kis eszkoz ez kivalasztani a szamodra megfelelo PIC-et... Atmelek nem tudom csinalnak-e hasonlot az AVR-ek kivalasztasahoz, de ott nincs ennyi fajta eszkoz, tehat ott lehet egyszerubb a valasztek. UI Icserny mesternek van nagyon jo PIC24-es tanjegyzete, azt erdemes olvasgatni... Bővebben: Link Idézet: Szinte olyan, mintha egy másik gyártó készítette volna... „Idáig a pic18-al foglalatoskodtam és, hát elég nagy különbségeket vélek felfedezni” ![]()
Ez már egy másik kérdés, találtam egy AVR-re irt ARM emulátort, ezt hogyan tudnám picre átforgatni? egyáltalán lehet-e? Elég csak a megerősítés.
Mindent meg lehet csinalni, miert ne? De ehhez ismerned kell mindket (mind a harom) architekturat olyan siznten, hogy ez ne okozzon neked problemat. Javasolnam, hogy ne "raketa vezerlessel" kezd, hanem az alapjainal a tanulmanyaid. Ha kemenyen tanulsz, akkor 1-2 even belul mar meg fogsz tudni csinalni egy ilyen jellegu dolgot.
Sziasztok,
HD44780 kétsoros, 16 karakteres LCD és PIC16F887 összehangolása közben akadtam el. Egy menürendszert használó alkalmazást fejlesztek épp (öntözőrendszerhez). A mellékelt program kiválóan működik, de sajnos csak a LINE1 tekintetében. A Line 2-re címzett üzenet nem jelenik meg. A HITACHI kijelző leírása alapján helyesen jártam el - nem értem hol a hiba? ISIS modellben és a valóságban egyaránt jelentkezik a hiba. A kijelzőt 4 bites üzemmódban használom. A leírás alapján két dolgot kell elkövetni a második sor aktiválásához: (1)aktiválni - ezt a function set N bitjének bakapcsolásával megtettem az init résznél (2)második sorra írás előtt a DDRAM címet a kurzorpozíciónak megfelelően beállítani,ezt a b'11000000' parancs elküldésével tettem meg. Előre is köszönöm a segtséget |
Bejelentkezés
Hirdetés |