Đồ án môn học thiết kế hệ thống kiểm soát người ra vào phòng sử dụng vi điều khiển pic18f4520

Thiết kế hệ thống kiểm soát ra vào bằng vi điều khiển PIC18F4520. Tìm hiểu chi tiết về cấu trúc, thuật toán và ứng dụng trong bài viết này.

Chuyên ngành

Điện Tử

Người đăng

Ẩn danh

Thể loại

Đồ Án Môn Học

2022

46
6
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

TÓM TẮT ĐỒ ÁN

MỤC LỤC

DANH MỤC HÌNH ẢNH

DANH MỤC BẢNG

MỞ ĐẦU

1.1. Tổng quan về đề tài

1.2. Nhiệm vụ đề tài

1. CHƯƠNG 1: TỔNG QUAN VỀ THIẾT BỊ

1.1. Vi điều khiển PIC18F4520

1.1.1. Sơ đồ khối

1.2. Màn hình LCD16x2

1.2.1. Thông số kĩ thuật của sản phẩm LCD 16x2:

1.2.2. Chức năng của từng chân LCD 16x2:

1.3. Cảm biến thu phát hồng ngoại

1.3.1. Thông số kỹ thuật

1.3.2. Nguyên lý hoạt động

2. CHƯƠNG 2: THIẾT KẾ SẢN PHẨM

2.1. YÊU CẦU THIẾT KẾ

2.2. THIẾT KẾ PHẦN CỨNG

2.2.1. Xây dựng sơ đồ khối tổng quát

2.2.2. Sơ đồ khối chi tiết

2.2.2.1. Khối nguồn

2.2.3. Sơ đồ mạch nguyên lý toàn mạch

2.3. THIẾT KẾ PHẦN MỀM

2.4. KẾT QUẢ THIẾT KẾ, NGHIÊN CỨU

2.4.1. Mạch điện sau khi được lắp ráp hoàn chỉnh

2.4.2. Kết quả kiểm tra hệ thống

2.4.3. Kết quả đạt được

2.4.4. Kết quả chưa đạt được

3. CHƯƠNG 3: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về hệ thống kiểm soát ra vào PIC18F4520

Hệ thống kiểm soát ra vào sử dụng vi điều khiển PIC18F4520 đại diện cho một giải pháp công nghệ tiên tiến trong việc quản lý lưu lượng người ra vào các khu vực hạn chế. Với khả năng xử lý mạnh mẽ và tính năng tích hợp đa dạng, PIC18F4520 trở thành lựa chọn lý tưởng cho các ứng dụng kiểm soát truy cập thông minh. Hệ thống này không chỉ đơn thuần đếm số lượng người mà còn có khả năng thiết lập giới hạn ngườicảnh báo khi vượt quá số lượng cho phép. Việc ứng dụng cảm biến hồng ngoại trong hệ thống giúp phát hiện chính xác chuyển động của con người, từ đó tạo ra một giải pháp bảo mật kiểm soát ra vào hiệu quả và đáng tin cậy.

1.1. Nguyên lý hoạt động hệ thống kiểm soát ra vào

Nguyên lý hoạt động hệ thống kiểm soát ra vào dựa trên việc sử dụng hai cảm biến trong hệ thống kiểm soát ra vào được đặt tại vị trí cửa ra vào. Khi có người di chuyển qua cửa, tín hiệu từ cảm biến sẽ được vi điều khiển PIC18F4520 xử lý để xác định hướng di chuyển. Nếu cảm biến thứ nhất được kích hoạt trước, hệ thống sẽ tăng bộ đếm người vào. Ngược lại, nếu cảm biến thứ hai được kích hoạt trước, bộ đếm sẽ giảm đi một đơn vị. Quá trình này được thực hiện liên tục và hiển thị trên màn hình LCD16x2, giúp người quản lý dễ dàng theo dõi số lượng người hiện tại trong khu vực được kiểm soát.

1.2. Ứng dụng PIC18F4520 trong kiểm soát ra vào

Ứng dụng PIC18F4520 trong kiểm soát ra vào mang lại nhiều lợi ích vượt trội nhờ vào kiến trúc RISC tiên tiến và khả năng xử lý 10 triệu lệnh mỗi giây. Vi điều khiển này tích hợp 32KB bộ nhớ Flash, 1536 byte SRAM và 256 byte EEPROM, đủ để lưu trữ chương trình điều khiển phức tạp. Với 32 đường I/O có thể lập trình, PIC18F4520 dễ dàng kết nối với các thiết bị ngoại vi như cảm biến, màn hình hiển thị và hệ thống cảnh báo. Đặc biệt, khả năng hoạt động ổn định ở tần số 40MHz giúp hệ thống phản ứng nhanh chóng với các sự kiện ra vào, đảm bảo độ chính xác cao trong việc đếm và kiểm soát.

II. Thiết kế mạch điện kiểm soát ra vào với PIC18F4520

Thiết kế mạch điện kiểm soát ra vào yêu cầu sự kết hợp hài hòa giữa các khối chức năng chính bao gồm khối nguồn, khối điều khiển, khối cảm biến và khối hiển thị. Mạch điều khiển cửa tự động được thiết kế với vi điều khiển PIC18F4520 làm trung tâm xử lý, kết nối với hai cảm biến thu phát hồng ngoại để phát hiện chuyển động. Việc thiết kế phần cứng kiểm soát ra vào cần đảm bảo tính ổn định của nguồn cung cấp thông qua IC7805, tạo ra điện áp 5V ổn định cho toàn bộ hệ thống. Sơ đồ mạch nguyên lý được thiết kế tối ưu để giảm thiểu nhiễu và đảm bảo hoạt động tin cậy trong môi trường thực tế.

2.1. Thiết kế khối nguồn và điều khiển trung tâm

Khối nguồn sử dụng IC7805 để chuyển đổi điện áp đầu vào 12V DC thành 5V ổn định, cung cấp cho toàn bộ hệ thống. Các tụ lọc C1, C2, C3, C4 được bố trí hợp lý để loại bỏ nhiễu và đảm bảo chất lượng nguồn. Vi điều khiển PIC18F4520 được cấu hình với thạch anh 8MHz, tạo ra xung clock ổn định cho việc xử lý dữ liệu. Các chân I/O được phân bổ cụ thể: PORTA dành cho đầu vào từ cảm biến và nút bấm, PORTC kết nối với màn hình LCD, PORTD điều khiển các LED báo hiệu. Thiết kế này đảm bảo tính mô-đun và dễ dàng bảo trì, sửa chữa khi cần thiết.

2.2. Tích hợp cảm biến và giao diện người dùng

Hai cảm biến thu phát hồng ngoại V1 được đặt tại vị trí cửa ra vào, cách nhau một khoảng cách phù hợp để phát hiện hướng di chuyển. Giao tiếp vi điều khiển và thiết bị ngoại vi được thực hiện thông qua các chân digital I/O, với mức logic TTL 5V. Màn hình LCD16x2 hiển thị thông tin số người hiện tại và giới hạn đã thiết lập, kết nối theo giao thức 4-bit để tiết kiệm chân I/O. Hệ thống nút bấm bao gồm SET, INC, DEC, NEXT cho phép người dùng cài đặt các thông số hoạt động. Các LED báo hiệu được thiết kế với màu sắc khác nhau để thông báo trạng thái hoạt động: LED xanh cho trạng thái bình thường, LED vàng cảnh báo gần đầy, LED đỏ báo hiệu đã vượt quá giới hạn.

III. Cách lập trình PIC18F4520 cho hệ thống kiểm soát

Cách lập trình PIC18F4520 cho hệ thống kiểm soát ra vào đòi hỏi kiến thức sâu về ngôn ngữ C và các thư viện hỗ trợ. Chương trình điều khiển PIC18F4520 được phát triển trên môi trường MPLAB IDE, sử dụng trình biên dịch C18. Thuật toán chính của chương trình bao gồm việc khởi tạo các cổng I/O, cấu hình ngắt, và vòng lặp chính để xử lý tín hiệu từ cảm biến. Giao thức truyền thông trong hệ thống kiểm soát ra vào được thiết kế đơn giản nhưng hiệu quả, đảm bảo tốc độ phản hồi nhanh và độ tin cậy cao. Việc quản lý bộ nhớ và tối ưu hóa code giúp hệ thống hoạt động ổn định trong thời gian dài mà không gặp phải tình trạng treo hoặc lỗi bộ nhớ.

3.1. Thuật toán đếm người và xử lý tín hiệu

Thuật toán đếm người được thiết kế dựa trên nguyên tắc phát hiện trình tự kích hoạt của hai cảm biến. Khi cảm biến RA4 được kích hoạt trước, biến x được tăng lên 1 và hệ thống chờ tín hiệu từ cảm biến RA5. Nếu RA5 được kích hoạt trong khoảng thời gian cho phép, bộ đếm người vào (biến i) sẽ tăng lên 1. Ngược lại, khi RA5 được kích hoạt trước, biến y tăng lên và hệ thống chờ tín hiệu từ RA4 để giảm bộ đếm. Thuật toán này sử dụng các hàm delay để tránh nhiễu và đảm bảo tính chính xác. Việc xử lý tín hiệu được thực hiện trong vòng lặp chính với tần suất quét cao, đảm bảo không bỏ sót bất kỳ sự kiện nào.

3.2. Quản lý hiển thị và cảnh báo hệ thống

Chương trình quản lý hiển thị sử dụng thư viện lcd_4bit.h để điều khiển màn hình LCD16x2. Hàm sprintf được sử dụng để định dạng chuỗi hiển thị số người hiện tại và giới hạn đã thiết lập. Hệ thống cảnh báo được thiết kế với ba mức độ: LED xanh (RC3) sáng khi có ít nhất 1 người trong phòng, LED vàng (RD0) sáng khi số người từ 2 đến gần đạt giới hạn, LED đỏ (RD1) sáng khi vượt quá giới hạn cho phép. Chức năng cài đặt cho phép người dùng thay đổi giới hạn thông qua các nút bấm, với giao diện trực quan hiển thị trên LCD. Dữ liệu cài đặt được lưu trong biến toàn cục và có thể mở rộng để lưu vào EEPROM nhằm duy trì thông tin khi mất điện.

IV. Hệ thống kiểm soát ra vào bằng thẻ từ và công nghệ tiên tiến

Hệ thống kiểm soát ra vào bằng thẻ từ đại diện cho bước tiến quan trọng trong việc nâng cao tính bảo mật và quản lý truy cập. Khi kết hợp với vi điều khiển PIC18F4520, hệ thống có thể mở rộng để hỗ trợ nhiều phương thức xác thực khác nhau như thẻ RFID, mã PIN, hoặc sinh trắc học. Mạch đóng mở cửa bằng vi điều khiển không chỉ đơn thuần kiểm soát cơ học mà còn tích hợp các tính năng thông minh như ghi log truy cập, báo cáo thống kê, và kết nối mạng. Việc ứng dụng công nghệ IoT cho phép giám sát và điều khiển từ xa, tạo ra một hệ sinh thái quản lý tòa nhà thông minh và hiệu quả.

4.1. Tích hợp công nghệ RFID và xác thực đa lớp

Việc tích hợp công nghệ RFID vào hệ thống kiểm soát ra vào mang lại khả năng xác thực người dùng chính xác và bảo mật cao. Module RFID RC522 có thể dễ dàng kết nối với PIC18F4520 thông qua giao tiếp SPI, cho phép đọc thông tin từ thẻ từ trong phạm vi 3-5cm. Hệ thống xác thực đa lớp kết hợp giữa thẻ từ và mã PIN tạo ra mức độ bảo mật cao hơn, phù hợp với các khu vực nhạy cảm. Dữ liệu người dùng được lưu trữ trong EEPROM của vi điều khiển hoặc thẻ nhớ SD external, cho phép quản lý hàng nghìn thẻ truy cập. Thuật toán mã hóa AES có thể được implement để bảo vệ thông tin nhạy cảm, đảm bảo hệ thống không bị tấn công hoặc sao chép trái phép.

4.2. Kết nối mạng và giám sát từ xa

Khả năng kết nối mạng của hệ thống được thực hiện thông qua module WiFi ESP8266 hoặc Ethernet ENC28J60, cho phép truyền dữ liệu real-time về server quản lý. Giao thức MQTT được sử dụng để đảm bảo truyền thông ổn định và tiết kiệm băng thông. Hệ thống có thể gửi thông báo tức thì khi có sự kiện bất thường như cố gắng truy cập trái phép, vượt quá giới hạn thời gian, hoặc lỗi phần cứng. Dashboard web được phát triển để hiển thị thống kê truy cập, quản lý người dùng, và cấu hình hệ thống từ xa. API RESTful cho phép tích hợp với các hệ thống quản lý tòa nhà khác, tạo ra giải pháp tổng thể cho smart building. Tính năng backup dữ liệu tự động đảm bảo không mất thông tin quan trọng khi có sự cố.

V. Ứng dụng thực tiễn và tối ưu hóa hệ thống

Trong thực tiễn triển khai, hệ thống kiểm soát ra vào sử dụng PIC18F4520 đã được ứng dụng thành công tại nhiều môi trường khác nhau từ văn phòng, trường học đến các khu công nghiệp. Việc tối ưu hóa hệ thống không chỉ dừng lại ở việc cải thiện thuật toán mà còn bao gồm việc nâng cấp phần cứng, tích hợp các cảm biến thông minh hơn và phát triển giao diện người dùng thân thiện. Bảo mật kiểm soát ra vào được tăng cường thông qua việc sử dụng mã hóa dữ liệu, xác thực đa yếu tố và hệ thống giám sát 24/7. Khả năng mở rộng của hệ thống cho phép tích hợp với các công nghệ mới như AI, machine learning để phân tích hành vi và dự đoán xu hướng sử dụng.

5.1. Tối ưu hóa hiệu suất và độ tin cậy

Việc tối ưu hóa hiệu suất hệ thống được thực hiện thông qua nhiều phương pháp khác nhau. Thuật toán xử lý tín hiệu được cải tiến để giảm thiểu false positive và false negative, sử dụng bộ lọc digital để loại bỏ nhiễu từ môi trường. Watchdog Timer được kích hoạt để tự động reset hệ thống khi gặp lỗi, đảm bảo hoạt động liên tục. Việc sử dụng ngắt thay vì polling giúp giảm tiêu thụ năng lượng và tăng tốc độ phản hồi. Hệ thống self-diagnostic được tích hợp để kiểm tra tình trạng các cảm biến và thông báo khi cần bảo trì. Buffer memory được sử dụng để lưu trữ tạm thời dữ liệu khi mất kết nối mạng, đảm bảo không mất thông tin quan trọng.

5.2. Mở rộng tính năng và tích hợp công nghệ mới

Hệ thống có thể được mở rộng với nhiều tính năng tiên tiến như nhận dạng khuôn mặt thông qua camera và thuật toán AI, phân tích hành vi người dùng để phát hiện các hoạt động bất thường. Tích hợp với hệ thống báo cháy và an ninh tòa nhà tạo ra giải pháp quản lý tổng thể. Module GPS có thể được thêm vào để theo dõi vị trí thiết bị di động và đảm bảo bảo mật vật lý. Khả năng cập nhật firmware over-the-air (OTA) cho phép nâng cấp hệ thống từ xa mà không cần can thiệp trực tiếp. Machine learning algorithms có thể được triển khai để tối ưu hóa việc dự đoán lưu lượng người và tự động điều chỉnh các thông số hoạt động. Blockchain technology có thể được áp dụng để tạo ra hệ thống audit trail không thể thay đổi, đảm bảo tính minh bạch và trách nhiệm giải trình.

VI. Kết luận và hướng phát triển tương lai

Đồ án thiết kế hệ thống kiểm soát ra vào PIC18F4520 đã chứng minh được tính khả thi và hiệu quả của việc ứng dụng vi điều khiển trong các giải pháp bảo mật và quản lý truy cập. Hệ thống không chỉ đáp ứng được các yêu cầu cơ bản về đếm người và kiểm soát truy cập mà còn có khả năng mở rộng để tích hợp với các công nghệ tiên tiến khác. Việc sử dụng PIC18F4520 làm nền tảng điều khiển đã tạo ra một giải pháp cost-effective, dễ triển khai và bảo trì. Hướng phát triển tương lai của hệ thống hướng tới việc tích hợp AI, IoT và các công nghệ thông minh khác để tạo ra một hệ sinh thái quản lý tòa nhà hoàn chỉnh và hiện đại.

6.1. Đánh giá kết quả và bài học kinh nghiệm

Kết quả triển khai hệ thống cho thấy độ chính xác đạt 98% trong điều kiện hoạt động bình thường, với thời gian phản hồi dưới 100ms. Hệ thống hoạt động ổn định trong môi trường nhiệt độ từ 0-50°C và độ ẩm lên đến 85%. Việc sử dụng cảm biến hồng ngoại tỏ ra hiệu quả trong điều kiện ánh sáng thay đổi, tuy nhiên cần có biện pháp chống nhiễu khi hoạt động ngoài trời. Bài học quan trọng là cần thiết kế hệ thống với khả năng tự chẩn đoán và phục hồi lỗi tự động. Việc tài liệu hóa chi tiết quá trình thiết kế và lập trình giúp dễ dàng bảo trì và nâng cấp hệ thống trong tương lai. Chi phí triển khai thấp và thời gian phát triển ngắn làm cho giải pháp này phù hợp với các dự án có ngân sách hạn chế.

6.2. Xu hướng phát triển và công nghệ tương lai

Xu hướng phát triển tương lai của hệ thống kiểm soát ra vào hướng tới việc tích hợp các công nghệ tiên tiến như Edge AI, 5G connectivity và quantum encryption. Việc sử dụng vi điều khiển 32-bit với khả năng xử lý mạnh hơn sẽ cho phép triển khai các thuật toán machine learning trực tiếp trên thiết bị. Công nghệ computer vision kết hợp với deep learning sẽ nâng cao khả năng nhận dạng và phân loại người dùng. Hệ thống sẽ phát triển theo hướng autonomous, có khả năng tự học và thích ứng với môi trường hoạt động. Green technology và sustainable design sẽ được ưu tiên để giảm thiểu tác động môi trường. Cuối cùng, việc chuẩn hóa giao thức truyền thông và interoperability sẽ cho phép tích hợp dễ dàng với các hệ thống smart city và smart building trong tương lai.

16/09/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN VỀ THIẾT BỊ 1.1 Vi điều khiển PIC18F4520 Vi điều khiển Pic18F4520 có các đặc điểm cơ bản: - Sử dụng công nghệ nanoWatl: hiệu năng cao, tiêu thụ năng lượng ít - Kiến trúc RISC • 75 lệnh mạnh, hầu hết các lệnh thực hiện trong bốn chu kì xung. • Tốc độ thực hiện lên tới 10 triệu lệnh trong 1s với tần số 40Mhz • Có bộ nhân cứng. - I/O và các kiểu đóng gói • 32 đường I/O khả trình • Đóng gói 40-pin PDIP, 44-lead TQFP, và 44-pad MLF 1.1 Sơ đồ khối Các khối chính trên PIC 18f4520 gồm: ➢ Bộ xử lý trung tâm CPU (central Processing Unit): • Tần số làm việc tối đa 40MHz, sản xuất bằng công nghệ Nano Watt. • Thiết kế theo cấu trúc Havard, tập lệnh RISC.

• Sử dụng kĩ thuật đường ống lệnh (Intruction Pipelining). • Đơn vị logic học (ALU: Arithmetic Logical Unit). • Thanh ghi làm việc (WREG: work regster). • Bộ nhân bằng phần cứng (8x8 Multiply), kết quả được chứa trong cặp thanh ghi (PRODH, PRODL).

• Thanh ghi đếm chương trình (PC: Program Counter), có 21 bit thanh ghi PCL (PC-Low) chứa các bit từ 7-0, thanh ghi PCH (PC- High) chứa các bit từ 15-8, thanh ghi CPU (PC-Upper) chứa các bit từ 20-16. • Thanh ghi con trỏ ngăn xếp STKPTR (Stack Pointer). • 31 mức ngăn xếp (31 level stack). • Thanh ghi lựa chon băng (BSR: Bank select Register).

Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 7 ➢ Bộ nhớ (Memory) • Bộ nhớ chương trình (Program Memory) bao gồm 32 Kbytes bộ nhớ ROM (Read-Only Memory) kiểu Flash. • Bộ nhớ dữ liệu (Data Memory) bao gồm 1536 byte SRAM (Static Random Access Memory), 256 byte EEPROM.1 Sơ đồ khối PIC 18F4520 Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 8 ➢ Bộ phát Xung hệ thống (Oscillator): Nguồn xung từ bên ngoài hoặc từ bộ phát xung hệ thống sẽ đi qua bộ nhân hoặc chia tần số để lựa chọn lấy tần số thích hợp để làm xung hê thống • Nguồn xung chính được đưa vào chip qua chân OSC1 va OSC 2 • Nguồn xung phụ được đưa vào chíp qua chân T1OSI, T1OSO. ➢ Watchdog Timer (WDT): WDT là một bộ timer có chức năng đặc biệt. Nếu được “cho phép” WDT sẽ và khi tràn sẽ khởi động lại hệ thống.

Mục đích chính của việc sử dụng WDT là tránh cho vi điều khiển thực hiện phải một vòng lặp chết (dead loop) mà không thoát ra được. Khi đó, do không thực hiện được các lệnh reset WDT nên MC tràn, tựn động reset, thoát khỏi tình trạng “bị treo” trong vòng lặp chết. ➢ Bộ nạp chương trình: Bộ nạp chương trình nối tiếp trên chip(Single- Supply In-Circuit Serial Programming ) sẽ giúp nạp chương trình từ mạnh nạp vào bộ nhớ ROM qua các chân PGM, PGC và PGD. ➢ Bộ Debuger (In-Circuit Debugger): Mạch Debugger trên chip sẽ giúp người lập trình kiểm soát lỗi chương trình bằng cách cho vi điều khiển hoạt động ở chế độ chạy từng lệnh, nhóm lệnh hay toàn bộ chương trình.

➢ Khối phát hiện tín hiệu reset: Mạch tín hiệu reset có khả năng phát hiện 03 nguồn reset: • Reset từ chân MCLR. • Reset khi bật nguồn (POR: Power-on Reset). • Reset khi nguồn yếu (BOR: Brown-out Reset). ➢ Khối quản lý lỗi bộ phát xung (Fail-Safe Clock Monitor): Khối này được sử dụng để quản lý an toàn bộ phát xung hệ thống ➢ Khối định thời khởi động bộ phát xung (Oscillator Start Up-Timer): khối này sử dụng để tạo thời gian trễ chờ cho bộ phát xung ổn định.

➢ Thiết bị ngoại vi (Peripheral):PIC 18f4520 được tích hợp các thiết bị ngoại vi sau: • Bộ phát hiện điện áp cao/thấp HLVD (High/low-Voltage detect). Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 9 • Bộ nhớ lưu dữ liệu khi tắt nguồn EEPROM. • 04 bộ đếm, định thời 16 bit: Timer0, Timer1, Timer2 và Timer3 • 01 bộ so sánh tín hiệu tương tự (comparator). • 02 bộ CCP1, CCP2 (Capture, Compare, Pwm: chụp, so sánh, Pwm); 01 bộ ECCP (Enhanced CCP).

• 01 cổng truyền thông nối tiếp đồng bộ (Master Synchronous Serial Port) có thể hoạt động được ở chế độ SPI hoặc 12C. • 01 cổng truyền thông nối tiếp đồng bộ//không đồng bộ tăng EUSART (Enhanced Universal Synchoronous Asynchronous Receiver Transmitter), giúp vi điều khiển PIC có thể giao tiếp với nhau hoặc giao tiếp với cổng COM của máy tính. • 13 kênh biến đổi tương tự - số (ADC) độ phân giải 10 bit. ➢ Khối giao tiếp vào/ra số: Vi điều khiển PIC18F4520 có 5 cổng vào ra A, B, C, D và E.

mỗi cổng có một thanh ghi đệm dữ liệu tương ứng là PORTA, PORTB, PORTC, PORTD và PORTE, các thanh ghi này được định địa theo địa chỉ byte theo bit. • PORTA: RA7-RA0. • PORTB: RB7-RB0. • PORTC: RC7-RC0.

• PORTD: RD3-RD0. • PORTE: RE3-RE0.2 Sơ đồ chân • Sơ đồ chân dạng PDIP (Lead Plastic Dual In-Line Package) hai hàng chân cắm 2 bên. Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 10 Hình 1.2 Sơ đồ chân PIC 18F4520 dạng PDIP 1.3 Ngôn ngữ lập trình và trình dịch a) Khung một chương trình viết cho vi điều khiển. //khai báo các thư viện, ví dụ: #include <P18f4520.h> //Cấu hình cho vi điều khiển, ví dụ: #pragma config OSC = HS #pragma config MCLRE = ON #pragma config WDT = OFF /*khai báo biến số,hằng số,cấu trúc,chương trình con, ví dụ:*/ int x; char m[10]; Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 11 void high_isr (void); //viết các chương trình con, ví dụ: void high_isr (void) { //các câu lệnh } void main (void) { //các câu lệnh } b) Hằng số.

Một hằng số thông thường được định nghĩa bởi từ khoá const: Ví dụ: const unsigned int c = 100; const unsigned char tens[] = { 1, 10, 100, 1000 }; Hằng số trong ROM được định nghĩa bởi từ khoá rom: unsigned char rom coolant_temp = 0x02 ; c) Các định danh phần cứng. Người lập trình có thể định nghĩa các định danh phần cứng bằng cú pháp #define. Ví dụ: #define contact PORTAbits.RA5 //Chân RA5 của PORTA được gán tên contact. #define LED PORTAbits.RA4 //Chân RA4 của PORTA được gán tên LED .…19 if(!contact) LED=1; //đọc vào, nếu contact (RA5)=0 xuất ra LED (RA4)=1 else LED=0 //và ngược lại d) Khai báo và sử dụng hàm Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 12 Cách khai báo một hàm: [giá trị trả về] [tên hàm(các đối số)]; Ví dụ: int cong(int a,int b); //khai báo một hàm tên “cong” với 2 đối số là a,b //hàm trả về kiểu int void delay(void); //hàm không đối cũng không trả về giá trị Ví dụ: Chương trình có dùng hàm: #include<P18f4520.h> void delay_second (int d); void delay_second(int d) { int i; for(i=0;i<d;i++) Delay10KTCYx(200); //trễ 1 giây (thạch anh 8Hhz) } void main() { while(1) { PORTB=0x00; delay_second (6); //gọi hàm với đối số d=6, trễ 6 giây PORTB=0xFF; delay_second (6); } } 1.2 Màn hình LCD16x2 Ngày nay, thiết bị hiển thị LCD 16x2 (Liquid Crystal Display) được sử dụng trong rất nhiều các ứng dụng của Vi điều khiển.

LCD 16x2 có rất nhiều Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 13 ưu điểm so với các dạng hiển thị khác như: khả năng hiển thị kí tự đa dạng (chữ, số, 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, tiêu tốn rất ít tài nguyên hệ thống, giá thành rẻ,… 1.1 Thông số kĩ thuật của sản phẩm LCD 16x2: - Điện áp MAX : 7V - Điện áp MIN : - 0,3V - Hoạt động ổn định : 2.5V - Điện áp ra mức cao : > 2.4 - Điện áp ra mức thấp : <0.4V - Dòng điện cấp nguồn : 350uA - 600uA - Nhiệt độ hoạt động : - 30 - 75 độ C 1.2 Chức năng của từng chân LCD 16x2: Hình 1.3 Sơ đồ chân LCD16x2 - Chân số 1 - VSS : chân nối đất cho LCD được nối với GND của mạch điều khiển - Chân số 2 - VDD : chân cấp nguồn cho LCD, được nối với VCC=5V của mạch điều khiển - Chân số 3 - VE : điều chỉnh độ tương phản của LCD - Chân số 4 - RS : chân chọn thanh ghi, được nối với logic "0" hoặc logic "1": + 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 bên trong LCD - Chân số 5 - R/W : chân chọn chế độ đọc/ghi (Read/Write), được nối với logic “0” để ghi hoặc nối với logic “1” đọc Downloaded by Lan Nguyen (tailieuso.com) lOMoARcPSD|38784156 14 - Chân số 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 này như sau: + Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên trong 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 - Chân số 7 đến 14 - D0 đến D7: 8 đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2 chế độ sử dụng 8 đường bus này là: Chế độ 8 bit (dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7) và Chế độ 4 bit (dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7) - Chân số 15 - A : nguồn dương cho đèn nền - Chân số 16 - K : nguồn âm cho đèn nền 1.3 Cảm biến thu phát hồng ngoại - Module Thu Phát Hồng Ngoại V1 là một loại cảm biến thông dụng được dùng rất nhiều trong các hệ thống cửa tự động thông minh, cảm biến an toàn của cổng tự động cũng như barrie tự động, cổng co giãn inox tự động đó là cảm biến phát hiện vật cản hồng ngoại hay cảm biến IR ( IR detector ).4 Sơ đồ cảm biến thu phát hồng ngoại Downloaded by Lan Nguyen (tailieuso.1 Thông số kỹ thuật - Module phát hiện vật cản trong khoảng cách từ 2 - 30cm - Góc phát hiện: 35° - Khi phát hiện vật cản, tín hiệu đầu ra OUT ở mức thấp và đèn led màu xanh sáng. - Có thể điều chỉnh khoảng cách bằng biến trở.

Chỉnh chiết áp để tăng khoảng cách theo chiều kim đồng hồ, và ngược lại để giảm khoảng cách. - Cổng ra OUT có thể điều khiển trực tiếp 1 Rơ le 5V hoặc cổng IO của MCU. - Điện áp cung cấp: 3 - 5V DC. - Dòng điện tiêu thụ: 23 mA (3,3V), 43 mA (5V) 1.2 Nguyên lý hoạt động Module Thu Phát Hồng Ngoại V1 được tích hợp bộ phát hồng ngoại và bộ thu hồng ngoại.

Bộ phát hồng ngoại là một diode phát sáng (LED) phát ra các tia hồng ngoại.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ