Fórum témák
» Több friss téma |
Sziasztok!
A következő kapcsolás miatt tettem fel a kérdésem. Adott a csatolt kapcsolás.A célom , az lenne , hogy a PIC lábáról magas vagy alacsony szintet küldjek. És ezekkel a szintekkel vezéreljem a Q1 és Q2 kimenetet.Az lenne a fontos , hogy a két kimenet egyszerre ne legyen azonos szinten. De az is fontos lenne , hogyha a PIC lábát nem kimenetként , hanem bemenetként kezelem , akkor a XOR kapuk ne kapjanak semmilyen jelet. A Q1 és a Q2 ilyenkor alacsony szinten legyen. De ha a lebeg a PIC lába , akkor viszont a két kapu bemenete össze lenne kötve , így az nem lenne jó. Így nem tudom , hogy a PIC , hogy érzékelné az adott lábon lévő jelet. Esetleg van valakinek valamilyen ötlete , hogyan lehetne ezt a működési módot kivitelezni? (Nem tudom jó helyre írtam -e a kérdésem ,de ha nem kérem a moderátort helyezze át.)
Sziasztok!
Lenne egy olyan kérdésem, hogy azoknál a PIC típusoknál, amelyeknél az órajel bemenetet is lehet használni digitális be-kimenetként (RA7/OSC1/CLKIN illetve RA6/OSC2/CLKOUT) azokhoz is lehet tenni egy-egy felhúzó ellenállást a lábakra? Nem fogja bezavarni a kvarc működését? Meg még azt is kérdezném, hogy egy lábat ha analóg bemenetként használok, akkor is mehet rá felhúzó ellenállás?
Sziasztok! Egy üres 12F675-ös pic-be kellene egy programot töltenem. Ez a pic olyan, hogy a programterület utolsó címén (03F8) gyárilag van egy adat (nekem 343C). Ez a belső 4MHz-es oszcillátorral kapcsolatos kalibrációs érték.
Amikor az IC_Prog-ban megnyitom a feltöltendő hex fájlt, ez az érték 3FFF lesz. Feltöltés során feldob egy ablakot miszerint nincs kalibrációs érték. Használja-e a fájlból az értéket (1192h). Engedjem? Ne engedjem, hanem módosítsam az adatot a gyári értékre? 20 MHz-es kvarc van a kapcsolásban. A program első pár sora így néz ki: LIST P=PIC12f675 ERRORLEVEL -302 ;SUPPRESS BANK SELECTION MESSAGES __CONFIG 01192H ;XT OSC, WATCHDOG ; INCLUDE P12F675.INC ; ;THE CONSTANTS DEBNC_RELEQU02H BEEP_LENEQU02H;beep length ;
Szia!
Idézet: „azoknál a PIC típusoknál, amelyeknél az órajel bemenetet is lehet használni digitális be-kimenetként (RA7/OSC1/CLKIN illetve RA6/OSC2/CLKOUT) azokhoz is lehet tenni egy-egy felhúzó ellenállást a lábakra? Nem fogja bezavarni a kvarc működését?” Ha kvarcot használsz, akkor csak órajellábként funkcionálhat ( nem kell felhúzó), ha felhúzót használsz akkor meg csak I/O lábként, akkor meg nem kell kvarc ! Idézet: „egy lábat ha analóg bemenetként használok, akkor is mehet rá felhúzó ellenállás?” Persze mehet ( csak ne 12 V-ra akard felhúzni ![]() ![]() Steve
Szia!
Ha külső kvarcot használsz, akkor nem érdekes a kalibrációs érték a működés szempontjából, nem változtatja a működési frekvenciát! Steve
Szia! Tehát akkor mindegy milyen érték van ott ha külső kvarcot használok?
Köszi!
Tehát akkor csak a belső lassabb órajelről mehet a PIC.
Szerintem igen, csak RETLW kódnak kell lennie, de a visszatérési érték nem számít ( ha felajánlott valamit, akkor elfogadhatod, mert nem fogja használni a működés során ( annyi van, hogy ezt viszont hibás értéknek veheti a programozód, mert RETLW típusú utasításnak kell ott lennie!).
Steve
Köszi, akkor az a biztos, ha visszaírom a gyári értéket.
Minap vettem egy PICkit 2 és egy flash adaptert, az ottani alkalmazott kedvesen adott egy lapot , amin rajta van hogy kössem össze a kettőt, meg is csináltam othon, de amikor összedugom őket , akkor a PICkit2 világít a power ha a szoftveren mondjuk rányomor a read re akkor kigyullad egy pillanatra a power a adapteren is(vagy ha adok rá + kakaót a VDD-n akkor folyamatosan) , de azt írja hogy device not found. Mi lehet a baj , miért nem látja a PIC ket?
Így kötöttem össze: http://www.chipcadextra.com/microchip-alkatreszek-es-fejlesztoeszko...terrel
Egy ellenállásmérővel nem tudod lekövetni, hogy az öt drót eljut-e a megfelelő lábakra? Innen nehezen tudnánk kideríteni, hogy mi lett félrekötve...
Jó családot választottál ki a PicKit2 progijában?Azért tehették volna "sorba" a csatlakozókat!
Sorban van az, csak nem a PK-hoz, hanem a Mikroelektronika termékéhez
![]() Steve
Haaaat, az az abra elegge megteveszto, ugyanis fejjel lefele abrazolja a PicKit csatlakozo sorat. Az MCLR van a haromszoggel megjelolt 1-es labon -- ahogy a mellekelt kepen is lathatod.
UI: Annak a panelnek is ellenorizd a csatlakozo kiosztasat, mert lehet az sincs rendben!
Sziasztok!
Keresgéltem a fórumon, de eddig nem igazán találtam egyértelmű választ a kérdésemre, ami az lenne, hogy létezik e olyan program ami teljesen valóságszerűen szimulálja a pic programot. Szóval be lehessen vinni a kapcsolást, meg a pic ben lévő programot, és pl ami a legfontosabb lenne, lehessen csatlakoztatni a szimulátorban is LCD kijelzőt a picre, hogy látni lehessen majd hogy fogja megjeleníteni. Nem tudom esetleg a MultiSim képes rá, vagy az nem? Előre is köszönöm a segítséget.
Vannak ilyenek igen, valoszinuleg a Proteus VSM a legjobb ebben, de ez ugye fizetos. Van egy masik ami szinten jol hasznalhato, a VirtualBreadboard. Ez utobbi ingyenes, de az aramkori szimulacioja nem annyira preciz (tulajdonkepp az nem igazi aramkor szimulacio amit abban csinalnak, de arra jo, hogy pl LED villogokat, LCD kiirasokat stb csinaljon az ember, magyaran a legtobb dolog amit egy atlag hobbi felhasznalo csinalgat)
Köszönöm szépen a gyors választ, kipróbálom!
Üdv: Peti
Hibák amiket elkövethetsz:
- hibásan kötötted össze, a csatolt linken megzavarhat a képenhogy fordítva van a pickit 3 csatlakozója és a kinagytott csatlakozósor, a jelölt hüvely a pickiten az MCLR láb - a pickit alap esetben nem táplálja meg az IC-t: ezt az mplab és a pickit2 szoftverben is be lehet kapcsolni. mplab esetén programmer/settings/power fülön. - az adapteren a felső két lábat össze kell kötni, a LED-nek folyamatosan kell világítania - a pickit a megfeleleő lábszámú csatlakozóba kell behelyezni, a 40es zif foglalat csak a 40 lábú IC-hez felel meg. - digitmulti szakadásméréssel ki tudod csipogni, hogy jól van-e összekötve, érdemes a pickit2 és az IC adatlapját is megnézni Remélem tudtam segíteni.
Na most , igen segítettél, az áram ellátás már jó , és MPLAB IDE-n már látja, de néha olyat ír ki hogy:
Idézet: „PKWarn0003: Unexpected device ID: Please verify that a PIC18F4520 is correctly installed in the application. (Expected ID = 0x1080, ID Read = 0x0)” Néha pedig ilyet(ez már a extra táp után ha írni akarom a picet): Idézet: „Failed verify (Address = 0x300001 - Expected Value 0x5 - Value Read 0x0) ”
Remelem nincs 2 meter kabel a PK2 es a panel kozott. 10-20 cm boven eleg.
Nem is tudom hol tegyem fel a kérdést, mert inkább azoktól kérdezném, akiknek nagy tapasztalatuk van már.
Szóval óraféleséget csinálok, Timer megszakítással, és nem tudom hogy melyik a jobb megoldás, ha órakvarccal megy (32.768kHz) a Timer, vagy ha a belső órajelről (valami 2hatványos kaviccsal) léptetem a Timert. Szerk.: csináltam már mindenféle módszerrel, mindegyik szépen megy, csak a véleményekre vagyok kíváncsi. Vagyis pontosabb lehet, ha 32.768 külső kavicsról megy a Timer, mint ha a belsőről (amit természetesen 2^n Hz-es kavics hajt).
A 32768Hz-es kvarc pontosabb, mint a nagyfrekvenciások, tehát ha pontos órát akarsz, akkor ilyen kell.
Amúgy nem muszáj 2n kvarcot használni, pl. 4MHz-es kvarccal is lehet egy másodperces időzítést csinálni. A pontosság csak a kvarc pontosságától függ.
Ha 3276800 as kavicsot használsz akkor egyszerűbb a számítás , de minden további nélkül meg lehet csinálni 4Mhz -s kaviccsal is. Egyébként minél nagyobb a kvarc ppm-száma annál pontosabb lesz az órád .
Idézet: „minél nagyobb a kvarc ppm-száma annál pontosabb” Inkább pontatlanabb. Az a pontosabb kvarc, amelynek kisebb a ppm értéke.
A TMR1 eseten jobban jarsz ha kulso orakvarcot hasznalsz, es a TMR1 IT-t hasznalod az idoszamlalo leptetesre. Teljesen fuggetlen a PIC orajeletol, es az IT lekezelese csak azutan tortenik amikor a TMR1 atfordult. Nem fog beleszolni a pontossagba IT regiszter mentesek, a TMR1 ujratoltese, etc... Annyit lehet meg tenni, hogy a kvarc melle teszel kondit, es trimmerkondit, igy finoman lehet a pontossagot allitani. Valahol az AN-ek kozott talasz leirast errol.
Ha mindenáron a normál MHz nagyságrendű rendszeróra kvarcot akarod felhasználni, ahhoz a Timer2-t ajánlanám a compare mód miatt.
32768Hz kvarcot roncs alaplapból tudsz bányászni (mindegyikben van egy, általában pici hengeres verzió).
Köszönöm a mindenkinek a hozzászólást!
Timer1-el gondoltam én is, mivel ott lehet külső kvarcot használni. Tudom hogy bármilyen kaviccsal meg lehet csinálni, csak kíváncsi voltam a véleményekre / tapasztalatokra, és úgy néz ki, hogy a külső órakvarc a legelegánsabb megoldás. |
Bejelentkezés
Hirdetés |