Transcript
Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat A fejlesztőkörnyezet használata Makan Gergely, Markella Máté, Mellár János, Mingesz Róbert 2016.01.27.
A C8051F410
2
SFR regiszterek
3
CrossBar
4
Port I/O cella felépítése
5
Config Wizard – mikrovezérlő konfigurálása
6
CrossBar konfigurálása: Config Wizard
7
Oszcillátor felépítése
8
Példa oszcillátort vezérlő regiszterre
9
Példa útmutató oszcillátor felfüggesztésere
10
Watchdog Timer • Cél: ha a főprogram lefagy, újraindítja a mikrovezérlőt • Rendszeresen törölni kell (a védeni kívánt programrészből), különben RESET • Ki lehet kapcsolni • RESET után aktív! Ha nem használjuk, ki kell kapcsolni!
11
A C8051F410DK fejlesztőkit
12
C8051F410DK - Fejlesztőkit
13
Kit tartalma • C8051F410 Target Board • C8051Fxxx Development Kit Quick-Start Guide • Silicon Laboratories IDE and Product Information CD-ROM • AC to DC Power Adapter
• USB Debug Adapter (USB to Debug Interface) • USB Cable 14
C8051F410-Target Board
15
Target Board – Mikrovezérlő
16
Target Board – Debug Adapter, Kvarc
17
Target Board – Tápfeszültség
18
Target Board - Tápfeszültség
19
Target Board – Analóg I/O
20
Target Board – LED, Nyomógomb, UART
21
Kit üzembe helyezése • Jumperek ellenőrzése • Szalagkábel csatlakoztatása • USB kábel csatlakoztatása • AC/DC adapter csatlakoztatása
22
Kit kikapcsolása • AC/DC adapter leválasztása • USB kábel leválasztása • Szalagkábel leválasztása
23
Jumperek #
Leírás
Alaphelyzet
J1
AIN0 bemenet bekötése P1.7-re
Zárt
J2
Analóg csatlakozók
-
J3
AIN1 bemenet bekötése a P1.6-ra
Zárt
J4
Debug adapter csatlakozó
-
J5
Nyomógombok és LED-ek engedélyezése
Mind zárt
J6
IDAC1V kimenet bekötése az AIN1-re
Nyitott
J7
Tápfeszültségek kivezetése
-
J8
RS232 port
-
J9
3,3 V-os stab IC tápjának kiválasztása: VUNREG/5VEC3 5VEC3: Debug adapterről jön
VUNREG
J10 3VD engedélyezése
Zárt
24
Jumperek #
Leírás
Alaphelyzet
J11
Portok kivezetése
-
J12 VREGIN forrásának kiválasztása (+3VD. 5VEC3. VREG); engedélyezés
Zártak: VREG, VREGIN_EN
J13 P0.0 bekötése az IDAC0V-re
Nyitott
(Akkor van rá szükség, hogy ha az analóg kimenetet használni kívánjuk)
J14 P0.1 bekötése az IDAC1V-re
Nyitott
(Akkor van rá szükség, hogy ha az analóg kimenetet használni kívánjuk)
J15 VDD rákötése a potencióméterre (Akkor van rá szükség, ha a potenciómétert használjuk)
Nyitott
J16 IDAC0V rákötése az AIN0-ra
Nyitott
J17 VIO kiválasztása (5VEC3, +3VD, VREG, VDD); engedélyezés
Zártak: VREG, VIO_EN
J18 P0.1 port engedélyeése a csatlakozón Ha kvarc van beforrasztva, le kell szedni a jumpereket
Zárt
25
Jumperek #
Leírás
Alaphelyzet
J19
VREG bekapcsolása, kikapcsolása
Nem GND
J20
Tápfeszültség kivezetés
-
J21
VREG engedélyezése és beállítása
Zártak: VREG_, 5.25V
J22
VREFIN bekötése a P1.2/VREf-re
Nyitott
J23
VDD LED
Zárt
J24
VREGIN LED
Zárt
J25
Poti rákötése az AIN1-re (Akkor van rá szükség, ha a potenciómétert használjuk)
Nyitott
J26
Óra kvarc
Nyitott
J27
UART bekötése
Nyitott: CTS, RTS Zárt: TX, RX
26
Jumperek #
Leírás
Alaphelyzet
J28
VREF pufferkondik
Vezeték
J29
VBAT engedélyezése
Zárt
J30
VBAT forrása
Hold
J31
Nem beforrasztott
Nyitott
J32
VDD engedélyezése
Zárt
J33
VIO LED
Zárt
27
Fejlesztőkörnyezet használata
28
Új projekt létrehozása • Silicon Labs IDE • Project/New Project • Az útvonal nem tartalmazhat ékezetes karaktert!
29
Új projekt létrehozása • Üres c fájl létrehozása a projekt könyvtárban File/New File... -> C source file • Létrehozott fájl hozzáadása a source könyvtárba • Jobb gomb a fájlra, majd "Add *** to build"
30
Új projekt létrehozása • "C8051F410.h" fájl bemásolása a projekt könyvtárba Helye: C:\Program Files\SDCC\include\mcs51 • Szükség esetén a Tool Chain Integration-ban kiválasztani az SDCC 3.x fordítót (Preset name) • Ellenőrizni beállításokat • Assembler: C:\Program Files\SDCC\bin\sdas8051.exe
• Compiler: C:\Program Files\SDCC\bin\sdcc.exe • Linker: C:\Program Files\SDCC\bin\sdcc.exe
31
Mikrovezérlő konfigurálása • Config Wizard 2 indítása
32
Mikrovezérlő konfigurálása • Watchdog kikapcsolása (Peripherals/PCA)
33
Mikrovezérlő konfigurálása • Port IO konfigurálása • Push-Pull: P2.1 és P2.3
34
Mikrovezérlő konfigurálása • Mentés • Generált kód beszúrása a forrás fájlba • (Vagy generált kód mentése include fájlba) • Átjavítani: C8051F410_defs.h erre: C8051F410.h
• Az Init_Device() meghívása a main() függvényből
35
Program írása • Speciális portlábak definiálása a fájl elején #define LED1 P2_1 #define LED2 P2_3 #define SW2 P1_4 #define SW3 P1_5 • Nincs pontosvessző a sorok végén!
36
Program írása • Főprogram void main() { Init_Device(); .......................................... while(1); // végtelen ciklus a végén, hogy ne menjen tovább… }
37
Program fordítása • Fordítás: Rebuild all • Az összes fájl törlődik, biztosan nem tudunk kódot letölteni, ha hiba volt • Hiba esetén javítás, majd ismétlés
38
Csatlakozás a kit-hez • Debug adapter kiválasztása • Csatlakozás
39
Program letöltése • OMF fájl kiválasztása • Letöltés: Download code • Futtatás: Go
40
Feladatok
41
1. feladat • Első projekt létrehozása • Konfigurálás • Első program: P2.1 = 1, P2.3 = 0 • Első program letöltése, futtatása • Melyik LED világít, és miért?
• Generált ASM kód • Debuggolás, lépésenkénti végrehajtás 42
2. feladat • Program módosítása: nyomógombok használata • Valami kezdőérték beállítása • SW2 -> P2.1 = 1, P2.3 = 0 • SW3 -> P2.1 = 0, P2.3 = 1
43
Következő óra • Jegyzet anyaga (Laboratory practicals) korábbi anyag, különösen a megszakításkezelés, továbbá: 51 – 61 oldal • Van előzetes feladat • Lesz jegyzőkönyvkészítés
44