1 / 27

Les 3 - onderwerpen

Les 3 - onderwerpen. Het DB026 bordje Programmeren: tellen op de LEDjes Macro’s. USB interface. Wall-wart voeding. programming circuit. target PIC16F688. 8 LEDs. 3 7-segment displays. keypad. LDR (lichtgevoelige weerstand). Potentiometer (instelbare weerstand). Luidsprekertje.

wyatt-leon
Download Presentation

Les 3 - onderwerpen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Les 3 - onderwerpen • Het DB026 bordje • Programmeren: tellen op de LEDjes • Macro’s Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

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

  3. Wall-wart voeding Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  4. programming circuit Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  5. target PIC16F688 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  6. 8 LEDs Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  7. 3 7-segment displays Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  8. keypad Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  9. LDR (lichtgevoelige weerstand) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  10. Potentiometer (instelbare weerstand) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  11. Luidsprekertje Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  12. IR receiver Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  13. IR transmitter Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  14. RJ connector Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  15. Dwarf Board connector Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  16. PIC16F688 memory map:I/O pinnen Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  17. DB026 bordje – aansturing Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  18. DB026 bordje – tel op 6 LEDs • Configureer RA en RC als outputs • Zet RA op de juiste waarde voor ’LEDs’ • Loop: • Tel in een variabele • Copieer die naar RC • Wacht 2 ms (gebruik je wacht subroutine) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  19. uitleg: read-modify-write clrf PORTA bsf PORTA, 0 bsf PORTA, 1 bsf PORTA, 2 bsf PORTA, 3 bsf PORTA, 4 bsf PORTA, 5 bsf PORTA, 6 bsf PORTA, 7 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  20. subroutine voorbeeld wait addlw 0 skpz return addlw 1 goto wait ... ... movlw D’200’ call wait Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  21. subroutine • lijkt op een C functie maar veel primitiever • label waar je met een call instructie heen springt • daar een reeks instructies • een return instructie brengt je terug • er is een stack voor de return adressen • die stack is maar 8 niveau’s diep • volgorde van subroutines en main is niet belangrijk • let wel op als je subroutines vooraan staan! Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  22. wat is een macro • naam voor een aantal regels text, eventueel met parameters • wordt letterlijk ingevoegd bank0 macro bcf STATUS, RP0 bcf STATUS, RP1 endm Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  23. macro voorbeeld en gebruik bank0 macro clrf STATUS endm bank1 macro bsf STATUS, RP0 bcf STATUS, RP1 endm ; switch to 8 MHz movlw B'01110000' bank1 movwf H'8F' bank0 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  24. Macro – listing (.lst) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  25. Macro Subroutine • marco heeft geen call/return (gebruikt de stack niet) • subroutine aanroep is altijd 1 statement • macro ‘aanroep’ voegt de complete macro in • een macro kan assembly-time argumenten hebben Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  26. DB026 bordje – tel op 8 LEDs (1) schrijf een macro die een bit copieert: bitcopy_to_from macro dest_byte, dest_bit, source_byte, source_bit ..... endm hoe? [clear destination bit] if [source bit is set] [set destination bit] Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

  27. DB026 bordje – tel op 8 LEDs (2) Schijf ook (telkens) de juiste waarde naar RA. Voeg aan je vorige programma toe: • copieer de ‘hogere’ bits van de teller naar de RA-buffer met behulp van je ‘copieer bit’ macro (en schrijf de RA buffer weg) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren

More Related