Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Mindenkeppen olyan tipust valasztanek amire sok demo projectet talalok a neten belertve a Microchip oldalat is. Azonkivul mindenkeppen egy 5V-os, DIP tokossal kiserleteznek legeloszor (bar mondjuk a PIC-nel nincs olyan elkonfiguralasi mizeria , mint AVR-eknel, igy az aramkorbol sem kell talan olyan surun kirangatni). Ha megnezed pl a 18F4550-est, akkor arra eleg sokmindent talalni, tehat egy jo kiindulasnak nez ki.
Valószínűleg az volt a probléma.
Ha "res"-sel rezerválok memóriát, akkor az udata_acs direktívát használom előtte, s akkor az Access Bank területre kerül, ahol lapváltás nélkül elérhető. Természetesen ez próbaprogramokra értendő, amelyek kevés változót használnak. De ilyenkor linker scriptet kell használni, ami egy picit bonyolítja a dolgokat. Az MPSAM Assembler, MPLINK Object Linker, MPLIB Object Librarian User's Guide-ot érdemes bogarászni, sok érdekes dolog van benne. Idézet: „akkor elkérhetném azokat az oldalak linkjeit?” Watt honlapja PIC24 tananyag (PIC-kwik) PIC18 tananyag (PICCOLO) Itt is összegyűjtöttem néhány hasznos linket Idézet: „olyan szempontból jobb az msn hogy gyorsabb az informácio közlés.” Nem jó az a nagy sietség... Hagyj magadnak időt az olvasásra, tájékozódásra és főleg a gondolkodásra. Végül is az a legfontosabb cél, hogy megértsd a működési elveket és az összefüggéseket. Idézet: „Szóval akkor elején kezdem sulitól kaptam gyakorolni egy pickit2-es cuccot.” Gondolom, kaptál mellé demókártyát is. Minek hívják? Debug Express PIC16F887-tel, vagy valami más? Idézet: „A Te elso programocskad linker scriptet feltetelez, es a valtozo alapertelmezesben az udata szekciora fog kerulni” Az élet mindig bonyolultabb, mint az ember gondolná! Az eredeti program kicsit szabálytalan (ORG és RES keveredik benne - UDATA, RES és CODE helyett), s a fordító helyfoglalás helyett egy-egy "No memory has been reserved by this instruction" figyelmeztetéssel honorálja a
A generált kódban pedig S1 és S2 helyett minkét esetben a 0 címet babrálja, emiatt a
sohasem fejeződik be. Na, ezért nem villog a LED! Üdv!
Hmm, mondjuk az ORG es RES keveredesenek nem szabadna ilyen tipusu hubat okoznia -- linker script van a projectben? Amugy nem ertem miert nem sikit a linker es dobja vissza. Na mindegy, mindenesetre tanulsagos es erdekes tortenet
Idézet: „linker script van a projectben?” Mindegy neki.
PIC18-hoz C nyelvű mintaprogramok
A Kónya László-Kopják József: PIC mikrovezérlők alkalmazástechnikája c. könyvben a C programozásról szóló rész mintaprogramjait az Explorer16 feljesztőpanelre írták, PIC24 mikrovezérlőre. Kopják József most átírta a mintapéldákat a PIC18F45K20 mikrovezérlővel működő PICkit3 Debug Express demókártyára. Ezzel megnyílt az út a PIC18 mikrovezérlővel ismerkedők számára is, hogy a Kónya-Kopják könyvből tanulják a C programozást. A mintapéldák a ChipCAD honlapjáról szabadon letölthetők.
Szia Icserny,
Erdekes, hogy nalad fura dolgokat muvelt az ORG es a RES keveredesebol. Most teszteltem le nalam (MPLAB 8.30 + a hozza adott MPASM+MPLINK) es egyaltalan nem aggalyoskodott. Ha nem adtam meg udata szekciot, akkor egyszeruen a 0-s cimtol kezdte el hasznalni a teruletet, es tokeletesen csinalta a kiosztast, azaz betette access ram-os eleresre a valtozoimat es nem pakolta egymasra. Ha pedig megadtam neki az udata-t, akkor a 0x60-as cimtol kezdete el kiosztani ahogy illik, banked eleressel. Milyen verzioju MPASM+MPLINK van nalad? Idézet: „Milyen verzioju MPASM+MPLINK van nalad?” Két gépen próbáltam. Az egyiken v8.15a, a másikon talán v8.36b (majdnem azt mondtam, hogy a legfrisebb, de úgy látom, már 8.40-nél tartanak...).
Igen, gondolom meg vannak elfekvo raktar keszletek. De uj tervet mar nem csinalnek ezzel a kontrollerrel.
Sziasztok! Adott egy RTC és egy PIC, amik I2C-n fognak kommunikálni egymással. Közéjük kerül egy szintillesztő a tápfeszültség eltérés miatt. (Azért nem fog alacsonyabb feszről járni a PIC, mert van olyan kritikus eszközöm, aki 5V-ról megy)
A kérdés, hova kerülnek az I2C felhúzó ellenállások? Az RTC és a Level Shifter közé, vagy a Level Shifter és a PIC közé, vagy mindkét helyre? Az RTC adatlapján 4,7K ellenállások vannak meghatározva. Köszönöm!
Mivel tervezel szintet illeszteni (már csak a kétirányú kommunikáció miatt is érdekelne, én hasonló esetben egy TXB0104-et használtam SD RF modulhoz SPI illesztésére)?
Pontosan őt fogom használni!
Többek között az I2C-hez is ajánlja a Texas a TXS0102 típust. Ha jól értem az adatlapját, akkor annál mindkét oldalra kell tenni felhúzó ellenállásokat, feltéve, ha a beépített 10 kOhm-os felhúzások nem felelnek meg.
Ezt is érdemes elolvasni.
Köszi szépen, ezt már megkaptam Tőled régebben, de attól még más tanulhat belőle. Én kimondottan a TXB0104-et választottam, az is jó I2C-re, tökéletesen.
Üdv
Hogyan tudok PIC-el feszültséget mérni? AD-konverterével megoldható? A mellékelt rajzomon egy LM35 DZ hőérzékelő van. Ha azt a megadott módom az AN0 lábra kötöm, a Vref-re meg +5 V-ot (persze stab. IC-vel) Akkor a mellékelt kapcsolással lehet hőt mérni? (ugye az LM35 +1 fokonként 10mV-tal több feszt ad le illetve minuszba is mehet). Köszi
A rajzon még igazítani kell, de egyébként igen, lehet.
A 4-es lábbal ne akarj LED-et vezérelni, mert az a láb (ha éppen nem RESET funkciója van) csak bemenet lehet! A referenciát nem muszáj bevinni, ha nem pontosabb, mint a tápfeszültség. Lehet a VDD is referencia. A PIC bemenetére kötött jel ne menjen mínuszba! Haználj egy műveleti erősítőt, eltolással. Egyébként sem árt a jelet felszorozni, hogy kitöltse az ADC bemeneti tartományát (5V-os tápfesz esetén: 0-5V).
Sziasztok !
Kicsit talán OFF a kérdés.... SMD Pic -et kellene programoznom (több darab) ,de nem annyit ,hogy 20e Ft ért megvegyem a Chipcad -nél az átalakítót. Van erre valami megoldás ,ami kivitelezhető ,vagy ki kell kísérleteznem , -hova tovább - meg kell öntenem gyantából a "befogadót" és az ellendarabot rugós tüskével? Köszönöm a segítséget ! Üdv : István
Köszi.
A műveleti erősítőkhöz nem értek, tudnál hozzá egy kiegészítést rajzolni, hogy hogyan lehet kitolni egy konktér műveleti erősítővel a skálát? Egyébként a hőmérés kb 20-100fokig menne, így nem menne mínuszba. A 4. lábon GP3-ként nem menne Outputra? Ha nem akkor a 2-es lábra kötném Szóval ha segítenél a műveleti erősítővel azt megköszönném. Még nincs vele tapasztalatom. Amit kellett azt a PIC programjával meg tudtam oldani, de persze pontosabb lenne 0-5V-os intervallummal. Köszi
Legegyszerubb, ha ugy tervezed meg az aramkort, hogy ICSP-vel fel tudd programozni -- akkor egy pogo pinnel vagy egy 0.1" headerrel vagy barmi mas csatival megoldhato a dolog...
masik megoldas, hogy egy panelre kimarod az alkatresz labkiosztasat, melle egy masik panelbol raragasztasz vagy inkabb racsavarozol egy keretet ami az alkatreszt a helyen tartja, es/vagy akar egy masik ilyen kerettel az IC-t addig oda szoridot az erintkezokhoz ameddig a programozas tart. PCB-bol programozo header (Az eredeti Japan oldalt megprobaltam Magyarra fordittatni a Googlival, de az erthetetlen szoveget termelt belole, ezert inkabb Angolra vettem...) Idézet: „A műveleti erősítőkhöz nem értek” Én sem mondtam egy szóval sem, hogy értenék hozzá. De van itt Műveleti erősítők c. topik is. Mellesleg vannak olyan hőmérők is, amelyekben már eleve benne van az eltolás (pl. a Microchip TC1047A típusú, analóg kimenetű hőmérője -40 fokon ad ki 100 mV-ut, és onna megy felfelé 10 mV/C érzékenységgel). A pontossági igényt is jó lenne tisztázni, mert ha nem kell, akkor szükségtelenül ne bonyolítsuk az életet a műveleti erősítővel. Egyébként ha becsszóra nem megy mínuszba a hőmérséklet, és szükséged van az ADC maximális felbontására, akkor egy max. 5-szörös erősítésű neminvertáló alapkapcsolásra van szükséged. Idézet: „nem annyit ,hogy 20e Ft ért megvegyem a Chipcad -nél az átalakítót” Hány lábú és milyen tokozású? 8-28 lábú SOIC-hoz a HQ-Videónál humánusabb áron (5-6 eFt) láttam. Bővebben: Link Ne haragudj a kérdésemért. A pontosság nem fontos annyira (ha +-5 fok az se baj (annál azért több ne legyen). Akkor gondolom az 5x erősítésű neminvertáló alapkapcsolást a kezdő kérdések topikba írjam? Nem hiszem hogy mínuszba menne, mert csőben folyó víz hőmérsékletét mérné. De ha megírnád ide azt megköszönném. Köszi
Sziasztok.Pic16f84a-ban szeretném megoldani azt, hogy mondjuk percenként növelném a portb értékét
00000000-->00000001 Nagyrészét már kitaláltam :yes: de nem tudom,hogy ezt azt 1 percet mivel időzítsem...programozni nem akarom mert az kicsit sok sor lenne. A "T0CKI" kivezetés alkalmas mondjuk 1 külső időzítőre?Azt nem igazán ismerem...Vagy vmelyik-bármelyik bemenetre percenként szaggassam a magasszintet és azt számoljam??Az egyszerűség fontos lenne Választ előre is köszönöm Laller
Asszembler nyelven programoznám a PIC16F877A -et.
Topi egyik cikkét követem: http://www.hobbielektronika.hu/cikkek/nullarol_a_robotokig_-_pic_mi...z.html Letöltöttem a PIC adatlapját. Van egy angol oldal is, egy bevezető az assembly világába: http://www.mikroe.com/en/books/picbook/3_chapter.htm No, most kérdeznék. Van ehhez az utóbbi leíráshoz hasonló ismertető az asszembler PIC programozáshoz, akár angol, vagy magyar nyelven? Szóval, értitek, egy kissé részletesebb leírást szeretnék, amiben minden együtt van!
Olyan lehetőség van C18-ban, hogy makróval több utasítást helyettesítsünk?
Egy "pulse" makrót szeretnék írni, ami egy portlábat L szintre kapcsol, lefuttat 2 nopot és utána H szintre kapcsolja a lábat. Tehát ennyi lenne a kód: LATAbits.LATA0=0; Nop(); Nop(); LATAbits.LATA0=1; Ez csak függvénnyel oldható meg, vagy makróval is? Idézet: „nem tudom,hogy ezt azt 1 percet mivel időzítsem...programozni nem akarom mert az kicsit sok sor lenne.” Amióta a programciklust kitalálták, nem olyan sok sor az... |
Bejelentkezés
Hirdetés |