Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
1,2 MB
Nội dung
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 1
TRƯỜNG CAO ĐẲNG KĨ THUẬT CAO THẮNG
KHOA: ĐIỆN TỬ _ TIN HỌC
LỚP: CĐĐT06
Luậnvă n
GVHD: NGUYỄN TRỌNG KHANH
SVTH: LÝ NGUYN H
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 2
LỜI CẢM ƠN
Trước tiên em xin chân thành cảm ơn toàn thể thầy cô trường Cao Đẳng Kỷ
Thuật Cao Thắng , những người đ tạo điều kiện cho em có cơ hội nghiên cứu và tìm
hiểu su rộng về lĩnh vực điện tử, đặc biệt là thầy Nguyễn Trọng Khanh đ tận tình hướng
dẫn và giúp đỡ chng em trong thời gian thực hiện đề tài. Đồng thời chng em cũng gửi lời
cảm ơn tới gia đình v bạn b đ gip đỡ em trong thời gian qua. Có được sự giúp đỡnhiệt
tình đó cộng với sự cố gắng của bản thân nên em đ hồn thnh được đề tài đng thời hạn.
Với sự hiểu biết cịn hạn chế v thời gian thực hiện đề tài không nhiều nên đề tài không
tránh khỏi những sai sót. Rất cảm ơn sự hướng dẫn và góp ý của quý thầy cơ v bạn b cho
đề tài được hoàn chỉnh hơn.
Em xin chân thành cảm ơn!
Sinh vin thực hiện
Lý Nguyn H
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 3
NHẬN XÉT CỦA GIÁO VIÊN
Tp Hồ Chí Minh, ngy… thng… năm 2009
Gio vin hướng dẫn
Ký tn
Thầy Gio Nguyễn Trọng Khanh
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 4
NHẬN XT CỦA GIO VIN PHẢN BIỆN
Tp HCM, ngy… thng… năm 2009
Gio vin phản biện
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 5
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 6
I. GIỚI THIỆU VỀ VI ĐIỀUKHIỂN PIC 16F877A
1.1. Giới thiệu chung
1.1.1 Tổng quan về họ Vi điềukhiển PIC
PIC là một họ vi điềukhiể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 từ 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 hng General Instruments
đặt cho dịng sản phẩm đầu tiên của họ là PIC1650. Lúc này, PIC 1650 được dùng để giao
tiếp với các thiết bị ngoại vi cho máy chủ 16 bit CP1600, vì vậy, người ta cũng gọi PIC
với tên “Peripheral Interface Controller” (Bộ điềukhiển giao tiếp ngoại vi). CP1600 là
một CPU tốt, nhưng lại kém về các hoạt động xuất nhập, và vì vậy PIC 8-bit được phát
triển vào khoảng năm 1975 để hỗ trợ hoạt động xuất nhập cho CP1600. PIC sử dụng
microcode đơn giản đặt trong ROM, và mặc dù, cụm từ RISC chưa được sử dụng thời
bấy giờ, nhưng PIC thực sự là một vi điềukhiển với kiến trúc RISC, chạy một lệnh một
chu kỳ máy (4 chu kỳ của bộ dao động). Năm 1985 General Instruments bán bộ phận vi
điện tử của họ, và chủ sở hữu mới hủy bỏ hầu hết các dự án – lúc đó quá lỗi thời. Tuy
nhiên, PIC được bổ sung EPROM để tạo thành 1 bộ điềukhiển vào ra khả trình. Ngy nay
rất nhiều dịng PIC được xuất xưởng với hàng loạt các module ngoại vi tích hợp sẵn (như
USART, PWM, ADC…), với bộ nhớ chương trình từ 512 Word đến 32K Word.
1.1.2. Một số đặc tính của Vi điềukhiển PIC
Hiện nay cĩ kh nhiều dịng PIC v cĩ rất nhiều khc biệt về phần cứng, nhưng chúng ta
có thể điểm qua một vài nét như sau :
8/16 bit CPU, xây dựng theo kiến truc Harvard có sửa đổi
Flash và ROM có thể tuỳ chọn từ 256 byte đến 256 Kbyte
Các cổng Xuất/ Nhập (I/ O ports) (mức logic thường từ 0V đến 5.5V, ứng với
logic 0 và logic 1)
8/16 bit Timer
Các chuẩn giao tiếp nối tiếp đồng bộ/ khung đồng bộ USART
Bộ chuyển đổi ADC Analog-to-digital converters, 10/12 bit
Bộ so sánh điện áp (Voltage Comparator)
Cc module Capture/ Compare/ PWM
LCD
MSSP Peripheral dựng cho cc giao tiếp I
2
C, SPI, I
2
S
Bộ nhớ nội EPROM – cĩ thể ghi/ xố lớn tới 1 triệu lần
Module Điềukhiển động cơ, đọc encoder
Hỗ trợ giao tiếp USB
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 7
Hỗ trợ giao tiếp CAN
Hỗ trợ giao tiếp LIN
Hỗ trợ giao tiếp IrDA
Một số dịng cĩ tích hợp bộ RF (PIC16f639, v rfPIC)
KEELOQ mờ hố v giải mờ
DSP những tính năng xử lý tín hiệu số (dsPIC)
Đặc điểm thực thi tốc độ cao của RISC CPU của họ vi diềukhiển PIC16F87XA :
Chỉ gồm 35 lệnh đơn.
Tất cả các lệnh là 1chu kỳ ngoại trừ chương trình con l 2 chu kỳ.
Tốc độ hoạt động :
*DC- 20MHz ng vo xung clock.
*DC- 200ns chu kỳ lệnh.
Độ rộng của bộ nhớ chương trình Flash l 8K x 14word, của bộ nhớ dữ liệu (RAM)
l 368 x 8bytes, của bộ nhớ dữ liệu l EPROM (RAM) l 256 x 8bytes.
1.1.3. Những đặc tính ngoại vi
- Timer0 : 8- bit định thời/ đếm với 8- bit prescaler
- Timer1 : 16- bit định thời/ đếm với prescaler, có thể được tăng lên trong suốt chế
độ Sleep qua thạch anh/ xung clock bn ngồi.
- Timer2 : 8- bit định thời/đếm với 8- bit, prescaler và postscaler
- Hai module Capture, Compare, PWM
* Capture có độ rộng 16 bit, độ phân giải 12.5ns
* Compare có độ rộng 16 bit, độ phân giải 200ns
* Độ phân giải lớn nhất của PWM là 10bit.
- Cĩ 13 ng I/O cĩ thể điềukhiển trực tiếp
- Dịng vo v dịng ra lớn :
* 25mA dịng vo cho mỗi chn
* 20mA dịng ra cho mỗi chn
1.1.4. Đặc điểm về tương tự
- 10 bit, với 8 kênh của bộ chuyển đổi tương tự sang số (A/D).
- Brown – out Reset (BOR).
- Module so sánh về tương tự.
* Hai bộ so sánh tương tự.
* Module điện áp chuẩn VREF có thể lập trình trn PIC.
- Cĩ thể lập trình ng ra vo đến từ những ng vo của PIC v trn điện áp bên trong.
- Những ng ra của bộ so snh cĩ thể sử dụng cho bn ngồi.
1.1.5. Các đặc điểm đặc biệt :
- Có thể ghi/ xoá 100.000 lần với kiểu bộ nhớ chương trình Enhanced Flash.
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 8
- 1.000.000 ghi/ xố với kiểu bộ nhớ EPROM.
- EPROM có thể lưu trữ dữ liệu hơn 40 năm.
- Cĩ thể tự lập trình lại dưới sự điềukhiển của phần mềm.
- Mạch lập trình nối tiếp qua 2 chn.
- Nguồn đơn 5V cấp cho mạch lập trình nối tiếp.
- Watchdog Timer (WDT) với bộ dao động RC tích hợp sẵn trên Chip cho hoạt
động đáng tin cậy.
- Cĩ thể lập trình mờ bảo vệ.
- Tiết kiệm năng lượng với chế độ Sleep.
- Cĩ thể lựa chọn bộ dao động.
- Mạch dở sai (ICD : In- Circuit Debug) qua 2 chn
1.1.6. Cơng nghệ CMOS
Năng lượng thấp, tốc độ cao Flash/ công nghệ EPROM
Việc thiết kế hồn tồn tĩnh
Khoảng điện áp hoạt động từ 2V đến 5.5V
Tiêu tốn năng lượng thấp.
1.2. Giới thiệu về PIC16F8XX v PIC16F877A
PIC16F8X là nhóm PIC trong họ PIC16XX của họ Vi điềukhiển 8-bit, tiêu hao
năng lượng thấp, đáp ứng nhanh, chế tạo theo công nghệ CMOS, chống tĩnh điện tuyệt
đối. Nhóm bao gồm các thiết bị sau:
PIC16F83
PIC16CR83
PIC16F84
PIC16CR84
- Tất cả các PIC16/17 đều có cấu trúc RISC. PIC16CXX các đặc tính nổi bậc, 8
mức ngăn xếp Stack, nhiều nguồn ngắt tích hợp bên trong lẫn ngoài. Có cấu trúc
Havard với các bus dữ liệu và bus thực thi chương trình ring biệt nhau cho php độ
dài 1 lệnh là 14-bit và bus dữ liệu 8-bit cách biệt nhau. Tất cả các lệnh đều mất 1
chu kỳ lệnh ngoại trừ các lệnh rẽ nhánh chương trình mất 2 chu kỳ lệnh. Chỉ cĩ 35
lệnh v 1 lượng lớn các thanh ghi cho phép đáp ứng cao trong ứng dụng.
- Họ PIC16F8X có nhiều tính năng đặc biệt lm giảm thiểu cc thiết bị ngoại vi, vì
vậy kinh tế cao, cĩ hệ thống nổi bật đáng tin cậy và sự tiêu thụ năng lượng thấp. Ở
đây có 4 sự lựa chọn bộ dao dộng và chỉ có 1 chân kết nối bộ dao động RC nên có
giải pháp tiết kiệm cao. Chế độ SLEEP tiết kiệm nguồn và có thể được đánh thức
bởi các nguồn reset. Và cịn nhiều phần khc đó được giới thiệu bên trên sẽ được
nói r ở cc phần kế tiếp.
- PIC16F877A có 40/44 chân với sự phân chia cấu trúc như sau :
+ Cĩ 5 port xuất/nhập
+ Có 8 kênh chuyển đổi A/D 10-bit
+ Có bộ nhớ gấp đôi so với PIC16F873A và PIC16F874A2.2.1. Tổ chức thanh ghi
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 9
Bảng 1.1: Tóm tắt đặc điểm của PIC16F877A
Tần số hoạt động DC-20MHz
Reset v Delay POR, BOR (PWRT, OST)
Bộ nhớ chương trình Flash
(14-bit word)
8K
Bộ nhớ dữ liệu (byte) 368
Bộ nhớ dữ liệu EEPROM (byte) 256
Cc ngắt 15
Cc Port xuất/nhập Port A, B, C, D, E
Timer 3
Module Capture/Compare/PWM 2
Giao tiếp nối tiếp MSSP, USART
Giao tiếp song song PSP
Module A/D 10-bit 8 knh ng vo
Bộ so sánh tương tự 2
Tập lệnh 35 lệnh
Số chn 40 chn PDIP
44 chn PLCC
44 chn TQFP
44 chn QFN
1.3. Sơ đồ chân ,cấu trúc và chức năng PIC 16F877A loại 40 chân PDIP
Hình 1.1: Sơ đồ chân Pic 16F877A loại 40 chân PDIP
Chức năng các chân :
* Chn OSC1/CLKI (13) : ng vo dao động thạch anh hoặc xung clock bn ngồi.
- OSC1 : ng vo dao động thạch anh hoặc xung clock bên ngoài. Ng vo Schmit
trigger khi được cấu tạo ở chế độ RC ; một cách khác của CMOS.
Đồ án chuyên ngành GVHD : Nguyễn Trọng Khanh
Trang 10
- CLKI : ng vo nguồn xung bn ngồi. Luơn được kết hợp với chức năng OSC1.
* Chn OSC2/CLKO (13) : ng vo dao động thạch anh hoặc xung clock
- OSC2 : Ng ra dao động thạch anh. Kết nối đến thạch anh hoặc bộ cộng
hưởng.
- CLKO : ở chế độ RC, ng ra của OSC2, bằng tần số của OSC1 v chỉ ra tốc độ
của chu kỳ lệnh.
* Chn /V
PP
(1) :
- MCLR : Hoạt động Reset ở mức thấp
- V
PP
: ng vo p lập trình
* Chn RA0/AN0 (2) :
- RA0 : xuất/nhập số
- AN0 : ng vo tương tự 0
* Chn RA1/NA1 (3) :
- RA1 : xuất/nhập số
- AN1 : ng vo tương tự 1
* Chn RA2/NA2/V
REF-
/CV
REF
(4) :
- RA2 : xuất/nhập số
- AN2 : ng vo tương tự 2
- V
REF -:
ng
vào điện áp chuẩn (thấp) của bộ A/D
- CV
REF
: điện áp tham chiếu V
REF
ng ra bộ so sỏnh
* Chn RA3/NA3/V
REF+
(5) :
- RA3 : xuất/nhập số
- AN3 : ng vo tương tự 3
- V
REF+
: ng vo điện áp chuẩn (cao) của bộ A/D
* Chn RA4/TOCKI/C1OUT (6) :
- RA4 : xuất/nhập số - mở khi được cấu tạo như ng ra
- TOCKI : ng vo xung clock bn ngồi cho Timer 0
- C1 OUT : Ng ra bộ so snh 1
* Chn RA5/AN4/ /C2OUT (7) :
- RA5 : xuất/nhập số
- AN4 : ng vo tương tự 4
- SS : ng vo chọn lựa SPI phụ
- C2 OUT : ng ra bộ so snh 2
* RB0/INT (33) :
- RB0 : xuất/nhập số
[...]... vi điềukhiển dùng để tương tác với thế giới bên ngoài Sự tương tác này rất đa dạng và thông qua quá trình tương tác đó, chức năng của vi điềukhiển được thể hiện một cách rõ ràng Một cổng xuất nhập của vi điềukhiển bao gồm nhiều chân (I/O pin), tùy theo cách bố trí và chức năng của vi điềukhiển mà số lượng cổng xuất nhập và số lượng chân trong mỗi cổng có thể khác nhau Bên cạnh đó, do vi điều khiển. .. đếm khi vi điềukhiển đang ở chế độ sleep và ngắt do Timer1 tạo ra khi bị tràn có khả năng “đánh thức” vi điềukhiển Ở chế độ đếm bất đồng bộ, Timer1 không thể được sử dụng để làm nguồn xung clock cho khối CCP (Capture/Compare/Pulse width modulation) Khi =0 xung đếm vào Timer1 sẽ được đồng bộ hóa với xung clock bên trong Ở chế độ này Timer1 sẽ không hoạt động khi vi điềukhiển đang ở chế độ sleep Các... Timer1 và Timer2 đều có hai chế độ hoạt động là timer và counter Xung clock có tần số bằng ¼ tần số của oscillator Xung tác động lên Timer0 được hỗ trợ bởi prescaler và có thể được thiết lập ở nhiều chế độ khác nhau (tần số tác động, cạnh tác động) trong khi các thông số của xung tác động lên Timer1 là cố định Timer2 được hỗ trợ bởi hai bộ chia tần số prescaler và postcaler độc lập, tuy nhiên cạnh tác động... chương trình PC tự động được vi điềukhiển cất vào trong stack Khi một trong các lệnh RETURN, RETLW hat RETFIE được thực thi, giá trị PC sẽ tự động được lấy ra từ trong stack, vi điềukhiển sẽ thực hiện tiếp chương trình theo đúng qui trình định trước Bộ nhớ Stack trong vi điềukhiển PIC họ 16F87xA có khả năng chứa được 8 địa chỉ và hoạt động theo cơ chế xoay vòng Nghĩa là giá trị cất vào bộ nhớ Stack... bộ tạo điện áp so sánh này bao gồm: Thanh ghi CVRCON (địa chỉ 9Dh): thanh ghi trực tiếp điềukhiển bộ so sánh điện áp Thanh ghi CMCON (địa chỉ 9Ch): thanh ghi điềukhiển bộ Comparator II CẶP NHIỆT ĐIỆN Điều đầu tiên trong điều khiểnnhiệtđộ là chúng ta phải có được một thiết bị (cảm biến) cho phép đo được nhiệtđộ hiện tại Có rất nhiều loại khác nhau, phần trình by ở đây sẽ đề cập một số loại, đặc... tiết về các bit điềukhiển trên Các lệnh tác động lên giá trị thanh ghi TMR0 sẽ xóa chế độ hoạt động của prescaler Khi đối tượng tác động là Timer0, tác động lên giá trị thanh ghi TMR0 sẽ xóa prescaler nhưng không làm thay đổi đối tượng tác động của prescaler Khi đối tượng tác động là WDT, lệnh CLRWDT sẽ xóa prescaler, đồng thời prescaler sẽ ngưng tác vụ hỗ trợ cho WDT Các thanh ghi điềukhiển liên quan... 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ềukhiể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 Timer0 Thanh ghi INTCON (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho phép đọc và ghi, chứa các bit điều khiểnvà các bit cờ hiệu... nhiệt của nước đá trộn với muối (hay ammonium chloride) vì đây là nhiệtđộ thấp nhất thời đó Đầu trên của thiết bị được gán là 96 độ, đánh dấu nhiệtđộ của máu người Tại sao là 96 độ mà không phải là 100 độ? Câu trả lời là bởi vì người ta chia tỷ lệ theo 12 phần như các tỷ lệ khác thời đó Khoảng năm 1742, Anders Celsius đề xuất ý kiến lấy điểm tan của nước đá gán 0 độvà điểm sôi của nước gán 100 độ, ... chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điềukhiển hoạt động ở chế độ sleep Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler Hai bộ Capture/so sánh /điều chế độ rông xung Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điềukhiển RD, WR, ... oscillator) và chế độ đếm (counter) với xung kích là xung phản ánh các sự kiện cần đếm lấy từ bên ngoài thông qua chân RC0/T1OSO/T1CKI (cạnh tác động là cạnh lên) Việc lựa chọn xung tác động (tương ứng với việc lựa chọn chế độ hoạt động là timer hay counter) được điềukhiển bởi bit TMR1CS (T1CON) Sau đây là sơ đồ khối của Timer1: Ngoài ra Timer1 còn có chức năng reset input bên trong được điềukhiển bởi .
I. GIỚI THIỆU VỀ VI ĐIỀU KHIỂN PIC 16F877A
1.1. Giới thiệu chung
1.1.1 Tổng quan về họ Vi điều khiển PIC
PIC là một họ vi điều khiển RISC được sản xuất.
Trang 14
2 MỘT VÀI THÔNG SỐ VỀ VI ĐIỀU KHIỂN PIC16F877A
Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài
14 bit. Mỗi