7.3. analog input - project management systemtqvinh/lectures/esd/esd-ch7_2016-p2.pdf · 8 10-bit...

23
8/9/2016 1 ĐẠI HC QUC GIA TP.HCHÍ MINH TRƯỜNG ĐẠI HC BÁCH KHOA KHOA ĐIN-ĐIN TBMÔN KTHUT ĐIN TBMôn KThut ĐinT- ĐHBK 1 Embedded System Design Chapter 7: Peripherals for embedded systems 7.1 Digital parallel input / output 7.2 LCD interfacing 7.3 Analog input /output 7.4 Serial communication Bmôn KThut ĐinT- ĐHBK 7.3. Analog Input Allows an external voltage to be converted to digital form, stored and processed This type of input occurs in data loggers, control systems, digital audio and signal processors… The PIC microcontrollers is designed specifically for highspeed analog signal processing 2 Chapter 7 - p2

Upload: phunganh

Post on 07-Oct-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

1

ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN KỸ THUẬT ĐIỆN TỬ

Bộ Môn Kỹ Thuật Điện Tử - ĐHBK

11

Embedded System Design

Chapter 7: Peripherals for embedded systems

7.1 Digital parallel input / output7.2 LCD interfacing7.3 Analog input /output7.4 Serial communication

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

7.3. Analog Input

• Allows an external voltage to be converted to digital form, stored and processed

• This type of input occurs in data loggers, control systems, digital audio and signal processors…

• The PIC microcontrollers is designed specifically for high‐speed analog signal processing

2Chapter 7 - p2

Page 2: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Analog input with PIC 16 Series

Device Pins Features

16F873A16F876A

28 3 parallel ports,3 counter/timers,2 capture/compare/PWM,2 serial,5 10-bit ADC,2 comparators

16F874A16F877A

40 5 parallel ports,3 counter/timers,2 capture/compare/PWM,2 serial,8 10-bit ADC,2 comparators

3Chapter 7 - p2

4

The PIC16F87XA ADC module

Functional blocks for the A/D converter in medium-end PIC microcontrollers. A/D, successive approximation analog-to-digital converter; SHA, sample-and-hold amplifier; AMUX, analog multiplexer.Chapter 7 - p2

Page 3: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

3

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Analog Setup

• The PIC 16F877 has eight analog inputs: RA0, RA1, RA2, RA3, RA5, RE0, RE1, RE2 being renamed AN0 to AN7.

5

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA4/T0CKI6

RA5/AN4/SS7

RE0/AN5/RD8

RE1/AN6/WR9

RE2/AN7/CS10

OSC1/CLKIN13

OSC2/CLKOUT14

RC1/T1OSI/CCP216

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP0 19

RD1/PSP1 20

RB7/PGD 40RB6/PGC 39

RB5 38RB4 37

RB3/PGM 36RB2 35RB1 34

RB0/INT 33

RD7/PSP7 30RD6/PSP6 29RD5/PSP5 28RD4/PSP4 27RD3/PSP3 22RD2/PSP2 21

RC7/RX/DT26

RC6/TX/CK25

RC5/SDO24

RC4/SDI/SDA23

RA3/AN3/VREF+5

RC0/T1OSO/T1CKI15

MCLR/Vpp/THV1

U1

PIC16F877Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

CCS C Analog Input Functions

6Chapter 7 - p2

Page 4: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

4

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 7

CCS C Analog Input Functions

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 8

CCS C Analog Input Functions

Chapter 7 - p2

Page 5: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

5

9Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Example

10

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA4/T0CKI6

RA5/AN4/SS7

RE0/AN5/RD8

RE1/AN6/WR9

RE2/AN7/CS10

OSC1/CLKIN13

OSC2/CLKOUT14

RC1/T1OSI/CCP216

RC2/CCP117

RC3/SCK/SCL 18

RD0/PSP019

RD1/PSP120

RB7/PGD 40RB6/PGC

39RB5

38RB4

37RB3/PGM

36RB2

35RB1

34RB0/INT

33

RD7/PSP730

RD6/PSP629

RD5/PSP528

RD4/PSP427

RD3/PSP322

RD2/PSP221

RC7/RX/DT26

RC6/TX/CK25

RC5/SDO24

RC4/SDI/SDA23

RA3/AN3/VREF+5

RC0/T1OSO/T1CKI15

MCLR/Vpp/THV1

U1

PIC16F877

VSS

RXD

VDD

LCD1

MILFORD-2X16-BKP

RV1

1k

Chapter 7 - p2

Page 6: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

6

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Example

11Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Voltage measurement

12

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA4/T0CKI6

RA5/AN4/SS7

RE0/AN5/RD8

RE1/AN6/WR9

RE2/AN7/CS10

OSC1/CLKIN13

OSC2/CLKOUT14

RC1/T1OSI/CCP216

RC2/CCP1 17

RC3/SCK/SCL 18

RD0/PSP0 19

RD1/PSP120

RB7/PGD 40RB6/PGC

39RB5 38RB4

37RB3/PGM 36

RB235

RB1 34RB0/INT

33

RD7/PSP730

RD6/PSP6 29RD5/PSP5

28RD4/PSP4 27RD3/PSP3

22RD2/PSP2 21

RC7/RX/DT 26RC6/TX/CK 25

RC5/SDO 24RC4/SDI/SDA 23

RA3/AN3/VREF+5

RC0/T1OSO/T1CKI 15

MCLR/Vpp/THV1

U1

PIC16F877

VSS

RXD

VDD

LCD1

MILFORD-2X16-BKP

D1

BZX79C2V7

R1680R

RV2

1k

R24k7

RV1

1k

RV3

1k

RV4

1k

RV5

1k

RV6

1k

RV7

1k

RV8

1k

R3

120R

U1(RA3/AN3/VREF+)V=2.55838

RV5(1)V=2.71739

Chapter 7 - p2

Page 7: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

7

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Voltage measurement

13Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 14

7.3. Analog Output

a) general DAC hardware b) output voltage

Basic digital to analogue converter

Chapter 7 - p2

Page 8: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

8

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 15

DAC

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

DAC Circuit• Typical application

16

Vo 10V

A1

2 A2

4 A8

256

Chapter 7 - p2

Page 9: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

9

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 17

Ex: DAC0808 & Serial DAC

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 18

Waveform Generator

Chapter 7 - p2

Page 10: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

10

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 19

Waveform Generator Source Code (1/3)

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 20

Waveform Generator Source Code (2/3)

Chapter 7 - p2

Page 11: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

11

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 21

Waveform Generator Source Code (3/3)

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Class Assignment

• Design a system to read temperature data from the sensor LM35, and show the result on LCD

22

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM016L

Chapter 7 - p2

Page 12: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

12

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 23

Serial communication

Parallel vs. Serial IO

Serial transmission of binary data consists of sending the bits of a word one by one in a consecutive form and using the same pins.

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK 24

simplex vs half‐duplex vs full‐duplex

Chapter 7 - p2

Page 13: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

13

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Serial Communication

1.PIC16 USART Serial Link

2.PIC16 SPI Serial Bus

3.I2C Serial Bus

25Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

USART

• The universal synchronous/asynchronous receive transmit (USART) device is typically used in asynchronous mode to implement off‐board, one‐to‐one connections. 

• The term asynchronous  means no separate clock signal is needed to time the data reception, so only a data send, data receive, and ground wires are needed. 

• It is quick and simple to implement if a limited data bandwidth is acceptable. 

26

USART Operation

Chapter 7 - p2

Page 14: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

14

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

USART• RS232 driver

– MAX232

27

USART RS232 Signal

Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

USART with PIC microcontroller• The PIC has a dedicated hardware RS232 port, but CCS C allows any pin to be set up as an RS232 port, providing functions to generate the signals in software.

Chapter 7 - p2 28

(a) Connection between two PICs in asynchronous mode

(b) Synchronous mode connection. CK is the clock pin, output in the master device and input in the slave device

Page 15: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

15

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

CCS RS232 Serial Port Functions

29Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

RS232 Periperal Simulation

30Chapter 7 - p2

Page 16: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

16

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

The program

31Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Outline

1.PIC16 UART Serial Link

2.PIC16 SPI Serial Bus

3.I2C Serial Bus

32Chapter 7 - p2

Page 17: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

17

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

SPI Bus• The serial peripheral interface (SPI) bus provides high‐speed 

synchronous data exchange over relatively short distances (typically within a set of connected boards), using a master/slave system with hardware slave selection

• One processor must act as a master, generating the clock. Others act as slaves, using the master clock for timing the data send and receive. 

• The slaves can be other microcontrollers or peripherals with an SPI interface.

• The SPI signals are: – Serial Clock (SCK)

– Serial Data In (SDI)

– Serial Data Out (SDO)

– Slave Select (!SS)

33Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

SPI Bus

34

SPI Connection

SPI Signals

Chapter 7 - p2

Page 18: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

18

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

SPI Operation

• To transfer data, the master selects a slave device to talk to, by taking its SS line low. 

• Eight data bits are then clocked in or out of the slave SPI shift register to or from the master. No start and stop bits are necessary, and it is much faster than RS232. 

• The clock signal runs at the same speed as the master instruction clock, that is, 5MHz when the chip is running at the maximum 20MHz (16 series MCUs).

35Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

SPI Driver Functions

36Chapter 7 - p2

Page 19: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

19

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

• SPI Test System Schematic

37Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Master and slaves source code

38Chapter 7 - p2

Page 20: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

20

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

Outline

1.PIC16 UART Serial Link

2.PIC16 SPI Serial Bus

3.I2C Serial Bus

39Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Bus

• The interintegrated circuit (I2C) bus is designed for short‐range communication between chips in the same system using a software addressing system. 

• It requires only two signal wires and operates like a simplified local area network.

40

I2C connection

I2C signals

Chapter 7 - p2

Page 21: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

21

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Bus

• The I2C slave chips are attached to a two‐wire bus, which is pulled up to logic 1 when idle. Passive slave devices have their register or location addresses determined by a combination of external input address code pins and fixed internal decoding.

• As for SPI, the clock is derived from the instruction clock, up to 5MHz at the maximum clock rate of 20MHz.

41Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Bus

• To send a data byte, the master first sends a control code to set up the transfer, then the 8‐bit or 10‐bit address code, and finally the data. Each byte has a start and acknowledge bit, and each byte must be acknowledged before the next is sent, to improve reliability.

• The sequence to read a single byte requires a total of 5 bytes to complete the process, 3 to set the address, and 2 to return the data

42Chapter 7 - p2

Page 22: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

22

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Functions

43Chapter 7 - p2

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Test System

44

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA4/T0CKI6

RA5/AN4/SS7

RE0/AN5/RD8

RE1/AN6/WR9

RE2/AN7/CS10

OSC1/CLKIN13

OSC2/CLKOUT14

RC1/T1OSI/CCP216

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RB7/PGD40

RB6/PGC39

RB538

RB437

RB3/PGM36

RB235

RB134

RB0/INT33

RD7/PSP730

RD6/PSP629

RD5/PSP528

RD4/PSP427

RD3/PSP322

RD2/PSP221

RC7/RX/DT26

RC6/TX/CK25

RC5/SDO24

RC4/SDI/SDA23

RA3/AN3/VREF+5

RC0/T1OSO/T1CKI15

MCLR/Vpp/THV1

U1PIC16F877A

R14k7

R24k7

+5V

I2CSDA

SCL

TRIG

SCK6

SDA5

WP7

A01

A12

A23

U2

24FC256

OFFON12345678

9

DSW1

DIPSWC_8

Chapter 7 - p2

Page 23: 7.3. Analog Input - Project Management Systemtqvinh/Lectures/ESD/ESD-Ch7_2016-p2.pdf · 8 10-bit ADC, 2 comparators Chapter 7 - p2 3 4 ... PIC16F877 Chapter 7 - p2 Bộmôn KỹThuật

8/9/2016

23

Bộ môn Kỹ Thuật Điện Tử - ĐHBK

I2C Test System

45Chapter 7 - p2