1. Trang chủ
  2. » Giáo án - Bài giảng

VDK04 ADCs PWM (ThangTV)

13 94 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 648,37 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài 04ADC & PWM ADC: Analog to Digital Converter PWM: Pulse Width Modulation 1... ❖ Phân biệt độ phân giải và tần số lấy mẫuI... - Tần số lấy mẫu càng cao thì tín hiệu analog sau khi đượ

Trang 1

Bài 04

ADC & PWM (ADC: Analog to Digital Converter

PWM: Pulse Width Modulation)

1

Trang 2

❖ Phân biệt độ phân giải và tần số lấy mẫu

I ADC:

N = 𝑉𝑖∗(2

𝑛 −1)

N: giá trị số của ngõ ra ADC

n: số bit (độ phân giải)

2

Trang 3

- Tần số lấy mẫu càng cao thì tín hiệu analog sau khi được hồi giải mã càng trung thực

3

Trang 4

- Cấu trúc ADC của PIC16F877A

4

Trang 5

- Các lệnh CCS liên quan ADC:

Những giá trị của value:

ALL_ANALOG // A0 A1 A2 A3 A5 E0 E1 E2

AN0_AN1_AN2_AN4_AN5_AN6_AN7_VSS_VREF

AN0_AN1_AN2_AN3_AN4

AN0_AN1_AN2_AN4_VSS_VREF

AN0_AN1_AN3

AN0_AN1_VSS_VREF // VREF = AN3

AN0_VREF_VREF // A0 VRefh=A3 VRefl=A2

Trang 6

Ví dụ 01:

Cho sơ đồ mạch: LM35 là cảm biến nhiệt độ có ngõ ra là 10 mV/ độ C

U3 LM35/SO

VS+ VOUT

f

R35 10K

e

VDD

d

C3

1uF

p g

R12 4K7 Q3

A1013

b e d a

C12 103

D10

R9 4K7

VDD

b

VCC

1

2 3 4 5 6 7

8 9 10

11 12

13 14

15 16 17 18

19 20 21 22 23

24 25 26

27 28 29 30

33 34 35 36 37 38 39 40 MCLR/Vpp

RA0/AN0 RA1/AN1 RA2/AN2/Vref -RA3/AN3/Vref + RA4/TOCKI RA5/AN4/SS

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7

OSC1/CLKIN OSC2/CLKO

RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCL

RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RC4/SDA

RC5/SDO RC6/TX/CK RC7/RX/DT

RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7

RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD

LED4 LED7S

7 6 4 2 1 9 10 5

3 8

a b c d e f g

p C1 C2

R10 4K7

g

R1

R

f c

C6 33P

RST

VDD

VREF

Q2

A1013

TEMP

R8

100X8

R33 270

D10

LED

D10

R2

R

D9

f g

LED3 LED7S

7 6 4 2 1 9 10 5

3 8

a b c d e f g

p C1 C2

VDD

g

R4

R

b

R1

10K

C2 4.7uF - 10uF

d

R3

R

e

D9

LED

Q1

A1013

p a

TEMP

C11 33P

a

Q4

A1013

SET

R7

R

LED1 LED7S

7 6 4 2 1 9 10 5

3 8

a b c d e f g

p C1 C2

b

R34 270

SET

d p

Y 1

c

R5

R

f p

D9

c

R11 4K7

a

R6

R

LED2 LED7S

7 6 4 2 1 9 10 5

3 8

a b c d e f g

p C1 C2

e c

VDD

6

Trang 7

YÊU CẦU (sử dụng ADC 8 bit):

dụng điện áp chuẩn là VDD (5V)

hiển thị giá trị trên 4 led theo dạng “St.XX”, sử dụng điện áp chuẩn là VDD Nếu:

7

Trang 8

❖ Tần số không thay đổi, chu kì duty thay đổi theo mục đích điều khiển

II PWM:

Duty cycle

T

8

Trang 9

❖ Sử dụng timer 2 để phát xung:

❖ Setup_timer_2(mode, period, postscale)

f = 𝐹𝑂𝑆𝐶

4∗𝑚𝑜𝑑𝑒∗ 𝑝𝑒𝑟𝑖𝑜𝑑+1

Nếu Fosc = 4MHz, f = 4 𝑀𝐻𝑧

4∗1∗ 100+1 = 10 𝐾𝐻𝑧

9

Trang 10

❖ PIC16F877A có 2 bộ PWM, ngõ ra của PWM tại chân RC2 (CCP1) và RC1 (CCP2)

10

Trang 11

❖ Các lệnh liên quan PWM:

Ví dụ:

setup_ccp1(CCP_PWM);

setup_timer_2(T2_DIV_BY_4, 99,1);// period = 100

set_pwm1_duty(50); // duty_cycle = 50%

11

Trang 12

Ví dụ 02: Cho sơ đồ mạch:

D3 FR504

C10 100uF/50V C6 33P

MT22

24VDC

D5 FR504

D8 FR504

24VDC

C11

VDD

R8

100X8

PWM1

R6

R

D4 FR504

SW2

A

-+

MG2

MT21

VDD

PWM2

SW1

RST

VDD

R3

C1 100uF/50V

R4

R

MT21

R5

R

R2

R

VDD

24VDC

MT22

VDD

C2 4.7uF - 10uF

p

D7 FR504

D2 FR504

e

PWM1

D6 FR504

c

R22 10K

R1 10K

A

-+

MG1

d

C3

1uF

g

Y 1 4M

R21 10K

R1

R

24VDC

1

2 3 4 5 6 7

8 9 10

11 12

13 14

15 16 17 18

19 20 21 22 23

24 25 26

27 28 29 30

33 34 35 36 37 38 39 40 MCLR/Vpp

RA0/AN0 RA1/AN1 RA2/AN2/Vref -RA3/AN3/Vref + RA4/TOCKI RA5/AN4/SS

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7

OSC1/CLKIN OSC2/CLKO

RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCL

RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RC4/SDA

RC5/SDO RC6/TX/CK RC7/RX/DT

RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7

RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD

U1

L298

5 7 10 12

2 3 13 14

6 11

1 15

9 4

1A1 1A2 2A1 2A2

1Y 1 1Y 2 2Y 1 2Y 2

1EN 2EN

1E 2E

VCC1 VCC2

VDD

24VDC

R7

R

a b

PWM2

LED1 LED7S

7 6 4 2 1 9 10 5

3 8

a b c d e f g

p C1 C2

D1 FR504

12

Trang 13

YÊU CẦU:

setup_timer_2(T2_DIV_BY_1, 99,1);

2 Cấu hình timer 2 giống câu 1 Viết chương trình cho phép đặt 10 tốc độ quay cho MG1 (dùng SW1: tăng 1 đơn vị, SW2: giảm 1 đơn vị), hiển thị tốc độ trên led 7 đoạn (0,1,2,3,4,5,6,7,8,9), trong đó tốc độ 0 là dừng động cơ

3 cấu hình timer 2 giống câu 1 Viết chương trình thực hiện:

13

Ngày đăng: 24/10/2020, 08:03

TỪ KHÓA LIÊN QUAN