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

THIẾT KẾ CHẾ TẠO THIẾT BỊ ĐO VÀ LƯU DỮ LIỆU NHIỆT ĐỘ CỠ NHỎ

75 84 0

Đ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 75
Dung lượng 1,05 MB
File đính kèm Luan van tot nghiep.rar (1 MB)

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

Nội dung

Khóa luận đã xây dựng được thiết bị đo và lưu dữ liệu nhiệt độ trên cở sở dùng vi điều khiển PIC18F4550. Với ứng dụng cụ thể là thu thập dữ liệu nhiệt độ môi trường. Hệ thống được xây dựng dựa trên việc kết hợp nhiều khối thiết bị ngoại vi khác bao gồm khối thu thập nhiệt độ dùng cảm biến LM35,khối giao tiếp thẻ nhớ MMC lưu trữ tất cả dữ liệu và khối hiển thị dùng LCD 16 cột 2 dòng hiển thị cùng lúc 32 ký tự.

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH

KHÓA LUẬN TỐT NGHIỆP

THIẾT KẾ CHẾ TẠO THIẾT BỊ ĐO VÀ LƯU DỮ LIỆU NHIỆT

ĐỘ CỠ NHỎ

Họ và tên sinh viên: LÊ VĂN LUẬN Ngành: CƠ ĐIỆN TỬ

Niên khoá: 2009-2013

Trang 2

THIẾT KẾ CHẾ TẠO THIẾT BỊ ĐO VÀ LƯU DỮ LIỆU NHIỆT

ĐỘ CỠ NHỎ

Tác giả

LÊ VĂN LUẬN

Giáo viên hướng dẫn:

PGS.TS Nguyễn Văn Hùng

KS Nguyễn Trung Trực

Tháng 06 năm 2013

Trang 3

LỜI CẢM ƠN

Em xin trân trọng cám ơn tất cả quý Thầy, Cô trường Đại Học Nông Lâm Tp HồChí Minh và quý Thầy, Cô khoa Cơ khí – Công nghệ đã trang bị cho chúng em nhữngkiến thức quý báu trong quá trình học tập tại trường

Em xin chân thành cám ơn các Thầy, Cô bộ môn Cơ điện tử đã hướng dẫn, giúp

đỡ chúng em rất tận tình trong quá trình chúng em làm đề tài

Em cũng xin bày tỏ sự biết ơn chân thành tới thầy PGS.TS.Nguyễn Văn Hùng vàanh Nguyễn Trung Trực đã tận tình hướng dẫn chúng em trong quá trình làm Luận văntốt nghiệp

Đặc biệt, chúng em xin cám ơn quý Thầy, Cô trong Hội đồng đã dành thời giannhận xét, góp ý để Luận văn của chúng em được hoàn thiện hơn

Cuối cùng, chúng em xin gửi lời cám ơn đến những người thân cũng như bạn bè

đã động viên, ủng hộ và luôn tạo cho chúng em những điều kiện thuận lợi trong quátrình hoàn thành Luận văn tốt nghiệp

Thành phố Hồ Chí Minh, ngày 13 tháng 06 năm 2013

Sinh viên thực hiện

Lê Văn Luận

Trang 4

TÓM TẮT

Khóa luận đã xây dựng được thiết bị đo và lưu dữ liệu nhiệt độ trên cở sởdùng vi điều khiển PIC18F4550 Với ứng dụng cụ thể là thu thập dữ liệu nhiệt độmôi trường Hệ thống được xây dựng dựa trên việc kết hợp nhiều khối thiết bịngoại vi khác bao gồm khối thu thập nhiệt độ dùng cảm biến LM35,khối giao tiếpthẻ nhớ MMC lưu trữ tất cả dữ liệu và khối hiển thị dùng LCD 16 cột 2 dòng hiểnthị cùng lúc 32 ký tự

Trang 5

MỤC LỤC

DANH MỤC CÁC HÌNH

Trang 6

DANH MỤC CÁC BẢNG

Trang 8

Chương I

MỞ ĐẦU1.1 Đặt vấn đề

Ngày nay sự phát triển của ngành vi điện tử, kỹ thuật số và các hệ thống điều khiển đãđược tự động hóa Với những kỹ thuật tiên tiến như vi xử lý, vi mạch số được ứng dụng vàolĩnh vực điều khiển, thì các hệ thống điều khiển cơ khí thô sơ, với tốc độ xử lý chậm ít chínhxác được thay thế bằng hệ thống điều khiển tự động với các lệnh chương trình đã được thiếtlập trước

Trong quá trình sản xuất của nhà máy, xí nghiệp hiện nay việc đo, lưu dữ liệu vàkhống chế nhiệt độ tự động là hết sức cần thiết và quan trọng Vì nếu nắm bắt được yêu cầu

đo và lưu dữ liệu nhiệt độ tự động thì có nhiều phương pháp nghiên cứu khảo sát vi điềukhiển 16f, 18f Vì vậy em đã tiến hành nghiên cứu đề tài thiết kế chế tạo thiết bị đo và lưu

dữ liệu nhiệt độ dựa vào vi điều khiển 18f4550 để lập trình điều khiển

1.2 Mục đích đề tài

Thiết kế chế tạo thiết bị đo và lưu dữ liệu nhiệt độ cỡ nhỏ nhằm mục đích:

• Sử dụng cầm tay để đo nhiệt độ trong các môi trường khác nhau.( Với khoảng nhiệt

độ đo được từ (2÷ 1500C)

• Lưu trữ nhiệt độ để phục vụ cho các ứng dụng như : sấy, bảo quản lương thực thựcphẩm, kho vũ khí.( dữ liệu có thể lưu khoảng 512 MB hoặc nhiều hơn nữa tùy khảnăng lập trình và yêu cầu dung lượng sử dụng)

Chương II

Trang 9

TỔNG QUAN2.1 Tổng quan về hệ thống đo lường và điều khiển

Hệ thống đo lường và điều khiển là một hệ thống tập hợp các thiết bị kỹ thuật có cùngmột nhiệm vụ, cùng một thuật toán chức năng làm sao để thu nhập được thông tin, biến đổi

nó, gia công và chuyển thành một dạng mà con người có thể thu nhập được và đưa đến bộđiều khiển

Trang 10

Đối tượngnghiên cứu

Hình 2.1 Sơ đồ của một hệ thống đo lường và điều khiển.

Để có một hệ thống đo đạt hiệu quả và phù hợp với công việc thiết kế một mô hình

ban đầu rất quan trọng nó ảnh hưởng đến toàn bộ công việc sau này của chúng ta

Trang 11

Môi trường

SensorLM35

Vi điều khiển PIC

Hiển thị LCD

MMCLấy mẫu

Trong thực tế có nhiều mô hình cấu trúc như là mô hình nối tiếp, mô hình song song,

mô hình nối tiếp song song.v.v… Mỗi mô hình được ứng dụng trong trường hợp nhưng tùythuộc vào yêu cầu của công việc chúng ta phải lựa chọn một mô hình cho phù hợp

Yêu cầu về một hệ thống đo và thu thập thông tin trong công nghiệp là phải đạt độchính xác cao, khả năng đo được nhiều kênh, có thể kết nối nhiều thiết bị khác, lượng dữliệu lưu trữ được trong quá trình đo phải lớn để có thể đánh giá được sự biến đổi của đốitượng trong một thời gian dài từ đó đưa ra được những phương án điều khiển phù hợp

2.2 Hệ thống đo lường nhiệt độ

Hình 2.2 Sơ đồ hệ thống đo và lưu dữ nhiệt độ.

Khóa luận đã khảo sát đối tượng là nhiệt độ môi trường Một sensor nhiệt độ được sửdụng với mục đích cảm nhận Đầu ra là giá trị điện áp tùy thuộc vào sự biến đổi của đốitượng, được đưa vào biến đổi ADC chuyển thành giá trị số Tiếp tục vi điều khiển đảm nhậnlàm nhiệm vụ tính toán và xử lý, kết quả của quá trình này được hiển thị thông qua LCD đểquan sát, đồng thời lưu dữ liệu thu được vào thẻ nhớ

Trang 12

Trong khóa luận này đã ứng dụng thêm mạch giao tiếp với thẻ nhớ MMC qua đó ta cóthể lưu trữ nhiều giá trị nhiệt độ đo được mà ít quan tâm đến việc đầy bộ nhớ như việc ghépnối các EPROM truyền thống Thêm một lợi điểm nữa của việc dùng thẻ nhớ là ta có thểtháo lắp và đọc các giá trị đã ghi được một cách rất dễ dàng

2.3 Tổng quan về vi điều khiển PIC

Hiện nay trên thị trường có rất nhiều họ vi điều khiển 8051, Motorola 64HC, ARM,AVR, … Ngoài con 8051 được hướng dẫn căn bản ở môi trường đại học, bản thân em đãchọn họ vi điều khiển PIC để mở rộng vốn kiến thức và phát triển các ứng dụng trên công

cụ này vì các nguyên nhân sau:

 Họ vi điều khiển này có thể tìm mua dễ dàng ở thị trường Việt Nam

 Giá thành không quá đắt

 Có đầy đủ các tính năng của một vi điều khiển khi hoạt động độc lập

 Là một sự bổ sung rất tốt về kiến thức cũng như về ứng dụng cho họ vi điều khiểnmang tính truyền thống (họ vi điều khiển 8051)

Hiện nay tại Việt Nam cũng như trên thế giới, họ vi điều khiển PIC được sử dụng rấtrộng rãi Điều này tạo nhiều thuận lợi trong quá trình tìm hiểu và phát triển các ứng dụngnhư: số lượng tài liệu, số lượng các ứng dụng mở đã được phát triển thành công, dễ dàngtrao đổi, học tập, dễ dàng tìm hiểu được những chỉ dẫn khi gặp khó khăn

Sự hổ trợ của nhà sản xuất về trình biên dịch, công cụ lập trình, nạp chương trình từđơn giản đến phức tạp

Các tính năng đa dạng của họ vi điều khiển PIC, và các tính năng này không ngừngđược phát triển

Vi điều khiển PIC 18f4550:

PIC18F4550 là một vi xử lý cơ bản đa chức năng và rẻ Nó là sản phẩm của họ vi xử

lý PIC thông dụng của công ty Microchip của Mỹ có trụ sở đặt tại Chandler, Arizona (Mỹ)

Trang 13

Hình 2.3 Ảnh PIC18F4550

Điểm riêng biệt của vi xử lý PIC18F4550, nó là một trong những PIC hỗ trợ toàn thểcho USB, nghĩa là có USB gắn trong có sẵn các chân đầu ra để nối trực tiếp với máy tính

mà không cần mạch kéo hay bất cứ mạch gắn ngoài nào khác

Hình 2.4 Giao tiếp USB

Trang 14

Hỗ trợ tinh thể và dao động ký nhiều tần số như đầu vào và bộ cân bằng nên bộ xử lý

có thể hoạt động với tần số 48 MHz của dao động ký độc lập khi kết nối Khi kết thúc hoạtđộng thì chỉnh dao động ký được kết nối (thông qua các bit cấu hình) Làm việc với tốc độ

48 MHz là điều kiện tiên quyết để chuyển sang chế độ toàn tốc nhờ cổng USB Vì vậy,driver USB chuyển sang chế độ toàn tốc (1.5 Mb/s) qua USB và tương thích với chuẩn USB2.0 Nó cũng có 35 chân vào/ra số chung (xem sơ đồ chân ở phần dưới) và có sẵn vỏ bọcgồm DIP-40 nên rất thuận tiện cho nhà phát triển và những người nghiệp dư quan tâm.Với bộ nhớ, có 32kb Flash lưu trữ chương trình, 2kb bộ nhớ SRAM bay hơi và 256byte EEPROM (bộ nhớ không bay hơi) để lưu trữ dài hạn dữ liệu như cấu hình

Các chỉ thị dài 1 byte với một số ngoại lệ dài 2 byte (CALL, MOVFF, GOTO LSFR)

Sử dụng cơ chế đường ống để thực thi mã bằng việc khiến các chỉ thị liên tiếp hoạt độngtrong 4 xung (độ dài xung) và có 4 lần nhảy xung được thêm vào

Các đặc tính đáng chú ý khác là có đồng hồ, ngắt (đồng hồ gắn trong và gắn ngoài) vớihai mức ưu tiên và dùng cả hai mức như bộ so sánh tương tự kèm theo với bộ phát điện thếchuẩn có 16 mức (hữu ích khi dùng trigger ở mức phần cứng)

2.3.1 Sơ đồ chân

Sau đây là sơ đồ chân của PIC18F4550 trong hộp DIP-40

Đặc biệt, có thể nhận ra chân D- và D+ từ kết nối USB (chân 23 và 24)

Trang 15

Hình 2.5 Sơ đồ chân của PIC18F4550 trong hộp DIP-40

Pic 18f4550 có 40 chân, 4 port thường dùng trong các mạch làm hàn tay và dùng học tậptrong trường đại học

Trang 16

Hình 2.6 là sơ đồ chân pic 18f4550 loại chip dán, dùng nhiều trong công nghệ hiệnđại, loại chip này có 44 chân, nhỏ hơn chip thường dùng nhiều trong các mạch làm bằng

máy (Công dụng của từng chân ở hình 2.5 và hình 2.6 được mô tả ở bảng 6.1 của phụ lục

 Các đơn vị CCS ICD làm việc tốt với phần mềm điều khiển PCW hay CCS độc lậpvới ICD CCS Debug PCW là quan trọng và tích hợp với bộ biên dịch PCW, PCWH

và cung cấp thông tin phát sinh lỗi được viết chi tiết bằng C Phần mềm cho phép cácchương trình điều khiển độc lập nhanh chóng tác động vào ICSP chính nhờ ICD.Phần mềm điều khiển cũng cho phép bạn cập nhật các hỗ trợ mà không thay đổi vềmặt logic đối tượng ICD, không phải bỏ đi chip của đơn vị ICD (Dùng các công cụphần mềm này đòi hỏi phải nạp cho đơn vị CCS ICD không thay đổi logic phươngtiện trên ICD, được tải theo mặc định) Phần mềm điều khiển từ đơn vị ICD và chophép thiết lập các phần Flash được hỗ trợ Để giúp loại bỏ lỗi, chức năng của PCWhay PCWH là debug và tích hợp IDE

 ICD-S40 đã thay thế ICD-S20 và DCI 4 MHz Hãy chú ý, ICD-S40 và ICD-U40 chỉlàm việc với phần mềm và không dùng MPLAB IDE CCS ICD nguyên bản CCS 40MHz làm việc với MPLAB IDE 5.xx

 Cần phải cấp nguồn 3V cho ICD-U40 ICD-S40 không hỗ trợ 3V CCS cung cấp haigiải pháp cho ICD

2.3.3 Đơn vị ICD-U40

Trang 17

Đơn vị ICD nối với máy tính và phần mềm Debug trên USB Nó hoạt động với tần sốxung 40 MHz nên thời gian debug nhanh hơn (có cả cáp USB) Đơn vị được cấp nguồnICD-U40 USB Bộ nguồn cũng cấp nguồn 5V để nối “cầu” gần ICD trong đơn vị (đơn vịphải được bật).

444

Hình 2.7 Đơn vị ICD-U40

Sơ đồ hai ứng dụng được trình bày dưới đây:

Thông tin relay:

Hình 2.8 Thông tin relay

Phần này dùng để kết nối với ICD của MPLAB để connector J2 có thể lập trình lạicũng như chiếu sáng và gỡ bỏ thiết bị, với loại kết nối này thì không cần card CIP DEMOUSB FS của Microchip và có giá thành cao

Trang 18

Đây là cách sử dụng ứng dụng thứ hai:

Hình 2.9 Thông Tin relay

Cần phải nói rằng connector ICD đã thay đổi, không còn là cáp 5 connector nữa mà đãchuyển thành cáp 6 connector, đó là do việc phát triển project gặp khó khăn khi dùng ICD,

nó hầu như không thể bị ảnh hưởng hay debug nhiều lần, đây là lý do chính mà thay đổi làICD có cấu hình như trên, tuỳ chọn thay đổi đầu vào tương tự và máy chỉ thị thể hiện cótruyền thông giữa thiết bị và host

2.3.4 Tiêu Thụ Năng Lượng

Để quyết định xem có cần cấp nguồn ngoài (hay đơn giản là cấp nguồn qua cổngUSB)

Do cổng USB có thể cấp dòng 500 mA nên phải dùng nguồn từ ngoài để cấp nguồn Tadùng bộ điều chỉnh 7805 và chọn nguồn 9VDC vì đó là điện thế tối thiểu cần để 7805 hoạtđộng được (và để tản nhiệt) và có thể thay bằng pin 9V nếu cần

2.3.5 FIRMWARE

Trang 19

Thực hiện truyền thông USB

2 ví dụ được phát triển để thực hiện truyền thông qua USB:

 Cung cấp host thông tin (máy tính) cho thiết bị (vi điều khiển) và thông tin relay từthiết bị (vi điều khiển) cho host (máy tính)

 Quản lý các đầu vào và đầu ra số cũng như các đầu vào tương tự (bộ chuyển đổitương tự - số)

2.3.6 Các công cụ làm việc

Firmware là chương trình chạy trong CIP và điều khiển truyền thông Nó được viếthoàn toàn bằng C dùng MPLAB C18 của Microchip, một bộ biên dịch C của cùng nhà sảnxuất hỗ trợ chuẩn PKI ANSI C’89 và được thiết kế cùng MPLAB IDE (là công cụ để lậptrình và debug CIP) Một đặc tính khác của MPLAB C18 là khả năng sinh ra giá trị nhị phân

do vi điều khiển quản lý

Họ PIC18F (ví dụ PIC18F4550) dùng chỉ thị mở rộng như một kiến trúc

.3.7 Thiết bị lớp

Theo chuẩn thì có nhiều loại thiết bị USB với các đặc tính khác nhau thường thấytrong thiết bị Ví dụ, có lớp cho camera số, một lớp cho máy scan, một cho máy in … Cáclớp thiết bị được xây dựng để nâng cao tính tương thích của các thiết bị Vì vậy, bất cứ hệđiều hành nào có driver làm việc với camera số đều có thể đọc được ảnh từ camera số đượcthiết kế phù hợp với các thông số kỹ thuật của loại thiết bị đó

Đặc biệt với ứng dụng của chúng ta, ta chọn sử dụng loại thiết bị HID (thiết bị giaodiện người dùng), về cơ bản là một kết nối tương tự với chuột hay bàn phím Lý do ta chọnlớp này là do lượng lớn thông tin tại Microchip và kinh nghiệm có được từ các đối tượngkhác sử dụng loại driver này, ngoài ra nếu ta cần tạo một driver thì ta sẽ dẫn đến trang này

từ Microchip

2.3.8 Firmware HID

Truyền thông được thực hiện qua sự hỗ trợ của firmware USB HID, một nền cung cấpyêu cầu của Microchip để thiết lập truyển thông (qua cổng USB) một cách đơn giản

Trang 20

2.3.9 Một số đặc tính:

Chuyên nghiệp: miễn phí, dễ sử dụng

Nhược điểm: tốc độ truyền dữ liệu nhỏ (giới hạn tới 64 kbyte/giây)

Ứng dụng điều khiển bộ đệm để phân biệt các báo cáo nhận qua việc ngắt truyền thông

và báo cáo ngắt nhận qua điều khiển truyền thông

Ứng dụng cũng điều khiển bộ đệm để phân biệt các thông báo nhận đầu vào qua việctruyền đầu vào ngắt và các báo cáo nhận qua việc truyền điều khiển

Nhận các báo cáo đưa đến bằng cách điều khiển truyền thông và gửi lại một báo cáo đến host trong một thông báo đưa đến nhờ điều khiển truyền thông

Một bộ đệm đơn giữ các bản báo cáo được lưu trữ và báo cáo nhận được đã gửi

Việc thực hiện là sử dụng chuột thử nghiệm từ Microchip

Project được kiểm tra trong bảng thể hiện PICDEM FS USB

2.3.11 Driver

Chuẩn yêu cầu tất cả các thiết bị USB trong giai đoạn thương lượng phải được xácđịnh với ID nhà sản xuất và ID sản phẩm (sau đây gọi là VID và PID) Cặp giá trị này giúpnhận biết nhà sản xuất thiết bị (PRI) và mẫu riêng của một sản phẩm được kết nối Vì vậy,các mẫu khác của cùng sản phẩm nói chung khác PID

Trang 21

Mục đích chính của các giá trị này không chỉ là xác định thiết bị mà còn là tìm và tảiđúng driver cho nó Vì vậy, tất cả các driver của Windows (hay các sản phẩm tương tự)được sắp xếp như thiết bị với một hay nhiều PID và PRI sử dụng cho driver đã nói Đây làcách sử dụng Windows (hay hệ điều hành khác đang đề cập) dù driver được chọn có đúnghay không.

Trong trường hợp driver dùng cho hệ điều hành khác, cặp VID/PID đủ để xác địnhdriver nếu cần tải và vì vậy khi một thiết bị gắn với VID/PID thì nhận biết được hệ thống tựđộng tìm ra và cho phép sử dụng ngay Tuy nhiên, nếu không nhận ra VID/PID thì hệ điềuhành sẽ hỏi người dùng cấp driver

2.3.12 Mô tả thực hiện Firmware thứ hai

Ứng dụng thứ hai là sự trợ giúp lớn và kinh nghiệm lớn để hiểu USB, theo sự pháttriển của ứng dụng trước đây áp dụng vào các điểm khác để phát triển và thực hiện cho thựcthi này và firmware được dùng cho các công cụ làm việc khác này, được mô tả ở chươngtrước, tiếp cận đang sử dụng là mã hoạt động:

# Include <18F4550.h>

# Fuses HSPLL, NOWDT, NOPROTECT, NOLVP, NODEBUG, USBDIV, PLL5,CPUDIV1, VREGEN

# Use delay (clock = 48000000)

# Define USB_EP1_TX_ENABLE USB_ENABLE_INTERRUPT

Trang 22

Đây là phần header cần thiết để thiết lập truyền thông với ICD và có thể tạo HID lớpứng dụng, phần đầu usb_desc_hid.h thực hiện việc này

Ứng dụng dùng 5 đầu vào tương tự sau đây cần cấu hình CIP để làm việc với thuỷ tinh cótốc độ 20 MHz cho tốc độ 48 MHZ:

Phát triển lập trình tại host được thực hiện bằng Microsoft Visual ++, logic của chươngtrình, tương tự như ứng dụng trước

Sau đây là cấu trúc chương trình trong ứng dụng này:

Usb_Ej_1.dsp

File (file project) này chứa thông tin về cấp project và được dùng để xây dựng projectđơn hay project con Người dùng ngoài có thể chia sẻ file project (.dsp) nhưng không đượcxuất file khởi tạo nội bộ

Trang 23

File này chứa thông tin để ClassWizard sử dụng khi phác thảo các lớp hay thêm lớpmới ClassWizard cũng dùng file này để chứa thông tin cần thiết để tạo, soạn danh sách cácthông điệp, trình bày dữ liệu cho hội thoại và tạo tác vụ như thành phần nguyên bản

Res \ Usb_Ej_1.ico

Đây là icon của file dùng cho icon ứng dụng Icon này có trong file tài nguyên chínhUsb_Ej_1.rc

Res \ Usb_Ej_1.rc2

File này chứa tài nguyên không được viết bằng Microsoft Visual C++ Bạn nên đặt tất

cả các tài nguyên không được chỉnh sửa bời bảng phác thảo tài nguyên vào file này

UsbHidApi.lib

File này cung cấp thông báo về chương trình với DLL cùng tên

Giao diện được phát triển hỗ trợ truyền thông USB điều khiển ba kiểu truyền dữ liệulà: đầu ra số, đầu vào số và đầu vào tương tự - số

Trang 24

Hình 2.10 Giao diện được phát triển hỗ trợ truyền thông USB 2.4 Cảm biến nhiệt độ và vi mạch LM35

2.4.1 Nhiệt độ và ý nghĩa của đo nhiệt độ

Nhiệt độ là một tham số vật lý quan trọng, thường hay gặp trong kỹ thuật, côngnghiệp, nông nghiệp và trong đời sống sinh hoạt hằng ngày Nó là tham số có liên quan đếntính chất của rất nhiều vật chất, thể hiện hiệu suất của các máy nhiệt và là nhân tố trọng yếuảnh hưởng đến sự truyền nhiệt Vì lẽ đó mà trong các nhà máy, trong hệ thống nhiệt đềuphải dùng nhiều dụng cụ đo nhiệt độ khác nhau Chất lượng và số lượng sản phẩm sản xuấtđều có liên quan đến nhiệt độ, nhiều trường hợp phải đo nhiệt độ để đảm bảo cho nhu cầuthiết bị và cho quá trình sản xuất Hiện nay yêu cầu đo chính xác nhiệt độ từ xa cũng là yêucầu có ý nghĩa đối với sản xuất và nghiên cứu khoa học

2.4.2 Cảm biến nhiệt độ LM35

Trong đề tài này ứng dụng cụ thể một loại sensor để khảo sát nhiệt độ môi trường.LM35 được chọn cho mục đích này

Trang 25

Hình 2.11 Sơ đồ chân của cảm biến LM35.

Hình 2.13 là sơ đồ chân của cảm biến LM35, loại cảm biến này có 3 chân gồm : Vout (chânra), VS( chân nguồn) , GND(nối đất)

Một số đặc tính của LM35 có thể chỉ ra như sau:

• Chuẩn đo được lấy trực tiếp theo thang bách phân oC

• Tuyến tính với độ thay đổi 10mV/0C

Nó được phát triển để tạo ra những thiết bị lưu trữ rẻ và có dung lượng trung bình, ứng dụngcho các phương tiện giải trí đa phương tiện

Trang 26

Hình 2.12 Sơ đồ cấu trúc của MMC.

Hình 2.13 Hình ảnh thực tế của MMC và RS-MMC.

Hình 2.12 và hình 2.13 cho thấy MMC có 7 chân được mô tả ở các chuẩn như sau:

Trang 27

3 Vss S Nguồn (Đất)

S: power supply; I: input; O: output; PP: push-pull; OD: open-drain; NC: not connected.

Bảng 2.1: Các chân trong chuẩn MultiMedia card

Các chân trong chuẩn SPI được định nghĩa như bảng sau:

Bảng 2.2 Các chân trong chuẩn SPI 2.5.1 Chuẩn giao tiếp của MMC

MultiMediaCards có thể hoạt động trong hai loại chuẩn khác nhau như sau:

 MultiMedia card Mode

 SPI Mode

Cả hai cách chuẩn (mode) sử dụng các chân giống nhau Mặc định khi ghép nối làmode MultiMediaCard, SPI mode chỉ được lựa chọn khi kích hoạt chân CS và gửi điCMD0

2.5.1.1 MultiMediaCard Mode

Trong chuẩn MultiMedia card dữ liệu được truyền trên số đường dây nhỏ nhất Trongtrường hợp này dữ liệu là lệnh sẽ được truyền trên một đường dây riêng, còn dữ liệu trênmột dây riêng

Trang 28

 CLK: với mỗi chu kỳ của tín hiệu này 1bit lệnh và dữ liệu sẽ được truyền trên đườngdây Tần số có thể thay đổi từ 0 đến 20Mhz.

 CMD: là kênh truyền lệnh 2 hướng sử dụng cho việc khởi tạo card và truyền dữ liệu

là lệnh Những lệnh được gửi đi từ bus master tới MultiMedia card và đáp ứng ngượctrở lại cũng chạy trên đường này

 DAT: cũng là một kênh song hướng dùng để truyền dữ liệu

 RSV: chân này được kéo lên nguồn với điện trở 2MΩ

Hình 2.14 Sơ đồ ghép nối MMC với host với MultiMediaCard mode

Trang 29

2.5.1.2 SPI Mode

SPI (Serial Peripheral Interface) là giao tiếp nối tiếp đồng bộ được biết đến đầu tiên ởcác vi điều khiển của hãng Motorola Các thẻ nhớ MMC trên thị trường đều tương thích vớichuẩn SPI này Giống như các thiết bị khác sử dụng chuẩn này, ghép nối của MMC như sau:

 CS: tín hiệu lựa chọn chip (chip select) tới thẻ

 CLK: tín hiệu xung nhịp (clock) tới thẻ

 DataIn: tín hiệu dữ liệu truyền tới thẻ

 DataOut: tín hiệu dữ liệu đọc từ thẻ

Đặc tính chung của chuẩn SPI là truyền dữ liệu theo byte và thẻ nhớ cũng không phải làmột ngoại lệ Tất cả dữ liệu được biểu diễn thành những byte có độ dài 8 bit và được đồng

bộ theo tín hiệu CS

Các chân trong chuẩn SPI được định nghĩa như bảng sau:

Bảng 2.3 Các chân trong chuẩn SPI

2.5.2 Đặc tính của MMC trong chuẩn SPI

SPI mode được lựa chọn cho ứng dụng của đề tài, khi đó MMC được ghép nối với vi điềukhiển cụ thể là PIC18F4550 theo đúng khối phần cứng được tích hợp sẵn trên PIC

Trang 30

Trong mode hoạt động này có 4 loại tín hiệu được sử dụng giao tiếp với host (PIC) là:clock, data in, data out, chip select.

 Clock : được dùng để duy trì sự đồng bộ giữa hệ thống và card

 Data in: sử dụng khi truyền lệnh từ host tới thẻ, đồng thời cũng được dùng vào mụcđích ghi dữ liệu vào thẻ

 Data out: được dùng với mục đích ngược với data in là gửi đáp ứng từ thẻ về host vàđọc dữ liệu từ thẻ

 Chip select: tín hiệu một thẻ cụ thể sẽ được lựa chọn khi tín hiệu này kích hoạt trênnó

Dưới đây sẽ là hình ảnh minh họa quá trình truyền nhận dữ liệu giữa vi điều khiển PICvới thẻ MMC sử dụng chuẩn SPI

Hình 2.15 Sơ đồ truyền nhận dữ liệu theo chuẩn SPI

Chuẩn SPI của MMC cho phép truyền dữ liệu theo 1 khối (single block) hoặc nhiềukhối (multiple block) Kích thước tối đa của khối dữ liệu này có thể thay đổi tùy hãng sảnxuất nằm trong khoảng từ 1- 2048 byte

Hình 2.16 Truyền dữ liệu theo từng khối

Các gói dữ liệu truyền nối tiếp nhau với các lệnh điều khiển CMD17 và CMD24 Kiểm tra lỗi CRC:

Trang 31

 CRCs (cycle redundancy codes) được thêm vào khung truyền lệnh, đáp ứng, và dữliệu của MMC.

 CRC sẽ được kích hoạt để phát hiện lỗi trước khi truyền dữ liệu, cho phép truyền lạikhi một lỗi được tìm thấy CRC nâng cao độ tin cậy của hệ thống

 Trong MMC mode, CRCs là bắt buộc, 7 bit CRC được thêm vào mỗi lệnh và 16 bitCRC với 512 byte dữ liệu Với SPI mode, CRC là một tùy chọn

Trang 32

2.5.2.1 Các thanh ghi của MMC

Bảng danh sách các thanh ghi trong MMC

OCR Operation conditions

register

32bit

Định nghĩa điện thế của hệ thống MMC

1 bit = 10mV

CID Card indentification

register

128bit

Thông tin về nhà sản xuất, OEM, ID củathẻ

RCA Relative card address

register

16bit Sử dụng để đặt tên cho thẻ từ host

CSD Card specific data register 128

bit Chỉ thị trạng thái và tình trạng của lỗi

Bảng 2.4: Danh sách các thanh ghi trong MMC 2.5.2.2 Định dạng khung lệnh của MMC

Dữ liệu nối tiếp

Trang 33

Bảng sau cho ta chi tiết ý nghĩa của các bit:

[45:40]

6

X

Chỉ số lệnh

Bảng 2.5: Chi tiết ý nghĩa của các bit

Một lệnh gồm 48 bit, bit đầu tiên là “bit start” luôn luôn là 0, bit thứ 2 là bit truyền vàđược đặt bằng 1, 6 bit tiếp theo cho biết chỉ số của lệnh, ví dụ với CMD0 thì 8 bit đầu tiên

có giá trị là 01000000b (0x40) Tiếp theo là 32 bit trường đối số có thể là 1 địa chỉ tươngđối, địa chỉ đọc hoặc địa chỉ ghi, 8 bit cuối cùng là phần kiểm tra lỗi CRC với bít cuối cùngluôn là 1

Trang 34

Những lệnh cơ bản được xem là cần thiết để 1 MMC có thể hoạt động được trong chế

độ SPI được mô tả ở bảng 6.3 của phụ lục 1

2.5.2.4 Đáp ứng của các lệnh

Như hình 2.17 cho thấy khi mỗi Command được gửi đến MMC trên đường DI từ host,

thì sẽ có một Response từ MMC gửi trở lại host qua đường DO Trong chế độ SPI thì có 2loại Response là R1 và R2 R2 16 bit là đáp ứng trả về từ MMC khi gửi lệnh CMD13 từhost còn R1 8 bit cho tất cả các lệnh còn lại Phần 8 bit thấp của R2 hoàn toàn giống với R1.R1, R1b : là đáp ứng với tất cả các lệnh ngoại trừ lệnh SEND_STATUS

Dữ liệu nối tiếp

Ý nghĩa của các bit:

• Bit 7: Luôn nhận giá trị 0

• Bit 6 : Lỗi tham số

• Bit 5 : Lỗi địa chỉ

• Bit 4 : Lỗi chuỗi xóa

• Bit 3 : Lỗi CRC

• Bit 2 : Lệnh không hợp lệ

• Bit 1 : Xóa lại

• Bit 0 : Trạng thái chờ

R2 : là đáp ứng dành riêng cho lệnh SEND_STATUS (CMD13)

Dữ liệu nối tiếp

Ý nghĩa các bit:

• Bit 7 : Luôn là 0

• Bit 6 : Thông số xóa

• Bit 5 : Vi phạm chế độ bảo vệ ghi

• Bit 4 : Lỗi ecc thẻ

• Bit 3 : Lỗi CC

• Bit 2 : Lỗi

Trang 35

• Bit 1 : Bỏ qua chế độ bảo vệ ghi hoặc lỗi lệnh khóa/mở khóa thẻ

• Bit 0 : Khóa thẻ Các thông số trên nhận được khi các bit có giá trị là 1

2.5.3 Khởi tạo MMC trong chế độ SPI

Sau khi cấp nguồn MMC hoạt động ở MMC mode Để chuyển sang SPI mode cầnphải thực hiện quy trình sau: cấp điện áp cho thẻ nhớ đợi trong vòng ít nhất là 1ms, thiết lập

DI và CS ở mức cao, sau khoảng 74 xung được gửi tới chân CLK thì thẻ nhớ sẽ cho phéplệnh

2.5.3.1 Thiết lập lại phần mềm

Gửi lệnh CMD0 với chân CS ở mức thấp để reset thẻ MMC lấy mẫu tín hiệu CS khilệnh CMD0 được phát hiện sử dụng Nếu tín hiệu CS ở mức thấp thì thẻ nhớ sẽ hoạt động ởchế độ SPI Lệnh CMD0 phải là lệnh đầu tiên, trường CRC phải có giá trị hợp lệ, với lệnhCMD0 thì CRC là 0x96 Khi vào hoạt động ở chế độ SPI, thì mã kiểm tra CRC được vôhiệu hóa Sau khi lệnh CMD0 được chấp nhận, thẻ nhớ sẽ rơi vào trạng thái chờ (idle state)một đáp ứng R1 sẽ được gửi trở lại host Giá trị của bit idle state là 1, byte R1 là 0x01 CRCcũng có thể cho phép lại bằng lệnh CMD59

2.5.3.2 Khởi tạo

Với trạng thái chờ (idle state), thẻ nhớ chỉ cho phép các lệnh CMD0, CMD1, vàCMD58 Những lệnh khác sẽ bị loại bỏ Khi thẻ phát hiện ra CMD1 nó sẽ bắt đầu quá trìnhkhởi tạo Để kết thúc việc thăm dò khi khởi tạo thẻ, mạch điều khiển của host phải lặp lạiquá trình gửi CMD1 và kiểm tra đáp ứng Khi đã khởi tạo thành công, thì bit “In Idle State”trong đáp ứng R1 được xóa về 0 Xử lý quá trình khởi tạo có thể mất tới vài trăm ms(milliseconds) Sau khi quá trình khởi tạo kết thúc thì việc đọc/ghi sẽ được chấp nhận.Trong thời gian này, OCR và CSD có thể được đọc để cấu hình các thuộc tính của thẻ Banđầu giá trị về độ dài của 1 khối có thể lớn hơn 512 byte, vì vậy nếu muốn thay đổi giá trịnày ta sử dụng CMD16

Quá trình trên có thể mô tả bằng sơ đồ:

Trang 36

Trạng thái đợi (Idle state)CMD1

Trạng thái không hoạt động

Trạng thái sẵn sàngBận hoặc điện thế không phù hợpĐiện thế không phù hợp

Hình 2.17 Sơ đồ khối khởi tạo MMC

Trang 37

 Code mô tả quá trình khởi tạo thẻ xem ở phụ lục 2

2.5.4 Quá trình đọc ghi khối dữ liệu đối với MMC trong SPI mode

Hình 2.18 Đọc ghi dữ liệu theo từng block.

Với lệnh ghi CMD24 thì 8 bit đầu tiên của khung lệnh là “0101 1000B” giá trị nàytrong hệ hexa là 0x58, còn với lệnh đọc CMD17 thì 8 bit đó sẽ là “0101 0001B” trong hệhexa là 0x51 Code thể hiện quá trình đọc ghi dữ liệu đơi với MMC trong SPI mode xem ởphụ lục 2

Ngày đăng: 19/09/2019, 14:41

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Nguyễn Bá Thuận 2010, Giáo trình vi xử lý và vi điều khiển, Đại Học Lạc Hồng TPHCM, 135 trang Sách, tạp chí
Tiêu đề: Nguyễn Bá Thuận 2010
2. Lưu Thế Vinh 2007, Giáo trình đo lường – cảm biến, Đại Học Quốc Gia TPHCM, 338 trang Sách, tạp chí
Tiêu đề: Lưu Thế Vinh 2007
3. Dogan Ibrahim, 2008. Newnes Advanced PIC.Mcrocontroller Projets in c Mar. Newnes, USA, 534 pages Sách, tạp chí
Tiêu đề: Dogan Ibrahim, 2008
1. Datasheet các linh kiện điện tử- Nguồn internet http//www.alldatasheet.com/ Khác
2. AN1045a, Implementing File I/O Functions Using Microchip’s Memory Disk Drive File System Library, Microchip Technology Inc, 2007 Khác

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