ingebedde systemen (embedded systems) wat is een embedded systeem? voordelen? meestal voor één...
TRANSCRIPT
![Page 1: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/1.jpg)
Ingebedde systemen (embedded systems)
• Wat is een embedded systeem? Voordelen?
Meestal voor één toepassing.
Eenvoudig: meestal microcontroller!
• Waaraan moet het systeem voldoen?
Betrouwbaarheid: fouttolerant ontwerp&test
Performantie met “low cost” hardware!
![Page 2: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/2.jpg)
Embedded systemen
• Hoe krachtig zijn embedded processoren? Rekenkracht:4 , 8 , 16 , 32 , 64 bit,…..
Hoeveelheid geheugen (program & data)
Beschikbare I/O poorten
Clocksnelheid
Stroomverbruik
• Selecteer i.f.v.toepassing…
![Page 3: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/3.jpg)
Embedded systemen
• Embedded systemen zijn (meestal)REAL-TIME. Verwerken van ‘events’ tegen een bepaalde deadline
• bv. ABS systeem, cruise control….
De deadline voor ‘real time’ is functie van de toepassing!• Snelle of trage systemen kunnen real-time zijn!
De impact voor het missen van een deadline maakt een systeem:• Hard real-time of Soft real-time
![Page 4: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/4.jpg)
Wat is een microcontroller?
CPU
X-talOsc.
PORADRES
DECODER
ROM(FLASH)(EPROM)
(EEPROM)
SRAM
ADRESBUS
DATABUS
PAR.POORT
SER.POORT
TIMERCOUNTER
• Een typisch diskreet microprocessorsysteem.
![Page 5: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/5.jpg)
Nadelen• MTBF
– n:aantal verschillende componenten– qi: hoeveelheid van de ide component– ri: FIT rate (failure in time) per miljart werkingsuren (statistisch)
meestal f( temp, Vcc, Imax)
![Page 6: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/6.jpg)
Nadelen
• PCB ontwerp• EMC problemen• Design fouten (steeds complexere componenten)
• ‘Time to market’ en Kostprijs!
![Page 7: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/7.jpg)
• Een typisch microcontrollersysteem
![Page 8: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/8.jpg)
voordelen• Single chip
– Betrouwbaarheid : MTBF++– minder complexe PCB– betere EMC
• Lower(er) cost• veel standaardoplossingen
bv. INTEL meer dan 25 jaar op de markt.
![Page 9: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/9.jpg)
Wat is er op de markt?
![Page 10: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/10.jpg)
• Voor een gegeven toepassing moet men steeds de
meest geschikte controller kiezen in functie van:
Beschikbaarheid Ervaring tools bibliotheken met beschikbare software kostprijs...
![Page 11: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/11.jpg)
4-bit controllers.• low end toepassingen
– pagers, calculators, games (tamagochi), uurwerk,fiets km teller.
• low cost ($2.5) • low voltage/power
– 1,2V-3,6V@1,8μA active!!!
• low speed– 32KHz….128KHz
• ROM versies!!!!
![Page 12: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/12.jpg)
8 Bit controllers bv. Infineon C537• Medium-end toepassingen
Industriële toepassingen, regelaars, keyboards, PLC’s, subsystemen zoals display-units, sensoren, stepperdrivers.
• Low/medium cost (rond $8)• 40mA @12MHz en 5V (geen low power)• Clock: 3,5 tot 16MHz (niet static!)• -40…85ºC Industrial• Features: Niet ISP! ,2UARTS ,Div/mul unit ,PWM ,12 ch. 10 bit
ADC , Watchdog , Timer/counters , 40 programmable I/O lines
![Page 13: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/13.jpg)
![Page 14: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/14.jpg)
16 bit controllers bv. Infineon XC167
• High end toepassingen.– Reken intensieve toepassingen (bv. servo-
controllers, PID controllers, motorsnelheidsregelingen), PLC’s, Industriële communicatie (CAN-bus), automotive (motor management, ABS,…)
• Medium cost ($20)• Speed:2-20 MHz (100nS instr. Exec. Time)• Industrial -40…85°C
![Page 15: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/15.jpg)
Features: 128Kb Flash, On chip bootstrap loader, On Chip Debug Support
2 CAN controllers,USARTS,TIMER/COUNTERS,16 CH 10 bit ADC WDT, 103 programmable I/O lines….
![Page 16: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/16.jpg)
32 bit controllers bv. MB91F361 Fujitsu (208 MQFP).
• Zeer rekenintensieve taken: Laser printers,inktjet printers, communication products (routers, bridges…), High end gaming, muziek instrumenten, GPS systemen, next generation dashboards.
• Medium cost:($25)• -40..85ºC Industrial• Speed: 16-64 MHz (programmable)
![Page 17: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/17.jpg)
Features: 512Kb Flash (OS), 16Kb RAM, external bus (32bit), CAN 3CH, stepper motor control, Timer/counters, ADC, DAC, I2C, UARTS 3CH, Sound generator, PPG, LED port, DMA controller, Watchdog timer.
![Page 18: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/18.jpg)
De Nayer support:• 4 bit: geen (ROM versies)• 8 bit: 8051 reeks en Atmel AVR reeks
– ADμC832, C517,XC888 ,AT89S8252, 89C51CC01,T89C5115
– AT Mega 128, AT 90S2313,AT 90S8535
• 16 bit: Infineon en Beck– C167– 16 bit IPC@CHIP SC12 (80186)
• 32 bit ARM7 TDMI
rood = ontwikkelbord beschikbaar
![Page 19: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/19.jpg)
CPU
X-talOsc.
PORADRES
DECODER
ROM(FLASH)(EPROM)
(EEPROM)
SRAM
ADRESBUS
DATABUS
PAR.POORT
SER.POORT
TIMERCOUNTER
Basis 8051CPU
X-talOsc.
PORADRES
DECODER
ROM(FLASH)(EPROM)
(EEPROM)
SRAM
ADRESBUS
DATABUS
PAR.POORT
SER.POORT
TIMERCOUNTER
![Page 20: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/20.jpg)
Algemene 8051 familie architectuur.
• Oorspronkelijke 8051(40 pin DIL):– 8 bit CPU– 4 Kb ROM (nu Flash)– 128 bytes interne RAM– twee 16 bit timer/ counter circuits– On chip oscillator– 4 poorten (8bit)– Interrupt controller
Single chip gebruik
CPU-core van Intel (ca. 1980) is identiek, de “extra’s” verschillen!
Extern geheugen soms mogelijk!
![Page 21: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/21.jpg)
Memory map 8051
GPR
00000001
0002
00000001
0002
FFFDFFFEFFFF
FFFD
00040003
00040003
FFFFFFFE
XRAMDATA memory
ROMCODE memory
PROGRAMMA
CPU
Registers
SFR
PIOSIOAD
Timers
00
02
FFFE
8180
FEFF
01
8081
Data bus
Adres bus
RD#
WR#
PSEN#
8 bit 8 bit
MOVC@DPTR
MOVX@DPTR
I/O & control
Read/Write16 bit adres 8 bit adres
Read/WriteRead only
Controlebus
Extern de CPU Intern in de CPU
![Page 22: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/22.jpg)
De externe systeem architectuur.Externe geheugenchips zijn via een adres-databus aanspreekbaar)
ROMCodegeheugen
XRAMDatageheugen
Externe datageheugenruimte
Externe codegeheugenruimte
0000h
FFFFhFFFFh
0000h
0FFFh
1000h
Intern Codegeheugen(ROM)
ROMless controller bv. (C537 en C517)
Codegeheugen:
-Code fetch
-MOVC A,@A+DPTR
Datageheugen: bv.
-MOVX A,@DPTR
/PSEN /RD /WR
4Kb
64Kb
Intern Datageheugen(RAM)
![Page 23: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/23.jpg)
De externe systeem architectuur.De externe codegeheugenruimte van de ADuC832
Hier geen extern geheugen meer mogelijk! (NOP)
![Page 24: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/24.jpg)
De externe bus architectuur.P2
P0
ALE
P3
RDWRPSEN
8051 compatibeleController Bv: C517 van Infineon
Adreslatch
16-bitadresbus
databus
MSB adresbus (A8-A15)
LSBadresbusA0-A7
LSB adres/databus
AD0-AD7
![Page 25: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/25.jpg)
De externe systeem architectuur.
PIN layout 8051(DIL)
-4 poorten met alternatieve functie.
-extern geheugen via poorten 0 en 2 als businterface +
RD+WR+PSEN
![Page 26: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/26.jpg)
De pin functies van de ADuC832
![Page 27: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/27.jpg)
De externe businterface.
-Alleen nuttig met genoeg poorten, anders single chip!
-RST bij 8051 actief hoog!
-ALE om adres/databus te demultiplexen.
-EA om code op te halen uit extern geheugen.
-PSEN om het externe code-geheugen aan te spreken.
Infineon C517/ C537
![Page 28: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/28.jpg)
De externe timing.Het ‘quartz crystal’ als frequentie bepalend element van de clock-oscillator.
Z
freq
![Page 29: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/29.jpg)
De externe timing.
Xtal1 Xtal2
De clock en de relatie tot de systeemtiming
Clockfrequentie bepaald:
-instructietijd
-stroomverbruik
-EMI
veel gebruikt:11.059MHz
PCB layout:
-signaalbanen verbonden met Xtal zeer kort houden.
-Xtal kort bij controller!
-massavlak!
![Page 30: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/30.jpg)
De systeemclock bepaalt de:-clockphases (P1,P2)
-States (S1-S6) , 1state= 2 clockperiodes
-machinecycli , 1 machinecyclus = 6 states
Na 6 states is een eenvoudige instructie klaar: bv ADD A,#data
(bv.1microseconde @12MHz)
Instructieset geeft aantal machinecycli voor elke instructie aan! TIMING!
machinecyclus
Instructie-timing bij een 8051 compatibele controller.
![Page 31: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/31.jpg)
Timing van de buscontrolesignalen.Setup- en holdtime van het externe geheugen (eventueel periferie) nakijken bij interfacing!
Single chip: ALE kan meestal uitgeschakeld worden i.v.m. EMI!
![Page 32: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/32.jpg)
SOFTWAREDe interne 8051 familie architectuur.
Programmeermodel
- ACCUmulator (A)
- Processor Status Word (PSW)
- B register
- Datapointer DPTR (16 bit)
- Program Counter (16-bit)
- Interne registers (geheugenlocaties)
- Special Function Registers (SFR’s)
![Page 33: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/33.jpg)
De interne registers
RS0,RS1
SFR’s hebben een vaste resetwaarde!
Let op bij poorten!
Register = geheugenlocatie die deel uitmaakt van de CPU
![Page 34: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/34.jpg)
De SpecialFunctionRegister’s.(SFR’s)
SFR’s zitten intern in de controller en kunnen worden aangesproken als een CPU register!
De hoeveelheid SFR’s is sterk afhankelijk van het type controller, maar de 8051 basis is bij elke controller steeds aanwezig.
SFR’s zijn de CPU registers en de hardware besturings- en configuratieregisters.
![Page 35: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/35.jpg)
Interne registerstructuur van de 8052. :extra 128 interne registers (RAM)
![Page 36: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/36.jpg)
De systeemstack en de CALL instructie.
instructie ninstructie n+1instructie n+2instructie n+3call subroutineinstructie n+5instructie n+6
XXYY
Externe controller-geheugen met
instructiesAdres vande
instructies16-bits
Interne controller-geheugen
Stack-pointer register(wijst naar intern
geheugen in decontroller)
07h08h09h
0Ah0Bh
SP+1
SP+1
YYXX
SP na reset
SP 8-bit
subroutine
return
1
2
3
4 5
opslaanLSB
opslaanMSB
Program counter 16-bit
PC = subroutine
6
7
8
9
PChigh =XXSP-1
PClow =YYSP-1
Jump to XXYY
Jump to subroutine
PChigh PClow
MOV SP,#end_of_var
PC (16) na reset :0000H
PC geeft adres volgende instructie aan:
• adres volgende instructie
• adres waarnaar gesprongen wordt
![Page 37: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/37.jpg)
Formaat: MNEMONIC [BESTEMMING],[BRON]
MNEMONIC: de omschrijving van wat de instructie doet.vb: MOV = VERPLAATS
ADD = TEL OP...
BESTEMMING: het register waarop de bewerking wordt uitgevoerd, of de bestemming van het te verplaatsen getal, soms optioneel.
vb: 030H = adres register 30HA = de accumulatorR0 = verkort adresseerbaar register, ....
BRON: het register of het getal dat aangeeft van waar de tweede operand moet komen, of wat de tweede operand is. Deze parameter is niet steeds aanwezig (optioneel).
MOV A ,AMOVC Rn ,RnMOVX DIRECT ,DIRECT
@Ri ,@Ri@DPTR ,@DPTRDPTR ,#GETAL 8/16 BITC ,@A+DPTRBIT ,@A+PC
,C,BIT
8051 basis instructies.
![Page 38: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/38.jpg)
Logische bewerkingen
CPL A
![Page 39: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/39.jpg)
Datatransfer in interne dataRAM
![Page 40: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/40.jpg)
Datatransfer in externe dataRAM
![Page 41: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/41.jpg)
Lezen van extern codegeheugen.
![Page 42: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/42.jpg)
Booliaanse (bit) instructies. (Carry-bit= bit accu)
![Page 43: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/43.jpg)
Onconditionele spronginstructies.
![Page 44: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/44.jpg)
Conditionele spronginstructies.
cjne
![Page 45: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/45.jpg)
De taal voor programma-ontwikkeling.
• Embedded systemen : assembler blijft nodig!– Opstartcode (C verwacht geïnitialiseerde omgeving!)
• Stack, Chip select logic, DRAM controller…• na settings in de IDE genereren de meeste compilers een ‘voorstel’.
– snelheid
• Als code complexer en groter wordt, dan zal een HLL handiger zijn.
• Meestal beperkingen wegens beperktheid v/d interne hardware
• Ftp:// telescript.denayer.wenk.be /pub/
![Page 46: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/46.jpg)
Interne periferie van een 8051 controller
Parallelle poorten.(Geen initialisatie nodig)
![Page 47: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/47.jpg)
• 4 bidirectionele basispoorten P0, P1, P2, P3 (SFR’s)• 3 delen: LATCH, OUTPUT DRIVER, INPUT BUFFER• P0 en P2 kunnen gebruikt worden als adres/databus • P3 en 2 bits van P1 hebben ook alternatieve functies
(alternatieve functies kunnen gelijktijdig als poortpin gebruikt worden!!!)
Parallelle poorten.
![Page 48: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/48.jpg)
I/O configuraties
Portbitlatch
Portpindriver
&D
CLK
Q
Q
ReadLatch
Int.Bus
Writeto
Latch
Readpin
Alternatieveinput
functie
Alternatieveoutputfunctie
• typische bit-latch en I/O buffer voor de 4 poorten
Q moet ‘1’ zijn bij gebruik van de alternatieve output functie.
Bij reset: alle pinnen op ‘1’ !!!!
Bv. naar een timercircuit...
inverterende
Externe Poortpin
![Page 49: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/49.jpg)
Poortpin als output.Een portdriver bestaat uit een aantal pFET’s en nFET’s die
zorgen voor een open drain structuur.Een nFET zal niet geleiden met ‘0’ op zijn gate, een pFET zal
dan juist wel geleiden.
DelayOR
1 OSC. PERIOD
Actief bijeen ‘0’ naar
‘1’ flankWeakpull-up
Actief alsV-portpin >
1..1,4V
![Page 50: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/50.jpg)
Poortpin als input (‘1’ niveau op pin na reset of na write met ‘1’)
Extern device dat poortpin van ‘1’ op ‘0’ stuurt, doet P3 sperren!Een ‘0’ naar ‘1’ transitie op een pin verloopt traag tot P3 terug gaat
geleiden!
Extern device
![Page 51: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/51.jpg)
Schakelgedrag van ‘0’ naar ‘1’ van een pin als input.Opgelet bij capacitieve belastingen bv. flat cable!
Pull-up weerstand extern bijplaatsen!
2 4 6 8 10 12 14 16 18 20
1
2
3
4
5
T (uS)
V poortpin
A B Met P3
Zonder P3
P3 komt ingeleiding
![Page 52: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/52.jpg)
De Read-Modify-Write instructies en hun eigenschappen.
Sommige instructies lezen de poortpin andere de poortlatch!RMW instructies lezen de poortlatch!!!!!!!!!
(poort is bestemming!)RMW-Instructie
Omschrijving
ANL Logische AND bv. ANL P1,AORL Logische OR bv. ORL P2,AXRL Logische EX-OR bv. XRL P3,AJBC Jump als bit 1 is en clear bit bv. JBC P1.1, labelCPL Complement bit bv. CPL P3.0INC Increment bv. INC P2DEC Decrement bv. DEC P3DJNZ Decrement and jump if not zero bv. DJNZ P2,labelMOV PX.Y,C Move carrybit in bit Y van poort XCLR PX.Y Clear bit Y van poort XSETB PX.Y Set bit Y van poort X!
![Page 53: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/53.jpg)
RMW instructies lezen de Port Latch!
Portbitlatch
&D
CLK
Q
Q
ReadLatch
Int.Bus
Writeto
Latch
Readpin
Alternatieveinput
functie
Alternatieveoutputfunctie
Vcc
InternePull-up
Vcc Vcc
Actief lagesturing
Actief hogesturing
nFET
Bv. Infineon C537
VOH (output high voltage)=2,4V@-80µA(source stroom)
VOL (output low voltage)= 0,45V@3,2mA(sinc stroom)
![Page 54: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/54.jpg)
Voordelen van de open drain poortdrivers
• poortpinnen (die als output werken) kunnen worden doorverbonden met elkaar zonder dat er beschadiging zal optreden van de driver.
• Dit kan niet bij push-pull uitgangsdrivers!• Nuttig bij interfacing van oa. keyboards of
bij parallelle communicatie tussen systemen!
![Page 55: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/55.jpg)
Schakelaars verbinden met een ingangspoort.
A B C
Welke configuratie werkt?
Digitale poorten als input
8051 8051 8051
R
8051
D
![Page 56: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/56.jpg)
Keyboard/switch basics.+5V
Naar de controlleringang
+5V
GND
Schakelaaropen
Schakelaardicht
Schakelaaropen
Contactdender
Schakelaar ingedrukt t
5 …30ms 5 …30ms
![Page 57: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/57.jpg)
Hardware ontdendering van een ingang
Software ontdendering van een ingang?
![Page 58: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/58.jpg)
Oliedruk schakelaars
Thermostaat schakelaar
Switches
![Page 59: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/59.jpg)
Keyboard =switchmatrix.(Optmaal gebruik van poortpinnen! Vanaf 6 schakelaars)
AT89S8252
"0"
1
1
1
Scanlijnen
1
1
1
1
Leeslijnen
Keyboard matrix
POORT X
Interne pull-up
Interne pull-up
Vertreksituatie: alle scanlijnen op ‘0’
![Page 60: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/60.jpg)
Optocouplers als input
Reflectieve en lichtsluissensoren
![Page 61: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/61.jpg)
Digitale poorten als outputUitgangskarakteristieken standaard 8051 poort
Opgelet: na reset staan alle poortpinnen op “1”! alle devices actief laag aansturen!
![Page 62: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/62.jpg)
Externe invertor nodig om actief laag te sturen!
Poort kan niet genoeg stroom IOH leveren (80uA@2,4V)
![Page 63: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/63.jpg)
Parallelle communicatie tussen twee controllers.
AT89S8252 AT89S8252
Poort x Poort x
P 3.2/ int0 P 3.2/ int0
Bidirectionelehandshakelijn
Bidirectionele datalijnen
Vertreksituatie: beide poorten als ingang en beide handshakelijnen als interruptingang
A B
![Page 64: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/64.jpg)
Timers / counters
• Tellen van ‘events’. (counter)• Meten van tijdsperiodes. (timer)• 8 of 16 bit rimpeltellers.• Één of meerdere clockinputs.• Rollover kan interrupt veroorzaken.• Speciale mogelijkheden: Capture, Compare
![Page 65: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/65.jpg)
Timer0 en Timer1 van de 8051
• twee identieke timer/counters· de tijd bijhouden en/of tijd meten tussen events· het tellen van de events zelf· genereren van tijdsintervallen· het genereren van baudrates voor de seriële poort.
• Verschillende werkingsmodes.• Controle door SFR’s: TMOD en TCON• Timer zelf bestaat uit: THx en TLx (x=0,1)
![Page 66: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/66.jpg)
Mode0
![Page 67: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/67.jpg)
Mode1
![Page 68: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/68.jpg)
Mode2
![Page 69: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/69.jpg)
De besturingsregisters: TMOD
GATE: Gating controle. (‘0’ : enabled, ‘1’ :INT pin moet 1 zijn)C/T: Counter of Timer selectiebit. (‘0’=timer, ‘1’= counter)MODEBITS M1,M0. (bepalen de 4 werkingsmodes)
Niet ‘bitadresseerbaar’
![Page 70: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/70.jpg)
De besturingsregisters: TCON
TR0 en TR1 zetten de timer/counters aan/uit
TF0 en TF1 zijn de ‘overflow’ statusbits
![Page 71: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/71.jpg)
Toepassingen met Timer 0 en 1.Tijdsmetingen van ‘events’ (eenmalige intervalmeting)
OSC Div 12
1
&
TF0TL0
(8 Bits)TH0
(8 Bits)T0 pin
Gate
INT0 pin
TR0Control
C/T =0
C/T =1
Interrupt
5V
Gnd
Externevent
Set&Cleareddoor hardware
Resetten voorintervalmeting
INT0 kan gelijktijdiggebruikt worden als een
interruptingang en als gate.
>
t
‘1’
t
Timerincrements elke µSEC.
1µSEC onzekerheid 1µSEC onzekerheid
![Page 72: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/72.jpg)
Toepassingen met Timer 0 en 1.Tijdsmetingen van ‘events’ (eenmalige intervalmeting)
FFFFh
0000h
Timeroverflow
IRQTimer
IRQgate
t
IRQTimer
IRQTimer
IRQTimer
Tellerregister16 bit
Gatesignaal
65556µSEC@12MHz
65556µSEC@12MHz
65556µSEC@12MHz
65556µSEC@12MHz
5555h
21845µSEC@12MHz
t
Gate tijd= 4x65536µSEC +21845 µSEC
C/T=0TR0=1
GATE=1RESET TH0,TL0
Startmeting
IRQ Timer : INC “COUNTER”
IRQ gate : lees TH0, TL0 en “COUNTER” en bereken de tijd
COUNTER TH0 TL0
Overflows tellen
Stop:Gate dicht
![Page 73: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/73.jpg)
Genereren van periodische timeroverflows of ‘timeticks’.
• 16 bit TIMER (mode1)
65536µSEC@12MHz
t0000h
FFFFh
16 bit timer (mode1)zonder reload
TimerIRQ TimerIRQ TimerIRQ
Timer overflow
![Page 74: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/74.jpg)
Genereren van periodische timeroverflows of ‘timeticks’.• 16 bit TIMER (mode1) met software reload.
t0000h
FFFFh
TimerIRQTimerIRQ TimerIRQ
Timer overflows
TimerIRQ TimerIRQ
XXYY“preload”
(FFFF-XXYY) . f/12
Timing jitter!
Interruptroutine bij timeroverflow:stop timer: TR0=0reload timer: TH0=XX
TL0=YYstart timer: TR0=1“toepassing” bv. Sturen van poortpinnenRETI
Interrupt latency time = constant !!!
timingjitter
= geschikt als “timetick”
Accumulatie van timingfouten!!
![Page 75: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/75.jpg)
Genereren van periodische timeroverflows of ‘timeticks’.8 bit TIMER met autoreload.
FFh
00h
THxreloadwaarde
t
timeroverflows
timerIRQ
timerIRQ
timerIRQ
timerIRQ
timerIRQStart timer
TLx en THxladen
(FFh-reload).12/f
DJNZ COUNTER,BACKMOV COUNTER,#SKIP_IRQ
BACK: RETI
Toepassing
timerIRQ Initialisatie: MOV COUNTER, #SKIP_IRQ
![Page 76: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/76.jpg)
Timer2 van de 8051 familie (8052)• 16 bits timer met speciale eigenschappen: externe reload'Missing or late pulse' detector. (netspanningsuitval)
Sync. van de‘reload’ met dedalende flank
Grotere tijd tussen ‘timeticks’ zonder tussenkomst van de CPU
Toepassing bv. ‘missing’ of ‘late’ pulse detector
Te bewaken pulstrein
![Page 77: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/77.jpg)
Missing pulse detector
Timeroverflow
TR2= ‘on’EXEN2= ‘on’
Geenoverflow
IRQ
okNiet ok
Vanaf hierdetectie
Pulsontbreekt
T2EXpin
ok
ReloadXXYY
0000h
FFFFh
TL2,TH2 laden
OverflowIRQ
t
t
![Page 78: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/78.jpg)
Absolute positiemeting a.d.h.v. lijnsensoren en hoekencoders.
![Page 79: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/79.jpg)
De 4 velden van de ‘scanning reticle’ zijn 1/4 van de onderverdelings-periode (360º/line count) in fase verschoven
Differentiëel meten
![Page 80: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/80.jpg)
Absolute positiemeting a.d.h.v. lijnsensoren of hoekencoders.
A
Bcw
Bccw
D Q
Clk
A
B Direction T2EX pin
Count T2 pin
![Page 81: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/81.jpg)
Absolute positiemeting a.d.h.v. lijnsensoren of hoekencoders.
0000h
underflow
overflow
Direction(ook softwarematig tecontroleren =pin P1.1)
P1.0
Telleringang
(signaal A)
Via interrupts ook softwarematig uit te breiden naar grotere bereiken (extra byte) met dezelfde resolutie!
![Page 82: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/82.jpg)
Absolute positiemeting a.d.h.v. lijnsensoren of hoekencoders.(digitale servosystemen)
Direction
Count
FFFFh
0000h
7FFFh
Preload
Up Down
t
Start beweging
‘0’ positie‘home’
t
t
Up
TR2=’on’
+ - +
+
-
Voor lijnsensor met 20pulsen/mm (50μm) geeft dit een bereik van 1638,4mm(1,6m!)
met een resolutie van 50μm.
Tellerwaarde geeft steeds de positie weer!
![Page 83: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/83.jpg)
Capture mode. • sampling van timerdata bij een “event”
(bv. op de dalende flank van een signaal)
Timer2 in CAPTURE mode
Interrupts tellenvoor software‘teller extentie’
Te meten signaal
Capture interrupt => lezen van de data uit de capture registers!
![Page 84: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/84.jpg)
Toepassing :
Periodemeting a.d.h.v. capture mode.
Capture1
Capture2
0000h
FFFFh
1713h
E01fh
t
t
T2EX
Tellerwaarde
time= (capture2 - capture1)x 12/f
TimeroverflowIRQ
CaptureIRQ
CaptureIRQ
overflow
Timer2 in CAPTURE mode
Interrupts tellenvoor software‘teller extentie’
![Page 85: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/85.jpg)
Compare unit.
S
R
QPort x.y
16 bit timer (autoreload)
16 bit compareregister16 bit
digitalecomparator
match
Timeroverflow
• Basisfrequentie aanpassen door de reloadwaarde van de timer.
• Pulsbreedte veranderen door compareregister aan te passen.
![Page 86: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/86.jpg)
DC inhoud van PWM signalen.
DC inhoud
![Page 87: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/87.jpg)
Spectrum van een PWM signaal
Filtereigenschappen
Spectrum van het PWM signaal
Externe low-pass
Bandbreedte waarmee men de duty-cycle van het signaal laat veranderen.
Fbw<<Fpwm
![Page 88: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/88.jpg)
t
Vout
• PWM DAC
Low pass
![Page 89: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/89.jpg)
• Motorsturing (H-brug)
![Page 90: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/90.jpg)
Opwekken van meerdere complexe timingsignalen.
(A.d.h.v. een timer met compare unit)
![Page 91: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/91.jpg)
Opwekken van meerdere complexe timingsignalen.
- Geen timing skew tussen signalen
- Geen timingjitter
- Tot 8 kanalen (C537)
![Page 92: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/92.jpg)
Watchdog timer
WDTENWDTRSTPS0,PS1,PS2
ResetCPU
Prog.prescaler
Watchdogtimer
Onafhankelijkeoscillator
Osc.
Power onPOF bit=’1'RST heeft
geen invloed
(Power Failure)
Bv. 89S8252 van Atmel
POF bit uit PCON register
-Betrouwbaarheid => -onmogelijk om manueel te resetten -niet snel genoeg
-intern of extern
Write ‘1’
![Page 93: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/93.jpg)
Watchdog timer
Main loopPOF='0"
normale hoofdprogramma(oneindige lus met bepaalde
maximum-timing)
watchdog reset
POF='1'?
Systeeminitialisatie
N
Jok Error handler(error counter??)
nok
Watchdog reset
Shut down
Interrupt handler
Power-on 'POF'='1'
Bv: programma-loop= 26mSEC watchdog=32 mSEC
- Kan eens hij is ingeschakeld, niet meer softwarematig uitgeschakeld worden.
- Voor sommige producten (fail save) eist TUV een externe WDT wegens mogelijke fouten bij init.
-NOOIT een watchdogtimer a.d.h.v. een andere timertijdbasis resetten op interruptbasis!!!!
Reset door power-on of door RST signaal van watchdog timer
Problemen bv:
-slecht geteste software.
-overvloed aan interrupts.
-deadlock bij multitasking
-EMI probleem
Watchdog= on
![Page 94: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/94.jpg)
Seriële poorten
• Asynchrone communicatie. (via een UART) Byte gesynchroniseerde communicatie door freq. verschil Tx en Rx
LSB MSB0V
+5V
EvenPAR
Startbit
0 0 0 0 00 1 Stop / rust1 1 1Stop /rust
t
CMOSniveaus
• data-uitwisseling tussen embedded systemen en PC (user interface)
• communicatie tussen embedded systemen
(CMOS niveau’s zijn onbruikbaar voor real world communicatie)
Parameters:
• aantal databits
• pariteit
• aantal stopbits
• bitsnelheid (Baudrate)
![Page 95: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/95.jpg)
Asynchrone comm.op 8051
SBUF
Ontvangstbuffer
Transmitter
Receiver
Baud rategenerator
SCON
TxD
RxD
Data van ennaar de CPU
- 8bit uart met variabele baud rate (start, 8 data, stop)
- 9 bit uart met vaste baud rate (start, 8 data, instelbare 9de bit, stop) BR=1/32 of 1/64 fosc.
- 9 bit uart met variabele baud rate (start, 8 data, instelbare 9de bit, stop)BR= instelbaar
Bv. MOV SBUF,A
SBUF is op hetzelfde adres tweemaal aanwezig:
-Eenmaal write only (TX)
-Eenmaal read only (RX)
RI en TI bit geven status aan.
![Page 96: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/96.jpg)
SCON SFR
![Page 97: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/97.jpg)
Baud rates
Bitrate=
SMOD
32X T1
T1 = F oscillator12x[256-(TH1)]
TH1= reloadwaarde TIMER1
2SMOD= controlebit uit PCON SFR
-8052 compatibele controllers (extra timer2)
-C537 twee seriële poorten met dedicated BR generator
-Timer3 bij de ADuC832
Met SMOD=0 geeft 0fdh als reloadwaarde bij 11.059MHZ een bitrate van 9600BPS
![Page 98: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/98.jpg)
C537 van Infineon.Voordeel van de dedicated Baudrate generator: met 12MHz Xtal toch standaard Baudrates!
![Page 99: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/99.jpg)
SCON SFR
![Page 100: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/100.jpg)
Multiprocessor communicatie• Master-Slave of multidrop mode
TxD RxD RxD RxD RxDTxD TxD TxD
Master Slave
Adres=1 Adres=2 Adres=3
Slave Slave
Bv. RS485
• 9 bits mode, 9de bit= data (0) of adres (1) ID
• op slaves multiprocessor-mode aanzetten (SM2=1)
• interrupt op adresbyte received
• slave reset SM2 bit (interrupt on databyte received)
(of open collector)
![Page 101: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/101.jpg)
Configuraties bij seriële verbindingen• Open collector interface (on board comm.), met LIN driver: LIN-
bus!
+
-
+6V
+
-
+6V
+
-
+6V
Open collector
Open collector
Open collector
Comparator
Comparator
Comparator
Pull-up
Gemeenschappelijke lijn
TxD
RxD
TxD
TxD
RxD
RxD
Master
+12V
Voordeel:
-eenvoudige hardware, one wire
Nadeel:
-half duplex
-snelheid is f(Cpar,Rpull-up)
-protocol nodig(master/slave)
Alternatief: 4000 reeks logica
![Page 102: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/102.jpg)
CAN
CAN
Power Train
Light
Sub-Bus
ITS
Window Lift
InteriorLight
Lock
Mirror
Lock
Mirror
Lock
Lock
Seat
Htng
Seat
Htng
Instruments
CentralBody Ctrl
Climate
Universal Motor
Universal Panel
Light
Roof
1 backbone, 13 nodes8 subnets, 1-8 local nodes52 nodes total
St-Wheel Panel
x6Htng
Htng
Seat
Wiper
Trunk
WHtg
Universal Light
Toepassing van de LIN-bus.
![Page 103: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/103.jpg)
Roof:(high amount of wiring)
Rain Sensor, Light Sensor, Light Control, Sun Roof …(Rain Sensor needs to be interrogated every 10-20ms)
Steering Wheel:(very many controls are going to be positioned on the steering wheel)
Cruise Control, Wiper,Turning Light, …Optional: Climate Control, Radio, Telephone, etc.
Climate: many Small MotorsControl Panel
Seat:many Seat Position Motors,Occupancy Sensor,Control Panel
• Door/window/seat: Mirror,Central ECU, Mirror, Switch, Window Lift,Seat Control Switch,Door Lock, etc.
LIN-toepassingen
![Page 104: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/104.jpg)
LIN Message Frame
synch break 13 bit
synch field identifier
message header
0 to 8 data fields checksum
message response
byte fieldSCI / UART format
start stop
0 1 2 3 4 5 6 7
LSB
![Page 105: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/105.jpg)
LIN Message Frame
![Page 106: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/106.jpg)
RS232 (EIA232) punt-punt verbinding (unbalanced).
• Elektrische eigenschappen
Signaal generator Signaal onvanger
Verbindings-kabel
<50 Ohm 3K...7K Ohm
Ro RL
Co CL
<2500pF
Vo
<±25VEL
<±2V
Pin 7 Ground Pin 7 Ground
Informatie overdracht
connectorpinnen
• signaalspanning , signaaltiming , signaalfunctie, protocol voor informatie-uitwisseling , mechanische connecties (subD connectoren)
• verschillende fabrikanten gebruiken vereenvoudigde versies
• er is geen vereenvoudigde standaard=> iedereen gebruikt de opgegeven spanningen en connectoren met eigen verbindingskabels en protocols!
Ishort max. 500mA
![Page 107: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/107.jpg)
+/- 12V
Foutspanning door verschillendmassapotentiaal
RS232levelCMOS level
RS232level CMOS level
Single-ended(unbalanced)
communication
verbindingskabel
Unbalanced (signaal t.o.v. massa)Nadeel: - verschil in massapotentiaal is niet ondenkbaar bij grotere afstanden
- moelijk af te schermen signaaldraden= overspraak (bij hoge frequenties) Gedeeltelijke oplossing: - CAT5 kabel (low cap) gebruiken
- slew rate beperken van signalen (niet in standaard)
Standaard : 15m en 20Kbps (kabel uit 1960)
met laag capacitieve kabel :
Praktisch: 25m en 115Kbps tot 200Kbps
![Page 108: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/108.jpg)
Signaalspanningen
Spanning
Space
mark
Space
Logisch ‘0’
Logisch ‘1’
+25V
+3V
-25V
-3V
Transitiegebied
‘0’ +8V tot +12V
‘1’ -8V tot -12V
Slew rate wordt beperkt tot 30V/μsec
![Page 109: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/109.jpg)
![Page 110: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/110.jpg)
Praktisch
Embeddedsystem
PC
2
3
7
3
2
7
Transmitted data
Received data
Signal ground
MAX232 Vereenvoudigde verbinding, zonder hardware handshaking, maar met software handshaking XON/XOFF.
![Page 111: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/111.jpg)
RS422/RS485 balanced verbinding (bv. bij CAN)
Vcm
Common mode spanning (Vcm) wordt onderdrukt door de differentiële ingang van de receiver, dit binnen bepaalde grenzen!
Input A
Input B
Data is de verschilspanning tussen A-line en B-line:
‘0’ VA-VB=< -0,2V en ‘1’ VA-VB>= +0,2V
• ruis is op beide geleiders even groot en wordt dus als CM spanning onderdrukt
• Twisted pair kabel wordt meestal gebruikt bij dit soort interface
• hoge snelheden zijn mogelijk (10Mbps) bij grote kabellengte (1km) +afsluitimpedantie!
Differentiële uitgang
Twisted pair cable
![Page 112: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/112.jpg)
RS422<=>RS485
1 afsluitweerstand 2 afsluitweerstanden (beide uiteinden)
![Page 113: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/113.jpg)
RS485 driver (SN75176)Er is nog altijd een massaverbinding nodig, ook bij balanced verbindingen!
VCC1 VCC2
GND1 GND2
A
A
OUT
IN
Massaverbinding blijft nodig
Isignaal
![Page 114: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/114.jpg)
Grounding bij balanced verbindingen
Er moet een referentiegeleider worden doorverbonden, doch best via enkele weerstanden.
Stroombeperking bij kortsluiting van een signaal met het chassis
![Page 115: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/115.jpg)
Bus termination & fail save.
Termination aan beide zijden van de verbinding:
• Bij lage snelheden minder van belang (transiënt is uitgestorven wanneer een bit wordt gesampled)
• Dit kan bij punt-punt verbindingen
• Moeilijk bij sterverbindingen (stubs kort houden!)
Fail save nodig bij:
• draadbreuk
• bus ‘turn around’
![Page 116: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/116.jpg)
Galvanische isolatieWaarom?
Bij meer dan 32 nodes: repeaters of galvanische scheiding.• Groter netwerk = > meer ruis
op datalijnen. Men kan het netwerk opsplitsen in kleinere delen door ze galvanisch te scheiden.
• Netspanning op netwerkkabel!
• Grotere common mode spanningen mogelijk zonder beschadiging bv. bij indirecte blikseminslag.
![Page 117: Ingebedde systemen (embedded systems) Wat is een embedded systeem? Voordelen? Meestal voor één toepassing. Eenvoudig: meestal microcontroller! Waaraan](https://reader036.vdocuments.net/reader036/viewer/2022081505/5551a0ef4979591f3c8b99e2/html5/thumbnails/117.jpg)
EINDE