4. Ý nghĩa thực tiễn của đề tài:
3.5. Các linh kiện sử dụng trong mô hình
3.5.1. Module thu phát RF 315 MHz
Hình 3.12. Module thu phát RF 315MHz Bảng 3.1 Thông số kỹ thuật của module RF 315 MHz
Điện áp hoạt động DC 3 ~ 8V
Dòng làm việc ≤ 3 mA (DC 5V)
Tần số hoạt động 315/433MHz
Chế độ điều chế ASK / OOK
Độ nhạy -105 dBm (50 Ω)
Tốc độ <5 bps K (ở 315 MHz, -95 dBm)
Nhiệt độ hoạt động -20 ° C ~ 70 ° C
Chiều dài antenna 24 cm (315 MHz), 18 cm (433,92 MHz)
Kích thước 30 * 14 * 7 mm
Khối phát phát tín hiệu để cung cấp cho khối thu. Khối phát dùng IC 2262 tạo mã hóa và sử dụng modul phát RF 315MHz để truyền đi.
76 Hình 3.13. Kết nối RF và Vi điều khiển
3.5.2. Các IC trong mạch IC phát sóng RF PT 2262
PT2262 là một IC mã hóa sử dụng trong điều khiển từ xa kết hợp với IC giải mã PT2272. Hai IC này được sản xuất trên công nghệ CMOS. Nó mã hóa dữ liệu và địa chỉ dạng song song thành tín hiệu nối tiếp phù hợp cho điều khiển từ xa dùng tia hồng ngoại hoặc sóng vô tuyến dựa trên các phương pháp điều chế. IC PT2262 có tối đa 12 chân địa chỉ nên sẽ có 531441 (3^12) mã địa chỉ, do đó giảm đáng kể khả năng trùng lặp mã và giải mã trái phép.
77 Sơ đồ và chức năng chân
• Trên chân OSC1(15) và OSC2(16) dùng gắn điê ̣n trở R để đi ̣nh tần cho xung nhi ̣p, dùng ta ̣o ra các dãy xung mã lê ̣nh. Tần số xung nhi ̣p phải lấy tương thích giữa bên phát và bên nhâ ̣n.
• Các chân A0 - A5(1-6) dùng nhâ ̣p mã đi ̣a chỉ, trên mỗi chân có thể có 3 tra ̣ng thái, cho nối masse là bit ‘0’, cho nối vào nguồn dương là bit ‘1’ và bỏ trống là bit ‘F’.
• Chân A6/D5 - A11/D0 có thể dùng như các chân đi ̣a chỉ từ A6 đến A11, nhưng khi dùng như chân nhâ ̣p dữ liê ̣u thì chỉ xác lâ ̣p theo mức 0 và mức 1, chỉ có 2 tra ̣ng thái ‘0’ hoặc ‘1’.
• Chân TE\(14) dùng cho xuất nhóm xung mã lê ̣nh, nó có tác du ̣ng ở mức áp thấp. Nghĩa là khi chân này ở mức áp thấp, nó sẽ cho xuất ra xung mã lê ̣nh trên chân Dout.
• Chân Dout(17), là chân ngõ ra của nhóm tín hiê ̣u mã lê ̣nh, các tín hiê ̣u mã lê ̣nh đều ở da ̣ng xung, nghĩa là lúc ở mức áp thấp, lúc ở mức áp cao.
• Chân VCC(18) nối với nguồn. Chân Vss(9) nối mass.
Như đã đề cập, thường thì các chân từ A0 đến A7 được sử dụng như là các chân mã hóa. Nếu các chân này ở mạch PT2262 được dùng như thế nào thì ở mạch PT2272 cũng được dùng như vậy. Khi đó thì các mạch phát và mạch thu sẽ hiểu nhau, còn các mạch phát khác sẽ không nhận ra.
Các chân 10 đến 13 là các chân data khi truyền. Như vậy IC này có thể truyền song song 4 bit. Chân 15 và 16 dùng để gắn điện trở tạo thành tần số truyền như mong muốn.Giá trị điện trở chân 15 và 16 ở IC PT 2272 nhỏ hơn 10 lần so với PT2262.
IC thu sóng RF PT2272
PT2272 là IC giải mã điều khiển từ xa kết hợp với IC mã hóa PT2262. Số chân địa chỉ cũng giống như PT2262 là có tới 12 chân địa chỉ và 531411 mã địa chỉ.
78 PT 2272 có sẵn nhiều lựa chọn để phù hợp với nhu cầu ứng dụng: thay đổi số lượng các chân dữ liệu đầu ra, chốt (L) ngõ ra hoặc tạm thời (M) ở đầu ra.
Hình 3.15 Sơ đồ chân IC PT2272
Chức năng của các chân:
• Các chân A0 – A7 (1-8) dùng nhâ ̣p mã đi ̣a chỉ, trên mỗi chân có thể có 3 tra ̣ng thái, cho nối masse là bit ‘0’, cho nối vào nguồn dương là bit ‘1’ và bỏ trống là bit ‘F’.
• Chân Vss (9) nối mass.
• Chân D3 – D0 (10-13) có thể dùng như các chân đi ̣a chỉ, nhưng khi dùng như chân nhâ ̣p dữ liê ̣u thì chỉ xác lâ ̣p theo mức 0 và mức 1.
• Chân DIN (14): Tín hiệu nhận được sau khi loại bỏ sóng mang thành tín hiệu điều khiển sẽ được đưa vào chân này.
• Chân OSC1 (15) và OSC2 (16) dùng gắn điê ̣n trở để đi ̣nh tần cho xung nhi ̣p, xung nhi ̣p này cần thiết cho hoa ̣t đô ̣ng của IC.
• Chân VT (17): khi chân này ở mức cao thì tín hiệu nhận được là hợp lệ. • Chân VCC (18) nối với nguồn.
Như vậy chân 17 PT 2272 sẽ lên mức 1 khi nhận được dữ liệu đúng. Các chân 10 đến 13 sẽ nhận data và thể hiện mức logic tương ứng khi nhận.
Những đặc tính của IC:
• Điện năng tiêu thụ thấp. • Khả năng chống nhiễu cao.
79 • Có 12 chân địa chỉ và mỗi chân có tới 3 trạng thái: (0) ,(1),(F)
• Chân dữ liệu: Tối đa 6 chân
• Phạm vi điện áp hoạt động rộng: 4V-15V • Sử dụng điện trở dao động đơn
• Chốt hoặc xóa đầu ra tức thời.
Ứng dụng:
Cặp IC PT2262/PT2272 được ứng dụng điều khiển từ xa khá phổ biến và rộng rãi trong công nghiệp và dân dụng:
• Hệ thống bảo vệ từ xa: chống trộm, báo động, … • Điều khiển thiết bị điện từ xa: đèn, quạt, relay, … • Công nghiệp đồ chơi điều khiển từ xa, …
3.5.3. Màn hình LCD
Ngày nay, thiết bị hiển thị LCD (Liquid Crystal Display) được sử dụng trong rất nhiều ứng dụng của Vi điều khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị khác: có khả năng hiển thị ký tự đa dạng, trực quan (chữ, số và ký tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn ít điện năng và giá thành rẻ.
Có rất nhiều loại LCD với hình dáng và kích thước khác nhau, nhưng loại thông dụng và phổ biến nhất hiện là LCD 16x2 như hình vẽ.
Hình 3.16. Màn hình LCD
Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển HD44780 bên trong lớp vỏ và chỉ đưa ra các chân giao tiếp cần thiết.
80 Bảng 3.2 Các chân của LCD
Chân Ký hiệu Mô tả
1 Vss Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này của LCD với mạch điều khiển
2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch chân này ta nối VCC của mạch điều khiển
3 VEE Điều chỉnh độ tương phản của LCD
4 RS
Chân chọn thanh ghi.Nối chân RS với logic0 hoặc logic 1 để chọn thanh ghi
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD.
5 R/W
Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc.
6 E
Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high-to- low transition) của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp.
81 DB7 MPU. Có 2 chế độ sử dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7
15 Nguồn dương cho đèn nền
16 GND cho đèn nền
3.5.4. Vi điều khiển Atmega 16
Vi điều khiển AVR là sản phẩm của công ty Atmel. Atmel cũng là cha đẻ của con MCU 89C51 đã quen thuộc với hầu hết mọi người. AVR rất mạnh và đang phát triển rất nhanh trong thời gian gần đây. Ngày càng có nhiều bạn muốn tìm hiểu về loại vi điều khiển mới mẻ này.
AVR là họ vi điều khiển 8 bit theo công nghệ mới, với những tính năng rất mạnh được tích hợp trong chip của hãng Atmel theo công nghệ RISC, nó mạnh ngang hàng với các họvi điều khiển 8 bit khác như PIC, Pisoc. Do ra đời muộn hơn nên họ vi điều khiển AVR có nhiều tính năng mới đáp ứng tối đa nhu cầu của người sử dụng, so với họ 8051 89xx sẽ có độ ổn định, khả năng tích hợp, sự mềm dẻo trong việc lập trình và rất tiện lợi.
Tính năng mới của họ AVR: - Giao diện SPI đồng bộ.
- Các đường dẫn vào/ra (I/O) lập trình được. - Giao tiếp I2C.
- Bộbiến đổi ADC 10 bit. - Các kênh băm xung PWM.
- Các chế độtiết kiệm năng lượng như sleep, stand by..vv. - Một bộ định thời Watchdog.
- 3 bộTimer/Counter 8 bit. - 1 bộTimer/Counter 16 bit.
82 - 1 bộso sánh analog.
- Bộ nhớ EEPROM.
3.5.4.1. Chức năng Timer/Counter
Chức năng chính của các bộ Timer/Counter, như tên gọi của chúng, là định thì (tạo ra 1 khoảng thời gian, đếm thời gian), và đếm sự kiện bên ngoài. Ngoài ra trên các chip AVR, các bộ Timer/Counter còn có chức năng điều chế độ rộng xung PWM (Pulse width Modulation), ứng dụng trong điều khiển tốc độ động cơ và điều khiển độ sáng tối của bóng đèn…
Các bộ Timer có thể hoạt động với tần số bên trong (lấy từ thạch anh), cũng có thể hoạt động với tần số bên ngoài, đưa vào đầu vào của bộ Timer. Có thể dùng ứng dụng này để đếm sản phẩm, hay đo độ rộng xung.
Timer/Counter 0: đây là 1 bộ timer 8 bit. Có 4 chế độ hoạt động cơ bản là: Normal, CTC, Past PWM, Phase correct PWM.
Timer/Counter 1: đây là 1 bộ timer 16 bit. Nó cũng có đầy đủ các chế độ hoạt động như của Timer 0, tuy nhiên vì là bộ timer 16 bit nên phạm vi hoạt động của nó rộng hơn. Nếu như giá trị MAX trong Timer0 chỉ là 0xFF, thì giá trị MAX trong Timer1 lên đến 0xFFFF. Ngoài ra bộ Timer1 còn có thể tạo ra 2 tín hiệu PWM độc lập ở các chân OC1A (PORTD.5) và OC1B (PORTD.4), giúp dễ dàng khi điều khiển 2 động cơ cùng 1 lúc (2 động cơ chạy bánh).
Timer/Counter 2: đây là 1 bộ Timer 8 bit. Nó cũng có 4 chế độ hoạt động cơ bản giống như Timer0, đó là: Normal, CTC, Past PWM, Phase correct PWM.
3.5.4.2. Chức năng ngắt
Ngắt là sự kiện bên trong hay bên ngoài làm ngắt bộ vi điều khiển để báo cho nó biết rằng thiết bị cần dịch vụ của nó.
Một bộ vi điều khiển có thể phục vụ một vài thiết bị, có 2 cách để thực hiện điều này đó là sử dụng các ngắt interrupt và thăm dò.Trong phườn pháp sử dụng các ngắt thì mỗi khi có thiết bị bất kỳ cần đến dịch vụ của nó thì nó
83 báo cho bộ vi điều khiển bằng cách gửi 1 tín hiệu ngắt.Khi nhận được tín hiệu ngắt thì bộ vi điều khiển ngắt tất cả những gì nó đang thực hiện để chuyển sang phục vụ thiết bị.Chương trình đi cùng ngắt được gọi là dịch vụ ngắt ISR hay còn gọi là chương trình quản lý ngắt.Còn trong phương pháp thăm dò thì bộ vi điều khiển hiển thị lien tục tình trạng của 1 thiết bị đã cho và điều điều khiển thỏa mãn thì nó phục vụ thiết bị.Sau đó chuyển sang hiển thị tình trạng của thiết bị kế tiếp cho đến khi tất cả đều phục vụ.
Đối với mỗi ngắt thì phải có 1 trình phục vụ ngắt ISR hay trình ngắt. Khi 1 ngắt được gọi thì bộ vi điều khiển phục vụ ngắt. Đối với mỗi ngắt thì nó có 1 vị trí cố định trong bộ nhớ giữa địa chỉ ISR của nó.Nhóm các vị chí nhớ dành giêng để gửi các địa chỉ của các ISR được gọi là bảng vectơ ngắt.
Khi kích hoạt 1 ngắt bộ vi điều khiển đi qua các bước sau:
+ Vi điều khiển kết thúc lệnh đang thực hiện và lưu trữ địa chỉ của lệnh kế tiếp (pc) vào ngăn xếp.
+ Nó nhảy đến vị trí cố định trong bộ nhớ được gọi là bảng vectơ ngắt nơi lưu giữ địa chỉ của 1 trình phục vụ ngắt.
+ Bộ vi điều khiển nhận địa chỉ ISR từ bảng vectơ ngắt và nhảy tới đó.Nó bắt đầu thực hiện trình phục vụ ngắt cho đến lệnh cuối cùng của ISR và RETI (trở về từ ngắt).
+ Khi thực hiện lệnh RETI bộ vi điều khiển quay trở về nới nó đã bị ngắt.Trước hết nó nhận địa chỉ của bộ đếm chương trình PC từ ngăn xếp bằng cách kéo 2 byte trên đỉnh của ngăn xếp vào PC.Sau đó bắt đầu thực hiện các lệnh từ địa chỉ đó.
Đối với Atmga16 thì có 2 chân ngắt là PD2 (INT0) và PD3 (INT1). Có 3 thanh ghi liên quan đến ngắt ngoài đó là:
- Thanh ghi điều khiển MCUCR: Thanh ghi xác địnhchế độ ngắt ngoài, là 1 thanh ghi 8 bit nhưng chỉ dùng 4 bit thấp cho hoạt động ngắt ngoài.
- Thanh ghi điều khiển ngắt chung GICR(General Interrupt Control Register)là 1 thanh ghi 8 bit nhưng chỉ dùng 2 bit cao để ngắt ngoài.
84 - Thanh ghi cờ ngắt chung GIFR (General Interrupt Flag Register) có 2 bit là các bit trạng thái của 2 ngắt INT1 và INT0.