Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE 319K Introduction to Embedded Systems

Similar presentations


Presentation on theme: "EE 319K Introduction to Embedded Systems"— Presentation transcript:

1 EE 319K Introduction to Embedded Systems
Lecture 11: Data Acquisition, Numerical Fixed-Point Calculations, Lab 8 Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

2 Agenda Recap Agenda Sampling, Nyquist Analog to Digital Conversion
Data acquisition Numerical fixed-point calculations Lab 8 Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

3 Data Acquisition System (Lab 8)
Hardware Transducer Electronics ADC Software ADC device driver Timer routines Output compare interrupts LCD driver Measurement system How fast to update Fixed-point number system Algorithm to convert ADC into position Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

4 Analog Input Device Transducer – A device actuated by power from one system that supplies power in the same or other form to another system. Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

5 Transducer Circuit Position to voltage
Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

6 Data Acquisition System
Data flow graph ST7735 P o s i t n S e r V l a g + 3.3V A D C h d w v m p 4 9 5 y T c k I R L F x - 2 . M b Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

7 Data Acquisition System
Call graph ST7735 Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

8 Thread Synchronization in Lab 8
Background thread Foreground thread SysTick ISR Sample ADC Store in ADCmail Set ADCstatus Main loop Wait for ADCstatus Read ADCmail Clear ADCstatus Convert to distance Display on LCD Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

9 Sampling Jitter Definition of time-jitter, δt:
Let nΔt be the time a task is scheduled to be run and tn the time the task is actually run Then δtn= tn – nΔt Real time systems with periodic tasks, must have an upper bound, k, on the time-jitter -k ≤ δtn ≤ +k for all n Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

10 Measurement Resolution: Limiting factors Accuracy: Limiting factors
Transducer noise Electrical noise ADC precision Software errors Accuracy: Limiting factors Resolution Calibration Transducer stability Average accuracy (with units of x) = Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

11 Fixed-Point Revisited
Why: express non-integer values no floating point hardware support (want it to run fast) When: range of values is known range of values is small How: 1) variable integer, called I. may be signed or unsigned may be 8, 16 or 32 bits (precision) 2) fixed constant, called  (resolution) value is fixed, and can not be changed not stored in memory specify this fixed content using comments value  integer •  Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

12 Fixed-Point Numbers The value of the fixed-point number:
Fixed-point number  I• Smallest value = Imin • D, where Imin is the smallest integer Largest value = Imax • D, where Imax is the largest integer Decimal fixed-point, =10m Decimal fixed-point number = I • 10m Nice for human input/output Binary fixed-point, =2m Binary fixed-point number = I • 2m Easier for computers to perform calculations Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

13 Fixed-Point Math Example
Consider the following calculation. C = 2**R The variables C, and R are integers 2p ≈ 6.283 C = (6283*R)/1000 Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

14 Fixed-Point Math Example
Calculate the volume of a cylinder V = *R2 * L The variables are binary fixed-point R = I*2-4 cm L = J*2-4 cm V = K*2-8 cm3 2p ≈ 201*2-5 K = (201*I*I*J)>>9 Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

15 Make a Voltmeter with ADC
Vin (V) Analog in N Digital out I (1 mV) Variable part LCD 0.000 0.75 1024 750 0.750 1.5 2048 1500 1.500 2.25 3072 2250 2.250 3 4096 3000 3.000 =0.001 V Vin = 3•N/4096 how ADC works Vin = I • definition of fixed point I = (3000*N)/ substitution I = (m•N+b)/ calibrate to get m and b Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

16 Lab 8 Calibration Bard, Tiwari, Telang, Janapa Reddi, Gerstlauer, Valvano, Yerraballi


Download ppt "EE 319K Introduction to Embedded Systems"

Similar presentations


Ads by Google