De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 6 - onderwerpen Uitleg.

Verwante presentaties


Presentatie over: "Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 6 - onderwerpen Uitleg."— Transcript van de presentatie:

1 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 6 - onderwerpen Uitleg schema END directive herhaling PC / PCLATH Indirect adresseren Read analog inputs EEPROM Zend en ontvang een IR signaal Muziek Geef door wat je ‘eigen’opdracht is!

2 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 2

3 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 3 END directive Puur voor de assembler om het einde van de source aan te geven (stamt uit de tijd van papertape en punch-cards) Twee manieren om de processor te laten ‘stoppen’: sleep; speciale instructie klaar; eeuwige lus goto klaar

4 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 4 PC (1) De laagste 8 bits van de PC kan je lezen en schrijven via PCL 4k  PC is 12 bits Hoogste 6 bits komen uit PCLATH Waarvoor gebruik je dit?

5 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 5 PC (2) ; data table Get_Data: addwf PCL, f retlw 0x11 retlw 0x21 retlw 0x44 … Let op: PCLATH bits Onverwachte waarden in W

6 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 6 PC (3) GOTO label GOSUB label De instructie bevat slechts 11 bits, het hoogste 2 bit komen wederom uit PCLATH. PCLATH start op 0x00, dus hier heb je pas mee te maken als je meer dan 2k code schrijft. Datasheet p21

7 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 7 Indirect adresseren X = *A: movfw A movwf FSR movfw INDF movwf X FSR is een soort pointer, INDF is dan het ‘venster’ naar het aangewezen file register FSR is 8 bits, dus het hoogste bit is page bit 0. Page bit 1 komt uit SATUS:IRP.

8 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 8 Read an analog input (1) Zet de juiste code op RA0.. RA2 en RC0.. RC2 voor de potentiometer of de LDR Zet de RC3 pin op input Zet ANSEL op 0x80 (AN7 == RC3 is de analoge input)

9 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 9 Read an analog input (2) Zet ADCON1 0x50 Zet ADCON0 op 0x1D Wacht >= 100 us

10 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 10 Read an analog input (3) Zet het A/D start/busy bit aan Wacht tot het A/D start/busy bit uit staat Lees de waarde uit ADRESH

11 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 11 EEPROM - read 256 bytes data EEPROM Read: EEADR = ; EECON1 = 0; EECON1 = EECON1 | 1; /* bsf EECON1,0 */ While( eecon1 & 1 ); = EEDAT; Datasheet p73

12 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 12 EEPROM - write EEADR = ; EECON1 = 4; EECON2 = 0x55; EECON2 = 0xAA; EECON1 = EECON1 | 2; /* bsf EECON1,1 */ While( eecon1 & 2 ); EECON1 = 0; = EEDAT; Datasheet p73

13 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 13 De IR ontvanger (1) (alleen) gevoelig voor een 36 kHz signaal. Dat signaal mag niet continu zijn

14 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 14 De IR ontvanger (2) (alleen) gevoelig voor een 36 kHz signaal.

15 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 15 De IR ontvanger (3) Aanbevolen: puls >= 400uS, periode =< 0.4

16 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 16 De IR ontvanger (4)

17 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 17 Eenvoudig IR zenden en ontvangen 36 kHz  28 us per puls  28 instructies per fase (hoog of laag) 400 us / 28 us  minimaal 14 pulsen, neem bv 30 pulsen Onmiddelijk daarna de IR ingang lezen (laag == signaal gedetecteerd) Pauze! herhaal

18 Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 18 Muziek Octaaf = verdubbeling van de frequentie ‘centrale A’ = 440 Hz Octaaf is verdeeld in 12 gelijke stappen Dus stap^12 = 2  stap = 12 √ 2 Klopt niet helemaal (‘gelijkzwevend’) Niet uitrekenen, gewoon een tabel gebruiken (zelf samenstellen of googelen)


Download ppt "Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 6 - onderwerpen Uitleg."

Verwante presentaties


Ads door Google