Tải bản đầy đủ - 30 (trang)
5 Một số ứng dụng của nRF24L01

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

Tải bản đầy đủ - 30trang

Đồ án THIẾT KẾ HỆ THỐNG NHÚNG



B. Về ds18b20

I.



Tổng quan

DS18B20 là IC cảm biến nhiệt độ, chỉ bao gồm 3 chân, đóng gói dạng TO92 3 chân nhỏ gọn.



Đặc điểm chính của DS18B20 như sau:

+ Lấy nhiệt độ theo giao thức 1 dây (1wire)

+ Cung cấp nhiệt độ với độ phân giải config 9,10,11,12 bit, tùy theo sử dụng. Trong

trường hợp không config thì nó tự động ở chế độ 12 bit.

+Thời gian chuyển đổi nhiệt độ tối đa là 750ms cho mã hóa 12 bit

+Có thể đo nhiệt độ trong khoảng -55 -> +125°C. Với khoảng nhiệt độ là -10°C to +85°C

thì độ chính xác ±0.5°C,±0.25°C ,±0.125°C,±0.0625°C. theo số bít config.

+ Có chức năng cảnh báo nhiệt khi nhiệt độ vượt ngưỡng cho phép. Người dùng có thể

lập trình chức năng này cho DS18B20. Bộ nhớ nhiệt độ cảnh báo không bị mất khi mất

nguồn vì nó có một mã định danh duy nhất 64 bit chứa trong bộ nhớ ROM trên chip (on

chip), giá trị nhị phân được khắc bằng tia laze.

+ Cảm biến nhiệt độ DS18B20 có mã nhận diện lên đến 64-bit, vì vậy bạn có thể

kiểm tra nhiệt độ với nhiều IC DS18B20 mà chỉ dùng 1 dây dẫn duy nhất để giao tiếp với

các

IC

này.

Với DS18B20 bạn hoàn toàn có thể tạo cho mình mạch cảm biến nhiệt độ theo ý muốn.

+ Điện áp sử dụng : 3 – 5.5 V

+ Dòng tiêu thụ tại chế độ nghỉ rất nhỏ.

Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

II: Lấy nhiệt độ với ds18b20

a. Tìm hiểu về các lệnh ROM liên quan đến DS18b20

- READ ROM (33h)

Cho phép đọc ra 8 byte mã đã khắc bằng laser trên ROM, bao gồm: 8 bit mã định tên

linh kiện (10h), 48 bit số xuất xưởng, 8 bit kiểm tra CRC. Lệnh này chỉ dùng khi trên

bus có 1 cảm biến DS1820, nếu không sẽ xảy ra xung đột trên bus do tất cả các thiết

bị tớ cùng đáp ứng.

- MATCH ROM (55h)

Lệnh này được gửi đi cùng với 64 bit ROM tiếp theo, cho phép bộ điều khiển bus

chọn ra chỉ một cảm biến DS1820 cụ thể khi trên bus có nhiều cảm biến DS1820 cùng

nối vào. Chỉ có DS1820 nào có 64 bit trên ROM trung khớp với chuỗi 64 bit vừa

được gửi tới mới đáp ứng lại các lệnh về bộ nhớ tiếp theo. Còn các cảm biến DS1820

có 64 bit ROM không trùng khớp sẽ tiếp tục chờ một xung reset. Lệnh này được sử

dụng cả trong trường hợp có một cảm biến một dây, cả trong trường hợp có nhiều cảm

biến một dây.

- SKIP ROM (CCh)

Lệnh này cho phép thiết bị điều khiển truy nhập thẳng đến các lệnh bộ nhớ của

DS1820 mà không cần gửi chuỗi mã 64 bit ROM. Như vậy sẽ tiết kiệm được thời

gian chờ đợi nhưng chỉ mang hiệu quả khi chỉ có một cảm biến.

- SEARCH ROM (F0h)

Lệnh này cho phép bộ điều khiển bus có thể dò tìm được số lượng thành viên tớ đang

được đấu vào bus và các giá trị cụ thể trong 64 bit ROM của chúng bằng một chu

trình dò tìm.

- ALARM SEARCH (ECh)



Tiến trình của lệnh này giống hệt như lệnh Search ROM, nhưng cảm biến DS1820 chỉ

đáp ứng lệnh này khi xuất hiện điều kiện cảnh báo trong phép đo nhiệt độ cuối cùng.

Điều kiện cảnh báo ở đây được định nghĩa là giá trị nhiệt độ đo được lớn hơn giá trị

TH và nhỏ hơn giá trị TL là hai giá trị nhiệt độ cao nhất và nhiệt độ thấp nhất đã được

đặt trên thanh ghi trong bộ nhớ của cảm biến.



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

Sau khi thiết bị chủ (thường là một vi điều khiển) sử dụng các lệnh ROM để định địa

chỉ cho các cảm biến một dây đang được đấu vào bus, thiết bị chủ sẽ đưa ra các lệnh

chức năng DS1820. Bằng các lệnh chức năng thiết bị chủ có thể đọc ra và ghi vào bộ

nhớ nháp (scratchpath) của cảm biến DS1820. khởi tạo quá trình chuyển đổi giá trị

nhiệt độ đo được và xác định chế độ cung cấp điện áp nguồn. Các lệnh chức năng có

thể được mô tả ngắn gọn như sau:

- WRITE SCRATCHPAD (4Eh)

Lệnh này cho phép ghi 2 byte dữ liệu vào bộ nhớ nháp của DS1820. Byte đầu tiên

được ghi vào thanh ghi TH (byte 2 của bộ nhớ nháp) còn byte thứ hai được ghi vào

thanh ghi TL (byte 3 của bộ nhớ nháp). Dữ liệu truyền theo trình tự đầu tiên là bit có ý

nghĩa nhất và kế tiếp là những bit có ý nghĩa giảm dần. Cả hai byte này phải được ghi

trước khi thiết bị chủ xuất ra một xung reset hoặc khi có dữ liệu khác xuất hiện.

- READ SCRATCHPAD (BEh)

Lệnh này cho phép thiết bị chủ đọc nội dung bộ nhớ nháp. Quá trình đọc bắt đầu từ

bit có ý nghĩa nhấy của byte 0 và tiếp tục cho đến byte rhứ 9 (byte 8 - CRC). Thiết bị

chủ có thể xuất ra một xung reset để làm dừng quá trình đọc bất kỳ lúc nào nếu như

chỉ có một phần của dữ liệu trên bộ nhớ nháp cần được đọc.

- COPYSCRATCHPAD (48h)

Lệnh này copy nội dung của hai thanh ghi TH và TL (byte 2 và byte 3) vào bộ nhớ

EEPROM. Nếu cảm biến được sử dụng trong chế dộ cấp nguồn l bắt đầu việc đo.

- CONVERT T (44h)

Lệnh này khởi động một quá trình đo và chuyển đổi giá trị nhiệt độ thành số (nhị

phân). Sau khi chuyển đổi giá trị kết quả đo nhiệt độ được lưu trữ trên thanh ghi nhiệt

độ 2 byte trong bộ nhớ nháp Thời gian chuyển đổi không quá 200 ms, trong thời gian

đang chuyển đổi nếu thực hiện lệnh đọc thì các giá trị đọc ra đều bằng 0.

- READ POWER SUPPLY (B4h)

Một lệnh đọc tiếp sau lệnh này sẽ cho biết DS1820 đang sử dụng chế độ cấp nguồn

như thế nào, giá trị đọc được bằng 0 nếu cấp nguồn bằng chính đường dẫn dữ liệu và

bằng 1 nếu cấp nguồn qua một đường dẫn riêng.



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG



b. Cách config độ phân giải cho ds18b20

Sơ đồ bộ nhớ của ds18b20



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

Các byte thứ 5 của bộ nhớ đệm có chức năng đăng ký cấu hình (config) cho

ds18b20, và các bít được tổ chức như sau:



Các bit từ 0 đến 4 luôn được đọc giá trị là 1, bít số 7 luôn được đọc giá trị là 0.

Cấu hình độ phân giải cho ds18b20 được quyết định bởi R1 và R0 ta có bảng thiết lập

như sau.



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

c. Sơ đồ kết nối cảm biến nhiệt ds18b20

- Sơ đồ khi sử dụng một cảm biến.



- Sơ đồ khi mắc nhiều cảm biến. (Chúng ta cũng chỉ cần 1 dây để lấy mẫu nhiệt

độ)



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

d. Đọc nhiệt độ

Khi bắt đầu chuyển đổi nhiệt độ thì chân DQ sẽ được kéo xuống mức thấp và khi

chuyển đổi xong thì ở mức cao.Như vậy ta sẽ căn cứ vào hiện tượng này để xác định khi

nào chuyển đổi xong nhiệt độ. Lưu ý luôn phải dùng một điện trở tầm 4.7k trở lên vào

chân DQ treo lên nguồn như sơ đồ mắc.



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG



C. Về Module điều khiển chính

Trong quá trình được học trên ghế nhà trường trong các môn học chúng em được thì

có rất nhiều loại vi điều khiển phù hợp với đề tài này như: họ vi điều khiển 8051, PIC,

AVR..... Nhưng sau khi tìm hiểu trong thực tế thì em nhận thấy rằng có một dòng vi điều

khiển mới 32 bit đang được sử dụng rất rộng rãi rất linh hoạt và giá cả cũng rất hợp lí. Đó

là dòng vi điều khiển họ ARM và cụ thể là vi điều khiển STM32F103C8T6 đồng thời

KIT ARM NANOBOARD do các anh sinh viên khóa trước trong trường phát triển cũng

được sự dụng rất nhiều, vì vậy em chọn vi điều khiển này cho đề án vì nhưng tiện ích mà

nó mang lại.

1.



Lịch sử hình thành và phát triển



ARM (Advanced RISC Machine) là một họ vi xử lý 32-bit được sử dụng rộng rãi trong

các thiết bị nhúng. Do có những ưu điểm như tiết kiệm, giá thành và năng lượng là những mục

tiêu hàng đầu cho việc thiết kế CPU (Central Processing Unit) nên ARM chiếm ưu thế trong

các sản phẩm di dộng.

Hiện nay, 75% CPU nhúng 32-bit là thuộc họ ARM khiến cho họ vi xử lý ARM trở

thành họ vi xử lý 32-bit được sản xuất nhiều nhất trên thế giới. CPU sử dụng bộ vi xử lý ARM

được tìm thấy ở khắp các thiết bị sản phẩm điện tử từ thiết bị cầm tay (PDA, điện thoại di

động, trò chơi cầm tay, máy tính cầm tay…) cho đến các thiết bị ngoại vi( bộ nhớ, bộ định

tuyến để bàn….).

Việc thiết kế ARM được bắt đầu từ năm 1983 trong một dự án phát triển của công ty máy

tính Acorn. Nhóm thiết kế đứng đầu bởi Roger Wilson và Steve Furber, bắt đầu phát triển một

bộ vi xử lý có nhiều điểm kỹ thuật sử dụng trong dòng 6502 (Tên gọi một CPU 8-bit của

hãng Rockwell International có thể dùng được 64-Kb địa chỉ bộ nhớ) tiên tiến. Acorn đã từng

sản xuất nhiều máy tính dựa trên 6502, vì vậy việc tạo ra một chip như vậy là một bước tiến

đáng kể của công ty này.

Ngày 26/4/1985, mẫu sản phẩm ARM đầu tiên sản xuất tại công ty kĩ thuật VLSI,

SanJose, bang Califonia được chuyển tới trung tâm máy tính Acorn ở Cambridge, Anh Quốc.

Vào năm sau, nhóm hoàn thành sản phẩm “thực” gọi là ARM2. ARM2 có bus dữ liệu 32-bit,

không gian địa chỉ 26-bit tức cho phép quản lý đến 64 Mb địa chỉ và 16 thanh ghi 32-bit. Một

trong những thanh ghi này đóng vai trò là bộ đếm chương trình với 6 bit cao nhất và 2 bit thấp

nhất lưu giữ các cờ trạng thái của bộ vi xử lý. Có thể nói ARM2 là bộ vi xử lý 32-bit khả dụng

đơn giản nhất trên thế giới, với chỉ gồm 30.000 transistor (so với bộ vi xử lý lâu hơn bốn năm

của Motorola là 68000 với khoảng 68.000 transistor). Sự đơn giản như vậy có được nhờ ARM

không có vi chương trình (mà chiếm khoảng 1/4 đến 1/3 trong 68000) và cũng giống như hầu hết

các CPU vào thời đó, không hề chứa caches. Sự đơn giản này đưa đến đặc điểm tiêu thụ công

suất thấp của ARM, mà lại có tính năng tốt hơn cả 80286. (Tên bộ vi xử lý 16-bit của Intel, xuất

hiện năm 1982, phổ biến trong các máy IBM PC/AT và các máy tương thích, có thanh ghi 16-bit,

16-bit bus dữ liệu và có khả năng địa chỉ hóa đến 24- bit). Thế hệ sau, ARM3, được tạo ra với

4KB cache và có chức năng được cải thiện tốt hơn nữa. Nửa thập niên sau đó, ARM được phát

Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Đồ án THIẾT KẾ HỆ THỐNG NHÚNG

triển rất nhanh chóng để làm nhân máy tính để bàn của Acorn, nền tảng cho các máy tính hỗ trợ

giáo dục ở Anh. Trong thập niên 1990, dưới sự phát triển của Acorn Limited, ARM đã thành

một thương hiệu đứng đầu thế giới về các ứng dụng sản phẩm nhúng đòi hỏi tính năng cao,

sử dụng năng lượng ít và giá thành thấp.

Chính nhờ sự nổi trội về thị phần đã thúc đẩy ARM liên tục được phát triển và cho ra

nhiều phiên bản mới. Những thành công quan trọng trong việc phát triển ARM ở thập niên sau

này:

- Giới thiệu ý tưởng về định dạng các chỉ lệnh được nén lại (thumb) cho phép tiết

kiệm năng lượng và giá thành ở những hệ thống nhỏ.

- Giới thiệu họ điều khiển ARM9, ARM10 và “Strong ARM”.

- Phát triển môi trường làm việc ảo của ARM trên PC.

- Các ứng dụng cho hệ thống nhúng dựa trên nhân xử lý ARM ngày càng trở

nên rộng rãi.

Hầu hết các nguyên lý của hệ thống trên chip (Systems on chip-SoC) và cách thiết kế bộ

xử lý hiện đại được sử dụng trong ARM, ARM còn đưa ra một số khái niệm mới (như giải

nén động các dòng lệnh). Việc sử dụng ba trạng thái nhận lệnh, giải mã, thực thi trong mỗi chu

kỳ máy mang tính quy phạm để thiết kế các hệ thống xử lý thực. Do đó, nhân xử lý ARM được

sử dụng rộng rãi trong các hệ thống phức tạp.

2. Giới thiệu về dòng vi điều khiển stm32



Những đặc điểm nổi trội của dòng ARM Cortex đã thu hút các nhà sản xuất IC, hơn

240 dòng vi điều khiển dựa vào nhân Cortex đã được giới thiệu. Không nằm ngoài xu

hướng đó, hãng sản xuất chip ST Microelectronic đã nhanh chóng đưa ra dòng STM32.

STM32 là vi điều khiển dựa trên nền tảng lõi ARM Cortex-M3 thế hệ mới do hãng ARM

thiết kế. Lõi ARM Cortex-M3 là sự cải tiến từ lõi ARM7 truyền thống từng mang lại

thành công vang dội cho công ty ARM.



Hình 3.1: Kiến trúc của STM32 nhánh Performance và Access



Nhóm 13 : Ngọc Sơn – Duy Mạnh – Tuấn – Hưng



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

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

Tải bản đầy đủ ngay(30 tr)

×