Tải bản đầy đủ (.docx) (35 trang)

TÊN đề tài điều KHIỂN THIẾT bị QUA BLUETOOTH DÙNG PIC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (730.85 KB, 35 trang )

TÊN ĐỀ TÀI: ĐIỀU KHIỂN THIẾT BỊ QUA
BLUETOOTH DÙNG PIC


vi


MỤC LỤC
DANH MỤC CÁC HÌNH VẼ………………………………………………………....vii
DANH MỤC CÁC BẢNG BIỂU……………………………………………………..viii
DANH MỤC CÁC TỪ VIẾT TẮT…………………………………………………….ix
CHƯƠNG 1. TỔNG QUAN VỀ VI ĐIỀU KHIỂN…………………………………....1
1.1 Giới thiệu……………………………………………………………………………...1
1.1.1 Lịch sử……………………………………………………………………………..1
1.1.2 Phân loại…………………………………………………………………………..2

CHƯƠNG 2. GIỚI THIỆU VỀ MỘT VÀI LINH KIỆN ĐƯỢC SỬ DỤNG TRONG
MẠCH……………………………………………………………………………………3
2.1 Điện trở / Biến trở………………………………………………………………….....3
2.2 Tụ điện………………………………………………………………………………..5
2.3 Led……………………………………………………………………………………5
2.4 PIC 16F877a………………………………………………………………………….6
2.4.1 Bộ nhớ chương trình và bộ nhớ dữ liệu …………………………………………………7
2.4.2 Các thanh ghi đặc biệt……………………………………………………………...9
2.4.3 Các PORT xuất nhập……………………………………………………………….9
2.5 Thạch anh 20MHz…………………………………………………………………...12
2.6 Bluetooth HC-05…………………………………………………………………….13
2.7 Còi …………………………………………………………………………………..14
2.8 Quạt DC……………………………………………………………………………..14
CHƯƠNG 3. NỘI DUNG CỦA MẠCH ĐIỀU KHIỂN THIẾT BỊ QUA
BLUETOOTH DÙNG PIC……………………………………………………………15


3.1 Mạch mô phỏng proteus…. ………………………………………………………...16
3.2 Code lập trình……………………………………………………………………….17
CHƯƠNG 4. KẾT QUẢ MÔ PHỎNG……………………………………………….21
CHƯƠNG 5. KẾT LUẬN……………………………………………………………..22
5.1 Kết luận……………………………………………………………………………..22
5.2 Hướng phát triển và ứng dụng………………………………………………………22
TÀI LIỆU THAM KHẢO……………………………………………………………..22

vi


DANH MỤC CÁC HÌNH VẼ

Vi điều khiển PIC………………………………………………………………………..1
Các dòng PIC ……………………………………………………………………………2
Kí hiệu điện trở……………………. ……………………………………........................3
Điện trở …………………………………………………………………………………..3
Biến trở …………………………………………………………………………………..4
Tụ điện……………………………………………………………………………………5
Cấu tạo đèn LED ……………………………………………………..............................5
Đèn LED …………………………………………………………………………............5
Sơ đồ chân của PIC16F877A …………………………………………………………...6
Các chức năng PIC16F877A ……………………………………………………………7
Thạch anh ………………………………………………………………………............12
Bluetooth HC-05 ………………………………………………………………............13
Còi báo ………………………………………………………………………………….14
Quạt ……………………………………………………………………………………..14
Sơ đồ khối mạch ……………………………………………………………………….15
Mạch mô phỏng ………………………………………………………………………...16
Mạch in …………………………………………………………………………............21


vii


DANH MỤC CÁC BẢNG BIỂU

Bộ nhớ dữ liệu PIC16F877A

viii


Bảng đọc màu điện trở

viii


DANH MỤC CÁC TỪ VIẾT TẮT
LED

Light Emitting Diode (Diode phát quang)

PIC

Programmable Intelligent Computer

ROM

Read-Only Memory

RAM


Random Access Memory

FSG

File Select Register

ADC

Analog to Digital Converter

ix


ĐỒ ÁN 1
Trang 1/16

MẠCH PHÁT HIỆN VẬT THỂ DI ĐỘNG DÙNG HỒNG NGOẠI


Đồ án 2
Trang 1/22

CHƯƠNG 1. TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC
1.1 Giới thiệu
Vi điều khiển là một máy tính được tích hợp trên một chíp, nó thường được sử dụng để
điều khiển các thiết bị điện tử. Vi điều khiển, thực chất, là một hệ thống bao gồm một vi
xử lý có hiệu suất đủ dùng và giá thành thấp (khác với các bộ vi xử lý đa năng dùng trong
máy tính) kết hợp với các khối ngoại vi như bộ nhớ, các mô đun vào/ra, các mô đun biến
đổi số sang tương tự và tương tự sang số,... Ở máy tính thì các mô đun thường được xây

dựng bởi các chíp và mạch ngoài. Vi điều khiển thường được dùng để xây dựng các hệ
thống nhúng. Nó xuất hiện khá nhiều trong các dụng cụ điện tử, thiết bị điện, máy giặt, lò
vi sóng, điện thoại, đầu đọc DVD, thiết bị đa phương tiện, dây chuyền tự động, v.v.

Hình 1.1 Vi điều khiển PIC
Hầu hết các vi điều khiển ngày nay được xây dựng dựa trên kiến trúc Harvard, kiến trúc
này định nghĩa bốn thành phần cần thiết của một hệ thống nhúng. Những thành phần này
là lõi CPU, bộ nhớ chương trình (thông thường là ROM hoặc bộ nhớ Flash), bộ nhớ dữ
liệu (RAM), một hoặc vài bộ định thời và các cổng vào/ra để giao tiếp với các thiết bị
ngoại vi và các môi trường bên ngoài - tất cả các khối này được thiết kế trong một vi
mạch tích hợp. Vi điều khiển khác với các bộ vi xử lý đa năng ở chỗ là nó có thể hoạt
động chỉ với vài vi mạch hỗ trợ bên ngoài.(Sưu tầm)
1.1.1 Lịch sử

PIC là một họ vi điều khiển RISC được sản xuất bởi công ty Microchip
Technology. Dòng PIC đầu tiên là PIC1650 được phát triển bởi Microelectronics Division
thuộc General Instrument.
PIC bắt nguồn là chữ viết tắt của "Programmable Intelligent Computer" (Máy tính
khả trình thông minh) là một sản phẩm của hãng General Instruments đặt cho dòng
sản phẩm đầu tiên của họ là PIC1650. Lúc này, PIC1650 được dùng để giao tiếp với
các thiết bị ngoại vi cho máy chủ 16bit CP1600, vì vậy, người ta cũng gọi PIC với cái
tên "Peripheral Interface Controller" (Bộ điều khiển giao tiếp ngoại vi.(Nguồn vtf)
MẠCH PHÁT HIỆN VẬT THỂ DI ĐỘNG DÙNG HỒNG NGOẠI

SVTH: Trần Thái Dương


Đồ án 2
Trang 1/22


MẠCH PHÁT HIỆN VẬT THỂ DI ĐỘNG DÙNG HỒNG NGOẠI

SVTH: Trần Thái Dương


Đồ án 2
Trang 2/22

Phân loại


ĐỒ ÁN 1
Trang 3/18

PIC12xxxx: độ dài lệnh 12 bit.
PIC16xxxx: độ dài lệnh 14 bit.
PIC18xxxx: độ dài lệnh 16 bit.
C: PIC có bộ nhớ EPROM (chỉ có 16C84 là EEPROM).
F: PIC có bộ nhớ flash.
LF: PIC có bộ nhớ flash hoạt động ở điện áp thấp.
LV: tương tụ như LF, đây là kí hiệu cũ.
Bên cạnh đó một số vi điều khiển có kí hiệu xxFxxx là EEPROM, nếu có thêm chữ A ở
cuối là flash (ví dụ PIC16F877 là EEPROM, còn PIC16F877A là flash).
Ngoài ra còn có thêm mọt dòng vi điều khiển PIC mới là dsPIC.
Ở Việt Nam phổ biến nhất là các họ vi điều khiển PIC do hãng Microchip sản xuất.

Hình 1.1.2 Các dòng PIC


ĐỒ ÁN 1

Trang 3/15

CHƯƠNG 2. GIỚI THIỆU VỀ MỘT VÀI LINH KIỆN ĐƯỢC SỬ DỤNG
TRONG MẠCH
2.1 Điện trở / Biến trở
Điện trở là đại lượng đặc trưng cho mức cản trở qua nó. Điện trở còn phụ thuộc vào
nhiều yếu tố như chất liệu,…
Định luật Ohm thể hiện mối quan hệ giữa điện trở, hiệu điện thế và dòng điện đi qua nó
Trong đó R: đơn vị ohm (kí hiệu: Ω)
U: điện áp đặt giữa hai đầu điện trở, đơn vị volt (kí hiệu: V)
I: dòng điện đi qua điện trở, đơn vị ampere (kí hiệu: A)

Ký hiệu:
Hình 2.1.1 Kí hiệu điện trở

Hình 2.1.2 Điện trở

Giá trị vòng màu điện trở:


ĐỒ ÁN 1
Trang 3/15

Hình 2.1.3 Bảng đọc màu điện trở
Biến trở là một linh kiện điện tử có thể thay đổi giá trị của điện trở.

Hình 2.1.4 Biến trở

2.2 Tụ điện
Tụ điện là linh kiện có cấu tạo cơ bản là hai bản cực dương và âm đặt song song với

nhau, có tính chất cách điện một chiều và cho dòng điện xoay chiều đi qua.
Kí hiệu và thực tế:


ĐỒ ÁN 1
Trang 3/15

Hình 2.2 Tụ điện

2.3 Led

Cấu tạo:
Hình 2.3.1 Cấu tạo LED
LED (viết tắt của Light Emitting Diode, có nghĩa
là điốt phát quang) là các đi ốt có thể phát ra ánh sáng
tia hồng ngoại, tử ngoại

Hình 2.3.2 Đèn LED


Đồ án 2
Trang 6/22

2.4 PIC 16F877A
PIC 16F877A là loại vi điều khiển 8bit tầm trung của hãng microchip.
PIC 16F877A có kiến trúc Havard, sử dụng tập lệnh kiểu RISC (Reduced Instruction Set
Computer) với chỉ 35 lệnh cơ bản.
Tất cả các lệnh được thực hiện trong một chu kì lệnh ngoại trừ các lệnh rẽ nhánh.
Sơ đồ chân của PIC16F877A


Hình 2.4.1 Sơ đồ chân của PIC16F877A


ĐỒ ÁN 1
Trang 9/18

Các chức năng cơ bản:


ĐỒ ÁN 1
Trang 9/18

Hình 2.4.2 Các chức năng PIC16F877A

2.4.1 Bộ nhớ chương trình và bộ nhớ dữ liệu
Bộ nhớ chương trình của PIC16F877A là bộ nhớ Flash, dung lượng bộ nhớ 8K word (1
word = 14bit). Bộ nhớ chương trình có khả năng chứa được 8*1024 = 8192 lệnh.
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia ra làm nhiều bank.


ĐỒ ÁN 1
Trang 9/18

Đối với PIC16F877A bộ nhớ dữ liệu được chia ra làm bốn bank. Mỗi bank có dung lượng
128 bytes, bao gồm các thanh ghi có chức năng đặc biệt SFG (Special Function Register)
nằm ở các vùng địa chỉ thấp và các thanhghi mục đích chung GPR (General Purpose
Register) nằm ở vùng địa chỉ còn lại trong bank. Các thanh ghi SFR thường xuyên được
sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cả các bank của bộ nhớ dữ liệu
giúp thuận tiện trong quá trình truy xuất và làm giảm bớt lệnh của chương trình.


Hình 2.4.1 Bộ nhớ dữ liệu PIC16F877A


ĐỒ ÁN 1
Trang 9/18

2.4.2 Các thanh ghi đặc biệt
Đây là các thanh ghi được sử dụng bởi CPU hoặc được dung để thiết lập và điều khiển
các khối chức năng được tích hợp bên trong vi điều khiển. Cóthể phân thanh ghi SFR ra
làm hai loại: thanh ghi SFR liên quan đến chức năng bên trong ( CPU) và thanh ghi SFR
dùng để thiết lập và điều khiển cáckhối chức năng bên ngoài ( ví dụ như ADC, PWM,…).
Thanh ghi STATUS (03h,83h,103h,183h): thanh ghi chứa kết quả thực hiện phép toán
của khối ALU, trạng thái reset và các bit chọn bank cần truy xuất trong bộ nhớ dữ liệu.
Thanh ghi OPTION_REG (81h,181h): thanh ghi này cho phép đọc và ghi, cho phép
điều khiển chức năng pull-up của các chân trong PORTB, xác lập các tham số về xung
tác động, cạnh tác động của ngắt ngoại vi và bộ đếm của Timer0.
Thanh ghi INTCON (0Bh,8Bh,10Bh,18Bh): thanh ghi cho phép đọc và ghi, chứa các bit
điều khiển và các bit cờ hiệu khi timer0 bị tràn, ngắt ngoại vi RB0/INT và ngắt interrupton-change tại các chân của PORTB.
Thanh ghi PIE1 (8Ch): chứa các bit điều khiển chi tiết các ngắt của các khối chức năng
ngoại vi.
Thanh ghi PIR1 (0Ch) chứa cờ ngắt của các khối chức năng ngoại vi, các ngắt này được
cho phép bởi các bit điều khiển chứa trong thanh ghi PIE1.
Thanh ghi PIE2 (8Dh): chứa các bit điều khiển các ngắt của các khối chức năng CCP2,
SSP bus, ngắt của bộ so sánh và ngắt ghi vào bộ nhớ EEPROM.
Thanh ghi PIR2 (0Dh): chứa các cờ ngắt của các khối chức năng ngoại vi, các ngắt này
được cho phép bởi các bit điều khiển chứa trong thanh ghi PIE2.
Thanh ghi PCON (8Eh): chứa các cờ hiệu cho biết trạng thái các chế độ reset của vi
điều khiển.
Thanh ghi mục đích chung GPR
Các thanh ghi này có thể được truy xuất trực tiếp hoặc gián tiếp thông qua thanh ghi FSG

(File Select Register). Đây là các thanh ghi dữ liệu thông thường, người sử dụng có thể
tùy theo mục đích chương trình mà có thể dùng các thanh ghi này để chứa các biến số,
hằng số, kết quả hoặc các tham số phục vụ cho chương trình.

2.4.3 Các PORT xuất nhập
PORTA
PORTA (RPA) bao gồm 6 I/O pin. Có thể xuất và nhập dữ liệu được. Chức năng I/O này
được điều khiển bởi thanh ghi TRISA (địa chỉ 85H).


ĐỒ ÁN 1
Trang 9/18

Ngoài ra PORTA còn là ngõ ra của bộ ADC, bộ so sánh, ngõ vào analog, xung clock của
Timer0 và ngõ vào của bộ giao tiếp MSSP (Master Synchronous Serial Port).
Các thanh ghi SFR liên quan đến PORTA bao gồm:
PORTA (địa chỉ 05H) : chứa giá trị các pin trong PORTA.
TRISA (địa chỉ 85H): điều khiển xuất nhập.
CMCON (địa chỉ 9CH): thanh ghi điều khiển bộ so sánh.
CVRCON (địa chỉ 9DH): thanh ghi điều khiển bộ so sánh điện áp.
ADCON1 (địa chỉ 9FH): thanh ghi điều khiển bộ ADC.
PORTB
PORTB (RPB) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tương ứng làTRISB. Bên
cạnh đó một số chân của PORTB còn được sử dụng trong quá trình nạp chương trình cho
vi điều khiển với chế độ nạp khác nhau. PORTB còn liên quan ngắt ngoại vi và bộ
Timer0. PORTB còn được tích hợp chức năng điện trở kéo lên được điều khiển bởi
chương trình.
Các thanh ghi SFR liên quan đến PORTB bao gồm:
PORTB (địa chỉ 06h,106H): chứa giá trị các pin trong PORTB.
TRISB (địa chỉ 86h,186H): điều khiển xuất nhập.

OPTION_REG (địa chỉ 81H, 181H): điều khiển ngắt ngoại vi và bộ Timer0.
PORTC
PORTC (RBC) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tương ứng làTRISC. Bên
cạnh đó PORTC còn chứa các chức năng của bộ so sánh, bộ Timer1, bộ PWM và các
chuẩn giao tiếp I2C, SPI, SSP, USART. Các thanh ghi điều khiển liên quan đến PORTC:
PORTC (địa chỉ 07H): chứa giá trị các pin trong PORTC.
TRISC (địa chỉ 87H): điều khiển xuất nhập.
PORTD
PORTD gồm 8 chân I/O, thanh ghi điều khiển xuất nhập tương ứng TRISD. PORTD còn
là cổng xuất dữ liệu của chuẩn giao tiếp PSP (Parallel Slave Port).
Các thanh ghi liên quan đến PORTD bao gồm:


Đồ án 2
Trang 11/32

Thanh ghi PORTD: chứa giá trị các pin trong PORTD.
Thanh ghi TRISD: điều khiển xuất nhập.
PORTE
PORTE (RPE) gồm 3 chân I/O. Thanh ghi điều khiển xuất nhập tương ứng là TRISE. Các
chân của PORTE có ngỏ vào là analog. Bên cạnh đó còn có các chân điều khiển của
chuẩn giao tiếp PSP.
Các thanh ghi liên quan đến PORTD bao gồm:
Thanh ghi PORTE: chứa giá trị các pin trong PORTE.
Thanh ghi TRISE: điều khiển xuất nhập PORTE và chuẩn giao tiếp PSP.
ADCON1: thanh ghi điều khiển khối ADC.
TIMER1
Timer1 là bộ định thời 16 bit, giá trị của hai timer1 sẽ được lưu vào hai thanh ghi
(TMR1H:TML1R). Cờ ngắt của Timer1 là TMR1IF (PIR<0>). Bit điều khiển của Timer1
sẽ là TMR1IE (PIE<0>).

Các thanh ghi của Timer1 bao gồm:
INTCON (địa chỉ 0BH, 8BH, 10BH, 18BH): cho phép ngắt hoạt động (GIE và PEIE).
PIR1 (địa chỉ 0CH): chứa cờ ngắt Timer1 (TMR1IF).
PIE1 (địa chỉ 8CH): cho phép ngắt Timer1.
TMR1L (địa chỉ 0EH): chứa giá trị 8 bit thấp của bộ đếm Timer1.
TMR1H (địa chỉ 0EH): chứa giá trị 8 bit cao của bộ đếm Timer1.
T1CON (địa chỉ 10H): xác lập các thông số cho Timer1.

TIMER2


Đồ án 2
Trang 11/32

Timer2 là bộ định thời 8 bit và được hỗ trợ bởi hai bộ chia tần số prescaler và postscaler.
Thanh ghi chứa giá trị đếm của Timer2 là TMR2. Bit cho phép ngắt Timer2 tác động là
TMR2ON (T2CON<2>). Cờ ngắt của Timer2 là bit TMR2IF (PIR1<1>).
Các thanh ghi của Timer2:
INTCON (địa chỉ 0BH, 8BH, 10BH, 18BH): cho phép ngắt hoạt động (GIE và PEIE).
PIR1 (địa chỉ 0CH): chứa cờ ngắt Timer2 (TMR2IF).
PIE1 (địa chỉ 8CH): cho phép ngắt Timer2.
TMR2 (địa chỉ 11H): chứa giá trị đếm Timer2.
T2CON (địa chỉ 12H): xác lập các thông số cho Timer2.

ADC
ADC (Analog to Digital Converter) là bộ chuyển đổi tín hiệu giữa hai dạng tương tự và số.
PIC16F877A có 8 ngõ vào analog (RA4:RA0 và RE2:RE0). Khi không sử dụng bộ chuyển
đổi ADC, các thanh ghi này có thể được sử dụng như các thanh ghi thông thường



Đồ án 2
Trang 12/22

khác. Khi quá trình chuyển đổi hoàn tất, kết quả sẽ được lưu vào hai thanh ghi
ADRESH:ADRESL.


ĐỒ ÁN 1
Trang 10/18

2.5 Thạch anh 20MHz
Thạch anh điện tử: là một linh kiện làm bằng tinh thể đá thạch anh được mài phẳng và
chính xác. Linh kiện thạch anh làm việc dựa trên hiệu ứng áp điện. Hiệu ứng này có tính
thuận nghịch. Khi áp một điện áp vào 2 mặt của thạch anh, nó sẽ bị biến dạng. Ngược lại,
khi tạo sức ép vào 2 bề mặt đó, nó sẽ phát ra điện áp.
Như vậy nếu ta đặt một điện áp xoay chiều vào thì nó sẽ biến dạng theo tần số của điện
áp đó. Khi thay đổi đến một tần số nào đó, thì nó sẽ cộng hưởng.
Mạch tương đương của nó gồm một L và một C nối tiếp với nhau. Cả cụm ấy song song
với một C khác và một R cách điện.
Tần số cộng hưởng của Thạch anh tùy thuộc vào hình dáng và kích thước của nó. Mỗi
tinh thể thạch anh có 2 tần số cộng hưởng: tần số cộng hưởng nối tiếp, và tần số cộng
hưởng song song. Hai tần số này khá gần nhau và có trị số khá bền vững, hầu như rất ít bị
ảnh hưởng bởi các điều kiện môi trường bên ngoài. Ngoài ra, hệ số phẩm chất của mạch
cộng hưởng rất lớn, nên tổn hao rất thấp.
Mạch Dao động Thạch anh: cho ra tần số rất ổn định, sử dụng rất nhiều trong các đồng hồ
điện tử (như đồng hồ đeo tay, đồng hồ để bàn...), trong các thiết bị đo lường điện tử (tạo
xung chuẩn), trong mạch đồng bộ màu của TV, VCR, trong các thiết bị tin học (máy vi
tính, các thiết bị nối với máy vi tính), trong các nhạc cụ điện tử như Piano điện, organ...
Mạch lọc tích cực dùng Thạch anh: sử dụng nhiều trong các mạch khuếch đại trung tần
của các máy thu thông tin liên lạc, TV, Radio...


Hình 2.5 Thạch anh

2.6 Bluetooth HC-05
Bluetooth HC-05 là một thiết bị điện tử được dùng để kết nối với các thiết bị như máy
tính, vi điều khiển,… thông qua giao tiếp Uart bằng song Bluetooth.
Thông số kĩ thuật của HC-05:


×