1. Trang chủ
  2. » Luận Văn - Báo Cáo

đo nhiệt độ dùng cảm biến lm35 với pic16f877a dùng ngôn ngữ assembly

31 3,3K 30

Đ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 31
Dung lượng 1,29 MB

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

Nội dung

đo nhiệt độ dùng cảm biến lm35 với pic16f877a dùng ngôn ngữ assembly

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM

KHOA ĐiỆN – ĐiỆN TỬ

ĐỀ TÀI :

ĐO NHIỆT ĐỘ DÙNG CẢM BiẾN LM35 VỚI PIC 16F877A

DÙNG NGÔN NGỮ ASSEMBLY

BÁO CÁO VI XỬ LÍ 2

Trang 2

LƯU ĐỒ VÀ CHƯƠNG TRÌNH

LƯU ĐỒ VÀ CHƯƠNG TRÌNH

THANH GHI VÀ TRÌNH BIÊN DỊCH

THANH GHI VÀ TRÌNH BIÊN DỊCH

BỘ CHUYỂN ĐỔI ADC

BỘ CHUYỂN ĐỔI ADC

QUÁ TRÌNH HOẠT ĐỘNG

QUÁ TRÌNH HOẠT ĐỘNG TỔNG KẾT RÚT KINH

THÔNG TIN CHUNG

LỚP ĐiỆN TỬ ViỄN THÔNG _ĐẠI HỌC SƯ PHẠM KỸ THUẬT

TPHCM FORUM : MY.OPERA.COM/DTVT06

LỚP ĐiỆN TỬ ViỄN THÔNG _ĐẠI HỌC SƯ PHẠM KỸ THUẬT

TPHCM FORUM : MY.OPERA.COM/DTVT06

TRANG LIÊN KẾT

Trang 4

PHÂN CÔNG NHIỆM VỤ

Nhiệm vụ của từng thành viên :

 Phúc(trưởng nhóm): giới thiệu tổng quan về đề tài báo cáo , giới thiệu cấu trúc PIC 16F877A và cảm biến nhiệt LM35.

 Khả (TV): Giới thiệu sơ lược các thanh ghi cần dùng và một số cấu trúc lệnh quan trọng sử dụng trong chương trình.

 Hòa (TV): Trình bày sơ lược về bộ chuyển đổi ADC trong PIC

 Luân (TV): Trình bày nguyên lý mạch ứng dụng và mô phỏng hoạt động của mạch trên Proteus

 Nhân (TV): Giải thích lưu đồ và chương trình nạp cho PIC để điều khiển mạch

Trang 5

QUÁ TRÌNH HOẠT ĐỘNG

Giai đoạn đầu : thu thập tài liệu , nghiên cứu lý thuyết

Giai đoạn giữa : triển khai đề tài ,soạn thảo nội dung , viết báo cáo

Giai đoạn cuối : check lỗi , tập dược chuẩn bị cho mọi tình huống

Trang 6

Một số ứng dụng của PIC

A 1 A 2

ỨNG DỤNG

Trang 7

Một số đặc tính PIC

(programmable intelligent computer)

 Là CPU 8/16 bit xây dựng theo kiến trúc Havard có sửa đổi

 Có bộ nhớ Flash và Rom có thể tùy chọn 256byte đến 256Kbyte.

 Có các cổng xuất nhập (I/O ports)

 Có timer 8/16 bit

 Có các chuẩn giao tiếp nối tiếp đồng bộ /không đồng bộ

 Có hỗ trợ điều khiển Ethernet

 Có hỗ trợ giao tiếp CAN

Trang 8

Một số đặc tính PIC

(programmable intelligent computer)

 Các bộ chuyển đổi ADC 10/12 bit

 Có các bộ so sánh điện áp (Voltage comparators)

 Có các khối Capture /Compare/PWM

 Có hỗ trợ giao tiếp LCD

 Có MSSP peripheral dùng cho giao tiếp I2C ,SP

và I2S

 Có khối điều khiển động cơ và đọc encoder

 Có hỗ trợ giao tiếp USB

Trang 9

Một số đặc tính PIC

(programmable intelligent computer)

Đặc điểm thực thi tốc độ cao CPU RISC của họ VĐK PIC 16F87XA:

 Gồm 35 lệnh đơn

 Tất cả các lệnh là 1 chu kỳ ,chương trình con là 2 chu kỳ

 Tốc độ hoạt động DC - 20MHz ngõ vào xung clock DC - 200ns chu kì lệnh

 Dung lượng của bộ nhớ chương trình Flash 8Kx14 words

 Dung lượng của bộ nhớ dữ liệu RAM là 368x8bytes

 Dung lượng của bộ nhớ dữ liệu EEPROM 256x8bytes

Trang 10

Một số đặc tính PIC

(programmable intelligent computer)

  Các đặc tính về tương tự:

 Có 8 kênh chuyển đổi tín hiệu tương tự thành tín hiệu số 10 bit

 Có reset BOR (Brown – on reset )

 Khối so sánh điện áp tương tự

 Hai bộ so sánh tương tự

 Khối tạo điện áp chuẩn Vref tích hợp bên trong có thể lập trình

 Đa hợp ngõ vào lập trình từ ngõ vào của CPU với điện áp chuẩn bên trong

 Các ngõ ra của bộ so sánh có thể truy xuất từ bên ngoài

Trang 11

AN2:ngõ vào tương tự kênh thứ 2

Vref- : ngõ vào điện áp chuẩn thấp của bộ A/D

CVref:điện áp tham chiếu Vref ngõ ra bộ so sánh

(5) RA3 :xuất/ nhập số

(7)RA5: xuất/ nhập số

AN4:Ngõ vào tương tự kênh thứ 4

(8)AN5: Ngõ vào tương tự 5

(9)AN6: Ngõ vào tương tự 6

Trang 12

CẤU TRÚC PIC16F877A

Trang 14

Hoạt Động Chuyển Đổi Và Kết Nối LM35

 Hoạt động chuyển đổi :

 Chuyển đổi sang °C

 Mức chuyển đổi tuyến tính tương ứng 10mV/°C

Điện áp hoạt động từ 4  30V

Không tuyến tính ở mức ±¼°C

Trở kháng ngõ ra 0.1Ω đối với 10mA

Trang 15

Kết Nối LM35

Thang nhiệt độ cơ bản

Toàn thang nhiệt độ

Trang 16

Là các thanh ghi điều khiển các Port 2 chiều 8 bit

PortB,PortC,PortDKhi TRISx=1 thì Portx tương ứng là Port nhậpKhi TRISx=0 thì Portx tương ứng là Port xuất

Là thanh ghi chứa 8 bit thấp của thanh ghi bộ đếm chương trình PC Nội dung thanh ghi có thể đọc và ghi được

Là thanh ghi chứa 8 bit thấp của thanh ghi bộ đếm chương trình PC Nội dung thanh ghi có thể đọc và ghi được

Thanh ghi PCL (Program C ounter L east Significant Byte)

CÁC THANH GHI LIÊN QUAN

Thanh ghi PIR1

Thanh ghi ADCON1

Thanh ghi ADRESH & ADRESL

Và các thanh ghi TRISB, TRISC, TRISD

Thanh ghi PIE1

Thanh ghi trạng thái (Status Register)

Thanh ghi ADCON0

Trang 17

THANH GHI TRẠNG THÁI

Thanh ghi trạng thái (Status register) :

Có địa chỉ lần lượt là 03h, 83h,103h, 183h tại 4 bank thanh ghi

 TGTT chứa trạng thái của khối ALU, trạng thái reset và các bit chọn Bank

Trang 18

Thanh ghi PIE1 : Địa chỉ 8Ch

Là thanh ghi chứa các bit cho phép ngắt độc lập cho các ngắt ngoại vi

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

Bit 7: cho phép ngắt đọc/ghi ở port nhánh song song

1= cho phép ngắt PSP đọc/ghi 0= không cho phép ngắt PSP đọc/ghi

Bit 7: cho phép ngắt đọc/ghi ở port nhánh song song

1= cho phép ngắt PSP đọc/ghi 0= không cho phép ngắt PSP đọc/ghi

Bit 6: cho phép ngắt bộ chuyển đổi A/D

1= cho phép ngắt 0= không cho phép ngắt

Bit 6: cho phép ngắt bộ chuyển đổi A/D

1= cho phép ngắt 0= không cho phép ngắt

Bit 5: cho phép ngắt nhận dữ liệu USART

1= cho phép ngắt 0= không cho phép ngắt

Bit 5: cho phép ngắt nhận dữ liệu USART

1= cho phép ngắt 0= không cho phép ngắt

Bit 4: cho phép ngắt phát dữ liệu USART

1= cho phép ngắt 0= không cho phép ngắt

Bit 4: cho phép ngắt phát dữ liệu USART

1= cho phép ngắt 0= không cho phép ngắt

Bit 3: cho phép ngắt port nối tiếp đồng bộ

1= cho phép ngắt SSP 0= không cho phép ngắt SSP

Bit 3: cho phép ngắt port nối tiếp đồng bộ

1= cho phép ngắt SSP 0= không cho phép ngắt SSP

Bit 2: cho phép ngắt CCP1 1= cho phép ngắt CCP1 0= không cho phép ngắt CCP1

Bit 2: cho phép ngắt CCP1 1= cho phép ngắt CCP1 0= không cho phép ngắt CCP1

Bit 1: cho phép ngắt tương thích ứng TMR2 với PR2

1= cho phép ngắt 0= không cho phép ngắt

Bit 1: cho phép ngắt tương thích ứng TMR2 với PR2

1= cho phép ngắt 0= không cho phép ngắt

Bit 0: cho phép ngắt tràn TMR1 1= cho phép ngắt TMR1 tràn 0= không cho phép ngắt TMR1 tràn

Bit 0: cho phép ngắt tràn TMR1 1= cho phép ngắt TMR1 tràn 0= không cho phép ngắt TMR1 tràn

THANH GHI PIE1

Trang 19

Bit 5: cờ báo ngắt nhận USART 1= USART nhận xong 0= USART nhận chưa xong

Bit 5: cờ báo ngắt nhận USART 1= USART nhận xong 0= USART nhận chưa xong

Bit 4: cờ báo ngắt truyền USART 1= truyền đệm của USART còn trống 0= truyền đệm của USART đầy

Bit 4: cờ báo ngắt truyền USART 1= truyền đệm của USART còn trống 0= truyền đệm của USART đầy

Bit 3: cờ báo ngắt port nối tiếp đồng bộ SSP

Bit 2: cờ báo ngắt CCP1 Chế độ capture:

1= thanh ghi bắt nhịp TMR1 có xảy ra(xóa bằng phần mềm)

Bit 2: cờ báo ngắt CCP1

Chế độ capture:

1= thanh ghi bắt nhịp TMR1 có xảy ra(xóa bằng phần mềm)

Bit 1: cờ báo ngắt tương thích TMR2 với PR2 1= TMR2 tương thích với PR2(xóa bằng phần mềm)

Bit 1: cờ báo ngắt tương thích TMR2 với PR2 1= TMR2 tương thích với PR2(xóa bằng phần mềm)

Bit 0: Cờ báo ngắt tràn TMR1 1= thanh ghi TMR1 đã tràn 0= thanh ghi TMR1 không tràn

Bit 0: Cờ báo ngắt tràn TMR1 1= thanh ghi TMR1 đã tràn 0= thanh ghi TMR1 không tràn

Thanh ghi PIR1 : Địa chỉ 0Ch

Là thanh ghi chứa các bit cờ cho các ngắt ngoài

R/W-0 R/W-0 R-0 R-0 R/W-0 R/W-0 R/W-0 R/W-0

Bit 7: cờ báo ngắt port nhánh song song đọc/ghi 1= hoạt động đọc hoặc ghi được thực thi 0= hoạt động đọc hoặc ghi không xảy ra

Bit 7: cờ báo ngắt port nhánh song song đọc/ghi 1= hoạt động đọc hoặc ghi được thực thi 0= hoạt động đọc hoặc ghi không xảy ra

THANH GHI PIR1

Trang 20

Thanh ghi ADCON0(A/D Control Register 0) :

Bit mở nguồn cho ADC hoạt động1= chuyển đổi ADC được mở nguồn0= khối ADC được tắt nguồn để giảm công suất tiêu thụ

Bit báo trạng thái chuyển đổi ADC 1= Chuyển đổi ADC đang diễn ra 0= chuyển đổi ADC không diễn ra

Bit báo trạng thái chuyển đổi ADC 1= Chuyển đổi ADC đang diễn ra 0= chuyển đổi ADC không diễn ra

Các Bit lựa chọn kênh tương tự Các Bit lựa chọn xung chuyển đổi ADC

Trang 21

ADCS1 RP1 RP0 CHS1 CHS0 C

Thanh ghi ADCON1(A/D Control Register 1) :

Trang 22

THANH GHI ADRESH VÀ ADRESL

Lưu kết quả chuyển đổi ADC

Hai thanh ghi này không bị ảnh hưởng bởi RESET lúc cấp điện Khi đó, dữ liệu trong 2 thanh ghi là không xác định

Trang 23

KHỐI CHUYỂN ĐỔI A/D

Một số đặc điểm:

Trang 24

Lệnh Sleep Go=0

Hủy chuyển đổi Go=0 ADIF=1

Sleep tắt A/D

Sleep tắt A/D

Đ S

ADON=0

Đ

LƯU ĐỒ HOẠT ĐỘNG CHUYỂN ĐỔI A/D

Trang 25

THIẾT LẬP CHUYỂN ĐỔI A/D

Các bước thiết lập quá trình chuyển đổi ADC:

Bước 1: Thiết lập cấu hình ADC

 Định cấu hình cho các chân tương tự/điện áp chuẩn và xuất/nhập số (ADCON1).

 Chọn lựa kênh ngõ vào ADC (ADCON0)

 Chọn lựa xung clock cho chuyển đổi ADC (ADCON0).

 Mở điện cho ADC (ADCON0)

Bước 2: Thiết lập cấu hình ngắt ADC (nếu có)

 Xóa bit ADIF

 Set bit ADIE

 Set bit GIE

 Set bit PEIE

Bước 3: Chờ hết thời gian nhận giá trị thiết lập (2Tad) Bước 4: Bắt đầu chuyển đổi: set bit GO/DONE

Bước 5: Chờ chuyển đổi xong

 Kiểm tra liên tục bit GO/DONE về 0 hay chưa hoặc ADIF bằng 1 hay không.

 Chờ ngắt adc xảy ra

Bước 6: Đọc cặp thanh ghi kết quả (ADRESH:ADRESL).

Trang 26

VI ĐIỀU KHIỂN PIC

Phần cứng và mô phỏng

Trang 27

Trong khi đó LM35 cho ra điện áp là 10mV/độ C vậy khi LM35 thay đổi 1độ thì chuyển đổi ADC nhảy 4 bước.

 Vậy với cách chọn trên nên để xử lý kết quả chúng tôi dùng phương pháp canh lề trái và xử lý kết

ADRESH

Trang 28

Ý TƯỞNG

 Xử lý kết quả(KQ) lấy tại thanh ghi ADRESH:

1. Lấy KQ – 55 >= 0 là nhiệt độ không âm  hiện thị nhiệt độ , không xét đến led dấu.

2. Lấy KQ – 55 < 0 là nhiệt độ âm  ta hiển thị nhiệt độ kèm với led dấu

 Hiển thị kết quả đo được ra led 7 đoạn bằng phương pháp quét led và xóa số 0 vô nghĩa.

Trang 29

Đ

S

Adc<0 adc = adc - 55

Dau = 10111111B Adc = 0 - adc

Đếm = đếm - 1 Chục = đếm

Trang 30

CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF

& _CPD_OFF &_LVP_OFF

movlw b'00001101' ;khoi tao thanh ghi ADCON1

movwf ADCON1 ;canh le trai, 2 ngo in analog, Vref+=AN3,Vref-=AN2

bcf STATUS,RP0 ;chuyen den bank 0 den su dung thanh ghi ADCON0

movlw b'10000001' ;cap nguon chuyen doi ADC,fosc/32,in analog=AN0

btfsc ADCON0,2 ;bat dau chuyen doi ADC

goto godone ;cho chuyen ADC ket thuc

bsf STATUS,C ;doan chuong trinh kiem tra

movlw 55 ;nhiet do nhan vao la duong hay am

subwf adc,1

btfsc STATUS,C

goto chuyen_bcd ;neu nhiet do la duong

movlw b'10111111' ;neu nhiet do la am

Trang 31

36

TÓM TẮT

Nội dung đã ngiên cứu:

Các thanh ghi liên quan đến quá trình chuyển đổi ADC

Quy trình chuyển đổi ADC

Ngày đăng: 10/11/2014, 17:43

HÌNH ẢNH LIÊN QUAN

SƠ ĐỒ CHÂN - đo nhiệt độ dùng cảm biến lm35 với pic16f877a dùng ngôn ngữ assembly
SƠ ĐỒ CHÂN (Trang 11)
SƠ ĐỒ KHỐI - đo nhiệt độ dùng cảm biến lm35 với pic16f877a dùng ngôn ngữ assembly
SƠ ĐỒ KHỐI (Trang 26)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w