Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdTobias Mulder Laatst gewijzigd meer dan 10 jaar geleden
1
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 2 - onderwerpen PIC16F688 MPLAB De assembler en de simulator Assembler pseudo-instructions Het DB026 bordje Programma: tellen op de LEDjes
2
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 2 MPLAB IDE IDE : Integrated Development Environment Project management Editor Assembler Programmer/debugger interface(s) Integration of third-party tools (compilers)
3
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 3 PIC16F688 Interne clock is 8 MHz (16F676: 4 MHz) 4k code (16F676: 1k) 256 general purpose registers (RAM, 16F676: 64) 256 bytes EEPROM (16F676: 128) Nanowatt features € 3.56 (16F676: € 2.62)
4
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 4 PIC16F688 memory map
5
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 5 Gebruik van MPLAB (Zie ook de MPLAB quick start guide op de Microchip website ) Start MPLAB Controleer: Configure Select Device 16F688 (als je het bordje hebt aangesloten) Controleer: Programmer Select Programmer 5 PICkit 1 Start een project: Project New kies een project naam, zet project directory naar keuze lokaal, op je USB stick, of op (in directory in) je network drive Of open een bestaand project: Project Open kies een bestaand project Een nieuwe file creeren: File New; File Save As mag zelfde naam als project (als het de hoofdfile is, of als je maar 1 file gebruikt) Een assembler file toevoegen aan een project: Project Add Files to Project double click to add the file as source file
6
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 6 Gebruik van de assembler Check: edit properties editor tab zet “line numbers’ aan Edit je file (saven is niet nodig maar wel verstandig) Assembleren en linken: Project Build All Herhalen tot de fouten en warnings eruit zijn!
7
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 7 Gebruik van de simulator Debugger select tool MPLAB SIM Debugger reset processor reset (F6) Debugger Clear Memory GPRs (let op!) Debugger step into (F7) View 4 File Registers View 5 Special Function Registers (Waarden die in de vorige stap zijn veranderd worden rood weergegeven.)
8
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 8 Gebruik van de simulator Stap nu een aantal keren tot je denkt dat je programma-lus goed werkt (F6) Double-click op de regel na je loop om een breakpoint te zetten Debugger Run (F9) Controleer of het resultaat klopt
9
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 9 Assembler : variabelen Absolute adressen: Met #define of EQU: movfw H’20’ movwf H’21 #define A H’20’ BEQU H’21’ movfw A movwf B
10
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 10 Assembler : variabelen cblock cblock 0x20 ; name_1, name_2 name_3, name_4 ; endc... cblock name_5, name_6 endc
11
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 11 Assembler template list p=16f688, f=inhx32 #include __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & … movlwB'01110000' bsfH'03', 5 movwf H'8F' bcfH'03', 5 org 0 cblock H’20’ endc ; hier komt uw code sleep END staat op http://www.voti.nl/hvu/2TPRJ5/template.asm
12
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 12 Een stukje van PIC16F688.INC ;----- Register Files----------------------------- INDF EQU H'0000' TMR0 EQU H'0001' PCL EQU H'0002' STATUS EQU H'0003' FSR EQU H'0004' PORTA EQU H'0005' PORTC EQU H'0007' PCLATH EQU H'000A' INTCON EQU H'000B' PIR1 EQU H'000C' Staat op C:/Program Files/MPLAB IDE/MChIP_Tools
13
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 13 Het DB026 bordje USB interface (power, data) optional Wall-Wart power USB / programming circuit with PIC16C745 target PIC16F676 (or other 14-pin PICs) I/O: –8 LEDs, 3 seven-segment digits –keypad –potentiometer, LDR –luidsprekertje –IR transmitter, IR receiver
14
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 14 USB interface
15
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 15 Wall-wart voeding
16
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 16 programming circuit
17
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 17 target PIC16F688
18
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 18 8 LEDs
19
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 19 3 7-segment displays
20
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 20 keypad
21
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 21 LDR (lichtgevoelige weerstand)
22
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 22 Potentiometer (instelbare weerstand)
23
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 23 Luidsprekertje
24
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 24 IR receiver
25
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 25 IR transmitter
26
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 26 RJ connector
27
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 27 Dwarf Board connector
28
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 28 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 (ongeveer) 0.5 ms (wachtlus)
29
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 29 DB026 bordje – tel op 8 LEDs Schijf ook (telkens) de juiste waarde naar RA: –Copieeer de teller –Verschuif tot de positie klopt –Maskeer de rest weg –Voeg de ‘selecteer LEDs’ bitjes toe
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.