Fórum témák
» Több friss téma |
Jaj bocsi. Nagy örömömben nem is figyeltem. A kkor ha timer0-át is beüzemelek az 4MHz-en fog muzsikálni. Nem is lehet 32kHz kvarc sebességgel használni ébren? Most az van benne. Szóval vagy ez vagy az a válsztás? Kicsit telhetettlen vagyok
Adatlap alapján nem lehet programból órajelforrást váltani. Arról működik mindig, ami a konfigurációs bitekkel ki van választva.
Szia!
Vegyél fel egy 24-32 bites fázisregisztert, amihez minden ciklusban egy növekményt addsz hozzá. Ez a növekmény határossa meg majd a frekvenciát. A legfelső 8 bittel címezd meg az EEPROM memóriát, amibe előzőleg egy szinusz jelalakját (127*sin(2*pi*k/256)+127 képlet szerint) töltötél be. Az EEPROM -ból kiolvasott adatot a PORTB-re írva, hajts meg egy (0.5% tűrésnél jobb ellenállásokból álló R - 2R létra) D/A hálózatot. A kimenete egy állítható frekvenciájú (és jelalakú - EEPROM átírásával) jelgenerátor... Szia
Szia!
Ez ugyan AVR-es, de megcsináltam 18F242/252-vel (ott a belső ram -ban is címezhető egybefüggő 256 byte-os terület, és egyszerűbb a hosszú számok összeadása). 500kHz-ig megy 1/16 Hz felbontással... Szia
Szia!
Ez érdekelne engem is! Tudnál bővebbet mondani róla?
Még mindig az alapoknál tartok.
Topi ledvillogtató cikkében : Idézet: „1. START 2. BCF STATUS,RP1 3. BSF STATUS,RP0 ;BANK1-be átlépünk 4. ;PORTA Digitális I/O-vá tétel 5. MOVLW 0x06 6. MOVWF ADCON1 ;Mindegyik PORTA digitális 7. MOVLW B'00011111' ;Betöltjük az akksiba a TRISA-ba írandót 8. MOVWF TRISA ;Beállítjuk a PORTA-t bemenetre (beírjuk a TRISA-ba) 9. MOVLW B'00000000' ;Betöltjük az akksiba a TRISD-be valót 10. MOVWF TRISD ;Beletöltjük (mind kimenet a nulla miatt) 11. BCF STATUS,RP0 ;BANK0-ba visszalépünk” ez a rész elhagyható, mert alatta ott van hogy ez a rész a PortA digitálissá állításáért felelős. Vagyis mivel a PortA lehet még feszültség-szint mérő (ADC), ami alapértelmezetten aktív? Tehát jól gondolom hogy ha csak a PortD-n akarjuk villogtatni a LED-eket, akkor ez a rész elhagyható?
A MOVLW 0x06 és a MOVWF ADCON1 hagyható el, ez kapcsolatos az analóg bemenetek tiltásával.
Hogy mikor mi hagyható el, az az adatlapból derül ki. Meg kell nézni, hogy az adott lábon vagy porton milyen analóg funkciók vannak. Álatában az ADC bemeneneket és az analóg komparátor bemeneteket kell tiltani.
Értem, a TRISA és a TRISD pedig azt döntik el hogy kimenetek-e vagy bemenetek-e a portok?
Igen, az adatáramlás irányát szabják meg.
Üdv mindenkinek!
Olyat kérdeznék, hogy ha a 18F2550esemet akarom használni 40 Mhz-es oszcillátorral, akkor mekkora kondenzátort kell bekötni melléje? Ezenkívül pedig van valakinek valami negatív tapasztalata ekkora oszcillátorral? Köszönöm!
Az adatlapja 15pF-ot ír 20MHz-es kristályoszcihoz (ez már nem XT hanem HS tipus)...
Szia!
- A belső oszcillátor csak kb. 25 MHz-ig használható, - Külső órajel lehet 40MHz-es is, pl. tokozott oszcillátorból, akkor nem kell kondenzátor. Szia
Köszi. Tehát azt nyugodt szívvel használhatom 40 Mhz-hez is...
Tokozott oszcillátor? Ez nekem új, ilyennel még nem találkoztam Hol tudok olyat szerezni? Hestore-on ha jól látom, nincs ilyen.
Szerintem kerámia rezonátorra gondol..
Itt a 18F1320 lábkiosztása, miket kell még tiltani hogy ha a PortB-t akarom használni digitális kimenetként, sőt hogy egyszerűbb legyen, csak az RB0-át (ezen van még valami megszakítás is)..?
Az adatlapban benne van a PortA inicializációja, de annak más feladatai vannak mint a PortB-nek.
Kerámia rezonátorra 4, 8 és 16MHz-re ír értéket az adatlapja.
Szerintem erre gondolt:Kvarcgenerátorok
No majd érdeklődök a "bótban", ha odáig jutok. Gugolban kerestem az adott oszcillátorra, ott találtam pár tokozottat, meg a www.ret.hu-n is vannak tokozottak, szép árért. Ezek nem kerámia rezonátotrok. Köszi a válaszokat!
Valószínű ez lesz az. Nem occók, az biztos.
Szerintem egy egyszerű kvarc és két kondenzátor elég olcsó cucc, és akár egy 4MHz-es kvarcról is tudod 48MHz-en hajtani a kontrollert. Van valami oka, hogy ilyen oszcillátor "modult" akarsz használni?
Régi PC alaplapokban meg kártyákban tömegével vannak ilyen oszcik.
Idézet: „és akár egy 4MHz-es kvarcról is tudod 48MHz-en hajtani a kontrollert.” Ennek a módját nem tudom, szimplán ennyi az oka A sima oszcillátor és kondi tényleg nem drága, de a modul picit drágább
Hát, pedig ha ezt nem tudod, akkor mit akarsz a PIC-el csinálni? Benne van az adatlapjában, hogy kell a PLL-t beállítani benne. Azt is be kell neki állítani, hogy külső órajelről menjen, akkor meg már inkább az olcsóbb módszert használja az ember.
Utánanéztem a fejlesztőkörnyezet doksijában a hogyan, mikéntekről, meg a PIC doksiban, hogy mi is ez. Most már tudom merre menjek. Köszi
Sziasztok!
Tényleg ilyesmire gondoltam... Annyira azért nem drága. A kvarcnál lehet egy kis probléma: párhuzamos vagy soros rezonanciára tervezett-e a kvarc - még nem találtam olyan beszerzési forrást, ahol meg tudták volna mondani. A két frekvencia között egy kis eltérés van. Ha egy párhuzamosat járatunk soros rezonanciára tervezett áramkörben, a frekvencia nem az lesz, amit ráírtak... Visszatérve a 18F2550-hez: A 40MHz belső órajel azaz a 10.000.000 utasítás/sec csak külső órajellel jön össze.... Nem erre a feladatra tervezték (az USB órajel előírások miatt más az órajel előállítása). A többi 18F egy egyszerű 10MHz kvarccal és a belső PLL bekapcsolásával járatható 40MHz-n. Szia
Az ábra szerint az RB0 lábon is van analóg bemenet (AN4). Gondoskodnikell róla, hogy az ADCON1 regiszter megfelelő bitje (PCFG4) 1-be legyen állítva.
Egyébként az adatlap I/O port részében van inicializálási mintapélda PORTB konfigurálásához. Az INT0 funkció nem érdekes, az nem nem zvarkodik, amíg nem aktiválod (digitális bemenet üzemmódban lehet használni, programmegszakítás kiváltására, külső esemény hatására) |
Bejelentkezés
Hirdetés |