1. Trang chủ
  2. » Cao đẳng - Đại học

TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520

50 266 2

Đ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 50
Dung lượng 5,27 MB

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

Nội dung

TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520 TÀI LIỆU MÔN KĨ THUẬT VI XỬ LÍ PIC18F4520

Trang 1

BÀI 7 BIẾN ĐỔI TƯƠNG TỰ - SỐ (ADC) Mục tiêu của bài học:

(1) Trình bày được một số khái niệm, đặc điểm và hoạt động của ADC; (2) Trình bày được đặc điểm, hoạt động và tính chọn giá trị cho các thanh ghi của bộ ADC trên PIC18F4520;

(3) Thiết lập và điều khiển chuyển đổi tương tự - số sử dụng thư viện

ADC.h;

(4) Lập trình ứng dụng chuyển đổi tương tự - số và hiển thị kết quả trên led đơn; Lập trình đo điện áp và điều khiển thiết bị

7.1 Giới thiệu bộ chuyển đổi tương tự - số (ADC)

- Bộ chuyển đổi tương tự sang số – ADC (Analog to Digital Converter), lấy mức điện thế vào tương tự, sau một khoảng thời gian sẽ sinh ra mã đầu ra dạng số

- Đầu vào tưng tự: VA

- Lệnh START: Ra lệnh bắt đầu biến đổi

- ECO: Tín hiệu báo chuyển đổi xong

- VA > VAX: dừng chuyển đổi

- Xung Clock: xung nhịp chuyển đổi ADC

- Độ phân giải: được biểu thị bằng số bit của tín hiệu số đầu ra Số lượng

bit càng nhiều sai số lượng tử càng nhỏ, độ chính xác càng cao Thông thường số bit đầu ra là 4, 8, 16, 32 bit …

- Điện áp tham chiếu: Là giải điện áp sử dụng để so sánh với tín hiệu đầu

vào, bao gồm điện áp tham chiếu trên(+) VREF+; và điện áp tháp chiếu dưới(-) VREF-

- Tốc độ chuyển đổi: Tốc độ chuyển đổi được xác định bởi thời gian cần

thiết hoàn thành một lần chuyển đổi A/D

- Công thức chuyển đổi tương tự - số

𝑽𝑨 = 𝑫𝒐𝒖𝒕 ∗(𝑽𝒓𝒆𝒇+ − 𝑽𝒓𝒆𝒇−)

𝟐 𝒏 −𝟏 + 𝑽𝒓𝒆𝒇−

VA Điện áp vào tương tự

Dout Đầu ra số (10 bit)

𝑉𝑟𝑒𝑓+ Điện áp thap chiếu trên (+)

Trang 2

𝑉𝑟𝑒𝑓− Điện áp tham chiếu dưới (-)

7.2 Bộ ADC trên vi điều khiển PIC18F4520

- Giới thiệu:

 Một bộ biến đổi ADC 10 bit;

 13 kênh đầu vào AN0-AN12, chuyển kênh bằng phần mềm;

 Điện áp tham chiếu có thể lựa chọn từ nguồn cấp(VSS, VDD) hoạc bên ngoài (AN2, AN3) bằng phần mềm;

 Nguồn xung được lấy từ FOSC.

- Lựa chọn hệ số chia tần cho ADC

- Lựa chọn cách ghi giá trị số trên thanh ghi

+ Ghi dồn bên phải: 10 bit ADC lưu vào D9 đến D0 của 2 thanh ghi chứa + Ghi dồn bên trái: 10 bit ADC lưu vào D15 đến D6 của 2 thanh ghi chứa

7.3 Lựa cọn giá trị cho ADCON1

Ví dụ: Thiết lập giá trị của than ghi ADCON1 để AN3 là đầu vào tương tự?

Trang 3

Để lựa chọn cho AN3 là đầu vào tương tự thì PCFG3:PCFG0 có thể thiết lập các giá trị từ 0000 đến 1011 Nếu cần sử dụng AN4 đến AN12 là đầu vào/ra

số thì thiết lập giá trị cho PCFG3:PCFG0 là 1011

Vì vậy: ADCON1 = 0b00001011; hay portconfig = 11

Trang 5

- Chương trình điều khiển

- Kết quả mô phỏng

Dout = 0b1011111111 = 767 (D)

Vref+ = 5V; Vref- = 0V

Trang 6

Nên : VA = (767 * 5)/1023 = 3.74877 (V),

Nhận xét: Điện áp đo được bằng vi điều khiển đúng với điện áp đo trên đồng hồ

là 3.5V

Trang 7

BÀI 8 ĐIỀU CHẾ ĐỘ RỘNG XUNG (PWM) Mục tiêu của bài học

(1) Trình bày được một số khái niệm và ứng dụng của xung PWM;

(2) Trình bày được đặc điểm, hoạt động và tính chọn giá trị cho các thanh ghi của bộ điều chế độ rộng xung (PWM) trên PIC18F4520;

(3) Lập trình điều khiển PWM sử dụng thư viện pwm.h;

(4) Lập trình ứng dụng tạo xung PWM trên kênh CCP1 để điều khiển tốc độ MOTOR một chiều

8.1 Một số khái niệm, quy ước chung

- Điều chế độ rộng xung (PWM) được viết tắt bởi cụm từ tiếng Anh Width Modulation) Đây là phương pháp điều chế độ rộng của xung vuông có chu kỳ không đổi

(Pulse Ứng dụng của xung PWM:

• Điều khiển góc quay của động cơ RC Servo

• Trong viễn thông, PWM là một dạng điều chế tín hiệu, trong đó độ rộng xung tương ứng với các giá trị dữ liệu cụ thể được mã hoá ở một đầu và được giải mã ở đầu kia

• Điều khiển độ sáng của đèn (đèn nền màn hình LCD, độ sáng led quảng cáo…)

• Điều khiển tốc độ motor DC( robot, xe đạp điện…)

Trang 8

• Điều chỉnh điện áp

8.2 Bộ tạo xung PWM trên PIC18F4520

- Chu kì là khoảng cách từ S tới S Tín hiệu S được tạo bởi sự so sánh bằng giữa

bộ đếm TMR2 với giá trị của thanh ghi PR2

- Độ rộng là khoảng cách từ S tới R Tín hiệu R được tạo bởi sự so sánh bằng giữa bộ đếm TMR2 với 10 bit (CCPRxL:CCPxCON<5:4>)

- Thiết lập chu kì

- Thiết lập độ rộng

Chú ý: 1<PR2<=255; PVTMR2 có thể nhận các giá trị 1, 4 hoạc 16

Trang 9

- Thiết lập hệ số chia tần cho Timer2 bằng thanh ghi T2CON

Ví dụ: đoạn chương trình thiết lập hệ số chia 1 cho Timer2 là:

T2CONbits.T2CKPS1=0;

T2CONbits.T2CKPS0=0;

8.3 Điều khiển PWM sử dụng thư viên pwm.h

- Các hàm trong thư viện ADC.h

Tra cứu nội dung các hàm trên tong Tài liệu tra cứu PIC, Giáo trình Vi

điều khiển PIC hoạc tài liệu hướng dẫn sử dụng thư viện MCC18

Trang 10

8.4 Ví dụ áp dụng

- Mạch điện

- Yêu cầu:

Cho sơ đồ mạch điện như hình trên:

Với FOSC = 8MHz, lập trình tạo xung PWM1(CCP1) có tần số 1KHz, độ rộng xung bằng 70% chu kì

Trang 11

- Chương trình điều khiển

- Kết quả mô phỏng

Trang 12

BÀI 3 NGẮT NGOÀI Mục tiêu bài học:

Sinh viên nhớ và hiểu:

₋ Quá trình thực hiện ngắt của vi điều khiển

₋ Các bit điều khiển ngắt ngoài;

₋ Các bước lập trình sử dụng ngắt ngoài

Sinh viên vận dụng các kiến thức đã học để lập trình, mô phỏng hoạt động của ngắt ngoài, bao gồm:

- 01 nguồn ngắt với mức ưu tiên cao;

- 01 nguồn ngắt với mức ưu tiên thấp;*

- 02 nguồn ngắt với mức ưu tiên khác nhau.*

*: Học trực tiếp (trên lớp)

3.1 Khái quát về ngắt

Khái niệm chung: Ngắt là tạm thời dừng công việc hiện tại và chuyển sang thực hiện một nhiệm vụ khác (thường là cấp thiết, quan trọng hơn) sau đó lại quay lại thực hiện tiếp công việc cũ (đang thực hiện dở)

Khái niệm ngắt ở vi điều khiển: Khi vi điều khiển đang thực hiện các lệnh ở chương trình chính (CTC), nếu có tín hiệu ngắt (giả thiết là trước đó đã cho phép ngắt), vi điều khiển sẽ thực hiện nốt lệnh đang thực hiện dở (giả sử là lệnh thứ n)

và tạm dừng CTC, chuyển sang thực hiện chương trình con phục vụ ngắt (CTCPVN) Sau khi thực hiện xong CTCPVN, vi điều khiển lại quay trở lại thực hiện tiếp các lệnh ở CTC (từ lệnh thứ n+1)

Trang 13

Vai trò của khối xử lý ngắt: Giúp cho vi điều khiển trở nên “đa nhiệm” hơn, ví dụ: Vừa có thể thực hiện điều khiển tuần tự, vừa có thể trao đổi dữ liệu

3.2 Ngắt ngoài trên PIC18F4520

- PIC18F4520 có 02 vector ngắt khác nhau, bao gồm:

+ 0x0008: vector ngắt ưu tiên cao;

+ 0x0018: vector ngắt ưu tiên thấp (xem thêm mục 4.2 trong giáo trình hoặc mục 9.0 trong tài liệu PIC18F4520 datasheet)

- PIC18F4520 có 15 nguồn ngắt khác nhau (xem thêm mục 4.2 trong giáo trình hoặc mục 9.0 trong tài liệu PIC18F4520 datasheet

- Ngắt ngoài (External Interrupt): Là ngắt gây ra bởi nguyên nhân đến từ bên bên ngoài vi điều khiển PIC184520 có 3 nguồn ngắt ngoài, gọi tắt là INT0, INT1 và INT2 Để gây ra ngắt cần có mạch điện bên ngoài tạo ra sự chuyển mức logic từ

“0” sang “1” (thường được gọi là sườn dương) hoặc sự chuyển mức logic từ “1” sang “0” (thường được gọi là sườn âm) đưa đến chân RB0/INT0 hoặc RB1/INT1 hoặc RB2/INT2

3.3 Quá trình thực hiện ngắt của vi điều khiển

Khái niệm về con trỏ lệnh: Là một thanh ghi đặc biệt, luôn trỏ và lệnh tiếp theo

sẽ được thực hiện Khi hoạt động, vi điều khiển đọc (lấy) mã lệnh ở ô nhớ trong

bộ nhớ chương trình có địa chỉ tương ứng với giá trị của IP để giải mã và thực hiện lệnh

Quá trình thực hiện ngắt của vi điều khiển:

Giả thiết tín hiệu ngắt đến khi vi điều khiển đang thực hiện ở lệnh thứ N trong CTC, khi đó vi điều khiển sẽ thực hiện theo trình tự sau:

- Thực hiện nốt lệnh thứ N; lưu giá trị của các thanh ghi vào ngăn xếp, trong đó

có IP=0xabcd;

Trang 14

- Chuyển sang thực hiện CTCPVN bằng cách gán cho IP giá trị 0x0008 (nếu là ngắt có mức ưu tiên cao) hoặc 0x0018 (nếu là ngắt có mức ưu tiên thấp)

- Sau khi thực hiện xong các lệnh của CTCPVN, vi điều khiển quay lại thực hiện tiếp các lệnh của CTC bằng cách gán cho IP giá trị 0xabcd+1 (nếu lệnh thứ N được mã hóa bằng 1 byte) đồng thời phục hồi lại giá trị của các thanh khi khác 3.4 Các bit điều khiển ngắt ngoài

Các bit điều khiển ngắt ngoài nằm trong các thanh ghi sau (xem thêm mục 4.4 trong giáo trình hoặc mục 9.1-9.6 trong tài liệu PIC18F4520 datasheet):

- Thanh ghi ADCON1:

Thiết lập các chân AN0-AN12 là vào/ra số hoặc vào tương tự

bit 7 bit 0

- Thanh ghi TRISB:

Thiết lập các chân RB0-RB7 có chiều vào hoặc ra (số)

Khi sử dụng các nguồn ngắt ngoài INT0, INT1 hoặc INT2, cần thiết lập chiều vào cho các chân RB0/INT0, RB1/INT1 hoặc RB2/INT2

Ví dụ: Khi sử dụng nguồn ngắt INT1 cần viết:

TRISB=0bxxxxxx1x;

Trong đó: x có thể là 0 hoặc 1 nếu các chân RB0, RB2-RB7 không được sử dụng

- Thanh ghi INTCON:

GIE/GIEH PEIE/GIEL TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF(1) bit 7 bit 0

- Thanh ghi INTCON2

bit 7 bit 0

- Thanh ghi INTCON3

INT2IP INT1IP — INT2IE INT1IE — INT2IF INT1IF

bit 7 bit 0

- Thanh ghi RCON

IPEN SBOREN — /RI /TO /PD /POR /BOR bit 7 bit 0

Trang 15

3.5 Các bước lập trình sử dụng ngắt ngoài

3.5.1 Khung chương trình có sử dụng ngắt và cách viết

Ngoài các phần tương tự như một chương trình không sử dụng ngắt (khai báo thư viện, biến/hằng số, cấu hình, chương trình chính), khung chương trình có sử dụng ngắt có thêm 02 điểm để viết các CTCPVN (phần tô vàng bên dưới) tương ứng với ngắt có mức ưu tiên cao (vector 0x0008) và ngắt có mức ưu tiên thấp (vector 0x0018), cụ thể như sau:

//khai báo thu viện

#pragma interruptlow low_isr

void low_isr (void)

#pragma interrupt high_isr

void high_isr (void)

{

//Các lệnh của CTCPVN với mức ưu tiên cao

}

Trang 16

C COMPILER USER’S GUIDE” để viết khung chương trình:

- Nhập từ khóa vector=0x08, copy phần khung CTCPVN ở mục 2.9.2.3:

- Dán (paste) vào sau các câu lệnh cấu hình (#pragma):

Trang 17

Khi biên dịch, các phần khác nhau trong khung chương trình trên sẽ được trình biên dịch bố trí vào các vị trí khác nhau trong bộ nhớ chương trình, cụ thể như sau:

//mã của lệnh chuyển tới thực hiện hàm main

{_asm GOTO high_isr _endasm}

{_asm GOTO low_isr _endasm}

do trình biên dịch gán

void high_isr (void)

và Low-Priority Interrupt Vector thường cũng không đủ để viết các lệnh của CTCPVN có mức ưu tiên cao và CTCPVN có mức ưu tiên thấp nên ở đây chi chứa mã của lệnh gọi tới các hàm high_isr và low_isr

3.5.2 Viết các lệnh của chương trình chính

Trang 18

INTEDGx và INTxIF thuộc thanh ghi nào cần nhớ các từ khóa GIE, INTxIE, INTEDGx và INTxIF (x=0, 1 hoặc 2) và tra cứu trong “Tài liệu tra cứu PIC” hoặc tài liệu “PIC18F4520 Data Sheet” Hình dưới minh họa cách sử dụng tài liệu

“PIC18F4520 Data Sheet” để tra cứu bit INT0IE

b Các lệnh theo đề bài

Các lệnh được viết ở chương trình chính sẽ là “các công việc tuần tự, lặp lại” Ví

dụ với yêu bài toán sau:

Giả thiết có mạch điện mô phỏng

như hình bên Viết chương trình

điều khiển:

- Các LED1-4 sáng tuần

tự theo chu trình như hình dưới;

- LED5 sáng trong thời gian ~1s

RA0/AN0/C1IN- 3

RA1/AN1/C2IN-RA2/AN2/C2IN+/VREF-/CVREF 4

RA3/AN3/C1IN+/VREF+

5 RA4/T0CKI/C1OUT 6

RA5/AN4/SS/HLVDIN/C2OUT 7

RA6/OSC2/CLKO 14

RA7/OSC1/CLKI 13

RB0/AN12/FLT0/INT0 33

RB1/AN10/INT1 34

RB2/AN8/INT2 35

RB3/AN9/CCP2A 36

RB4/KBI0/AN11 37

RB5/KBI1/PGM 38

RB6/KBI2/PGC 39

RB7/KBI3/PGD 40

RC0/T1OSO/T13CKI 15RC1/T1OSI/CCP2B 16RC2/CCP1/P1A 17RC3/SCK/SCL 18RC4/SDI/SDA 23RC5/SDO 24RC6/TX/CK 25RC7/RX/DT 26RD0/PSP0 19RD1/PSP1 20RD2/PSP2 21RD3/PSP3 22RD4/PSP4 27RD5/PSP5/P1B 28RD6/PSP6/P1C 29RD7/PSP7/P1D 30RE0/RD/AN5 8RE1/WR/AN6 9RE2/CS/AN7 10RE3/MCLR/VPP 1

Trang 19

Các lệnh được viết ở CTCPVN sẽ là “các công việc được thực hiện khi xảy ra ngắt”

Ví dụ với bài toán trên, nếu ngắt INT2 được khởi tạo, khi nhấn PB sẽ gây ra ngắt

Vì vậy, “điều khiển LED5 sáng trong thời gian ~1s” sẽ được đặt ở CTCPVN 3.6 Lập trình, mô phỏng hoạt động của ngắt ngoài

Từ các phân tích nêu trong mục 3.5, thuật toán của bài toán được trình bày như sau:

Trang 20

PORTB=0b0001000; //LED2 sáng DelayKTCYx(100); // trễ

PORTB=0b0010000; //LED3 sáng DelayKTCYx(100); // trễ

PORTB=0b0100000; //LED4 sáng DelayKTCYx(100); // trễ

Trang 21

Phần 1: Sử dụng trình dịch, phần mềm mô phỏng; ghép nối phần cứng; lập trình điều

khiển vào/ra

Chú ý:

- Các chân vào/ra được thay đổi để đảm bảo tất cả các đề thi không trùng lặp nhau

Câu 1.1 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- 04 LED đơn LED1 - LED4 nối lần lượt với các chân

RD0 - RD3 theo sơ đồ như hình bên;

- Nút nhấn PB1 nối với RB0 theo sơ đồ như hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu:

- Khi PB1 ở trạng thái nhả: các LED sáng/tắt theo chu trình sau:

LED1 sáng, các LED

khác tắt trong ≈ 1 giây

LED2 sáng, các LED khác tắt trong ≈ 1 giây

LED3 sáng, các LED khác tắt trong ≈ 1 giây

LED4 sáng, các LED khác tắt trong ≈ 1 giây

- Khi PB1 ở trạng thái nhấn, tất cả các LED tắt

Câu 1.2 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- 04 LED đơn LED1 - LED4 nối lần lượt với các chân

RD0 - RD3 theo sơ đồ như hình bên;

- Nút nhấn PB1 nối với RB0 theo sơ đồ như hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu:

- Khi bật nguồn hoặc reset: 4 LED tắt;

- Nhấn PB1 một lần, LED1 sáng, các LED khác tắt; nhấn PB1 hai lần, LED2 sáng, các LED khác tắt; nhấn PB1 ba lần, LED3 sáng, các LED khác tắt; nhấn PB1 bốn lần, LED4 sáng, các LED khác tắt; nhấn PB1 từ năm lần trở lên, tất cả các LED sáng;

R 4k7

VCC

LED I/O pin

PB

R 560 I/O pin

R 4k7

VCC

LED I/O pin

PB

R 560 I/O pin

Trang 22

Câu 1.3 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- 04 LED đơn LED1 - LED4 nối lần lượt với các chân

RD0 - RD3 theo sơ đồ như hình bên;

- Nút nhấn PB1 nối với RB0 theo sơ đồ như hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu:

- Khi bật nguồn hoặc reset: 4 LED tắt;

phân trên 4 LED (LED sáng tương ứng bit “1”, tắt tương ứng bit “0”) Giả thiết số lần nhấn

không lớn hơn 255 lần

Câu 1.4 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- 04 LED đơn LED1 - LED4 nối lần lượt với các chân

RD0 - RD3 theo sơ đồ như hình bên;

- Nút nhấn PB1 nối với RB0; nút nhấn PB2 nối với

RB1 theo sơ đồ như hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu như bảng trạng thái sau:

VCC

LED I/O pin

PB

R 560 I/O pin

R 4k7

VCC

LED I/O pin

PB

R 560 I/O pin

Trang 23

Câu 1.5 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- LED1 nối với chân RD2; LED2 nối với chân RD3 theo

sơ đồ như hình bên;

- Nút nhấn PB1 nối với RB0; nút nhấn PB2 nối với

RB1 theo sơ đồ như hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu như sau:

- Khi PB1 ở trạng thái nhả: LED1 và LED2 tắt;

VCC

LED I/O pin

PB

R 560 I/O pin

Trang 24

Phần 2: Thiết kế các ứng dụng sử dụng Ngắt, Timer, PWM, ADC, USART

2.1 Thiết kế các ứng dụng sử dụng ngắt ngoài

Câu 2.1.1 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- LED1 nối với chân RC1; LED2 nối với chân RC2 theo

sơ đồ như hình bên;

- Nút nhấn PB1 nối với chân RB0/INT0 theo sơ đồ như

hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu như sau:

- Khi bật nguồn hoặc reset: LED1 sáng/tắt liên tục

- Khi nhấn PB1, LED1 lập tức ngừng sáng/tắt, LED2 sáng/tắt 5 lần sau đó sau đó tắt và

LED1 tiếp tục sáng/tắt

Thời gian sáng/tắt của LED: ≈1 giây

Câu 2.1.2 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- LED1÷LED4 nối với các chân RD0÷RD3 theo sơ đồ

như hình bên;

- Nút nhấn PB1 nối với chân RB1/INT1 theo sơ đồ như

hình bên

b Vẽ lưu đồ thuật toán và viết chương trình theo yêu cầu như sau:

LED4 sáng/tắt liên tục với thời gian sáng/tắt: ≈1 giây trong khi LED1÷LED3 hiển thị số lần

nhấn PB1 dưới dạng số nhị phân (LED sáng tương ứng với bit “1”; LED tắt tương ứng với bit “0”) Giả thiết số lần nhấn PB1 không lớn hơn 7 lần

2.2 Thiết kế các ứng dụng sử dụng timer

Câu 2.2.1 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

Chân RD0 nối với máy hiện sóng (oscilloscope) như hình bên

b Xác định hệ số chia tần, giá trị khởi tạo cho timer và viết chương trình theo yêu cầu như sau:

R 4k7

R 560

R 560

Trang 25

Câu 2.2.2 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

- LED1÷LED8 nối với các chân RD0÷RD7 theo sơ đồ như hình bên;

- Nút nhấn PB1 nối với chân RC0/T13CKI theo sơ đồ như hình bên

b Xác định hệ số chia tần, giá trị khởi tạo cho timer, chế độ hoạt động của timer và viết

chương trình theo yêu cầu như sau:

Sử dụng Timer1 đếm số lần nhấn PB1 và hiển thị số lần nhấn dưới dạng số nhị phân trên

LED1÷LED8 (LED sáng tương ứng với bit “1”; LED tắt tương ứng với bit “0”) Giả thiết số

lần nhấn không quá 255 lần

2.3 Thiết kế các ứng dụng sử dụng PWM

Câu 2.3.1 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

Chân RC2/CCP1 nối với máy hiện sóng (oscilloscope) như hình bên;

PIC18F4520 hoạt động ở tần số 12Mhz

b Xác định hệ số chia tần, giá trị khởi tạo cho PR2 (hoặc đối số của hàm OpenPWMx), giá

trị khởi tạo cho CCPRxL:CCPxCON<5:4> (hoặc đối số của hàm SetDCPWMx) và viết

chương trình theo yêu cầu như sau:

Tạo xung trên chân CCP1 có chu kỳ 300µs, độ rộng nửa chu kỳ dương 120µs

Câu 2.3.2 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

Chân RB3/CCP2A nối với máy hiện sóng (oscilloscope) như hình bên;

PIC18F4520 hoạt động ở tần số 12Mhz

b Xác định hệ số chia tần, giá trị khởi tạo cho PR2 (hoặc đối số của hàm OpenPWMx), giá

trị khởi tạo cho CCPRxL:CCPxCON<5:4> (hoặc đối số của hàm SetDCPWMx) và viết

chương trình theo yêu cầu như sau:

Tạo xung trên chân CCP2A có chu kỳ 800µs, độ rộng nửa chu kỳ dương: 240µs

Câu 2.3.3 Vẽ, lắp ráp mạch điện và lập trình theo yêu cầu:

a Vẽ, lắp ráp mạch điện như sau:

Chân RC1/CCP2B nối với máy hiện sóng (oscilloscope) như hình bên;

PIC18F4520 hoạt động ở tần số 12Mhz

b Xác định hệ số chia tần, giá trị khởi tạo cho PR2 (hoặc đối số của hàm OpenPWMx), giá

trị khởi tạo cho CCPRxL:CCPxCON<5:4> (hoặc đối số của hàm SetDCPWMx) và viết

chương trình theo yêu cầu như sau:

Tạo xung trên chân CCP2B có chu kỳ 80µs, độ rộng nửa chu kỳ dương: 20µs

R 4k7

R 560

Ngày đăng: 28/12/2021, 20:50

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w