Chương 1.1 Giới thiệu về LCD Hình MỤC LỤC-1 LCD16x2 Được sản xuất từ năm 1970, LCD là một loại vật chất phản xạ ánh sáng khi điện thế thay đổi. Nó hoạt động dựa trên nguyên tắc ánh sáng nền (Back Light). Các điểm ảnh trong màn hình LCD là một transistor cực nhỏ ở một trong 2 chế độ: cho phép ánh sáng đi qua hoặc không. Điểm ảnh bao gồm 3 yếu tố màu: đỏ, xanh lá, xanh dương.
Các màn hình LCD trước đây thường tiêu thụ điện năng nhiều, độ tương phản thấp cho đến khi các nhà khoa học người Anh tìm ra "Biphenyl" - vật liệu chính của tinh thể lỏng, thì LCD mới thực sự phổ biến. LCD xuất hiện đầu tiên trong các máy tính cầm tay, trò chơi điện tử cầm tay, đồng hồ điện tử, … LCD ngày nay được thiết kế nhỏ gọn, nhẹ, chiếm ít không gian, chất lượng hình ảnh tốt, tiêu thụ ít năng lượng. Thông số kĩ thuật: LCD 16×2 được sử dụng để hiển thị trạng thái hoặc các thông số. LCD 16×2 có 16 chân trong đó: - 8 chân dữ liệu (D0 – D7) và 3 chân điều khiển (RS, RW, EN).
- 5 chân còn lại dùng để cấp nguồn và đèn nền cho LCD 16×2. - Các chân điều khiển giúp ta dễ dàng cấu hình LCD ở chế độ lệnh hoặc chế độ dữ liệu giúp ta cấu hình ở chế độ đọc hoặc ghi. 9 LCD 16×2 có thể sử dụng ở chế độ 4 bit hoặc 8 bit tùy theo ứng dụng ta đang làm.2 Giới thiệu về PIC 18F4520 Pic18f4520 là một chíp vi điều khiển được sản xuất bời hãng Microchip thuộc họ Pic. Pic18f4520 là một bộ vi điều khiển 8 bit dựa trên kiến trúc RISC bộ nhớ chương trình 32KB ISP flash có thể ghi xóa hàng nghìn lần, 256B EEPROM, một bộ nhớ RAM vô cùng lớn trong thế giới vi xử lý 8 bit (2KB SRAM) Với 33 chân có thể sử dụng cho các kết nối vào hoặc ra i/O, 32 thanh ghi, 3 bộ timer/counter có thể lập trình, có các gắt nội và ngoại (2 lệnh trên một vector ngắt), giao thức truyền thông nối tiếp USART, SPI, I2C.
Ngoài ra có thể sử dụng bộ biến đổi số tương tự 10 bít (ADC/DAC) mở rộng tới 12 kênh, khả năng lập trình được watchdog timer, hoạt động với 5 chế độ nguồn, có thể sử dụng tới 2 kênh điều chế độ rộng xung (PWM)… Hình MỤC LỤC-2 Pic18f4520 Thông số kĩ thuật: Nhà sản xuất: Microchip Kiểu gắn: SMD/SMT Lõi: PIC18 Kích thước bộ nhớ chương 32kB trình: Độ rộng bus dữ liệu 8 bit Độ phân giải ADC: 10 bit 10 Tần số đồng hồ tối đa: 40 MHz Số lượng I/O: 36 I/O Kích thước Dữ liệu RAM: 1.5 kB Điện áp cấp vận hành: 2 V to 5.5 V Nhiệt độ làm việc tối thiểu: - 40 C Nhiệt độ làm việc tối đa: + 85 C Sản phẩm: MCU Loại bộ nhớ chương trình: Flash Nhãn hiệu: Microchip Technology Loại RAM dữ liệu: RAM Kích thước ROM dữ liệu: 256 kB Loại ROM dữ liệu: Flash Số lượng kênh ADC: 13 Channel Số bộ hẹn giờ/bộ đếm: 1 Timer Điện áp cấp nguồn - Tối đa: 5.5 V Điện áp cấp nguồn - Tối 4.2 V thiểu: Thương hiệu: PIC Bảng CƠ SỞ LÝ THUYẾT -1: Thông số kĩ thuật PIC18F4520 1.3 Giới thiệu về chip DS1307 11 Hình MỤC LỤC-3 Sơ đồ chân DS1307 DS1307 là chip đồng hồ thời gian thực (RTC: Real-time clock), khái niệm thời gian thực ở đây được dùng với ý nghĩa thời gian tuyệt đối mà con người đang sử dụng, tình bằng giây, phút, giờ…DS1307 là một sản phẩm của Dallas Semiconductor (một công ty thuộc Maxim Integrated Products). Chip này có 7 thanh ghi 8-bit chứa thời gian là: giây, phút, giờ, thứ (trong tuần), ngày, tháng, năm. Ngoài ra DS1307 còn có 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống có thể dùng như RAM. DS1307 được đọc và ghi thông qua giao diện nối tiếp I2C (TWI của AVR) nên cấu tạo bên ngoài rất đơn giản.
DS1307 xuất hiện ở 2 gói SOIC và DIP có 8 chân như hình sau: Các chân của DS1307 được mô tả như sau: - X1 và X2: là 2 ngõ kết nối với 1 thạch anh 32.768KHz làm nguồn tạo dao động cho chip. - VBAT: cực dương của một nguồn pin 3V nuôi chip. - GND: chân mass chung cho cả pin 3V và Vcc. - Vcc: nguồn cho giao diện I2C, thường là 5V và dùng chung với vi điều khiển.
Chú ý là nếu Vcc không được cấp nguồn nhưng VBAT được cấp thì DS1307 vẫn đang hoạt động (nhưng không ghi và đọc được). - SQW/OUT: một ngõ phụ tạo xung vuông (Square Wave / Output Driver), tần số của xung được tạo có thể được lập trình. Như vậy chân này hầu như không liên quan đến chức năng của DS1307 là đồng hồ thời gian thực, chúng ta sẽ bỏ trống chân này khi nối mạch. 12 - SCL và SDA là 2 đường giao xung nhịp và dữ liệu của giao diện I2C mà chúng ta đã tìm hiểu trong bài TWI của AVR.
- Có thể kết nối DS1307 bằng một mạch điện đơn giản.4 Ngôn ngữ lập trình nhúng MPLAB IDE (Integrated Development Environment) cung cấp người dùng một chương trình để phát triển ứng dụng cho các vi điều khiển nhúng của Microchip. Qua môi trường phát triển này, người dùng có thể viết mã cho hệ thống nhúng. Họ cũng có khả năng chỉnh sửa và gỡ lỗi mã nguồn để đảm bảo rằng các ứng dụng sẽ được tích hợp vào các vi điều khiển mà không gặp sự cố. Người dùng được cung cấp các công cụ giúp họ thiết kế mạch vi điều khiển dựa trên vi điều khiển cụ thể sẽ được sử dụng bởi nhà phát triển.
Khi mạch đã được tạo ra, người dùng có thể tiếp tục phát triển firmware, đó là chương trình sẽ kiểm soát cách phần cứng thực hiện ứng dụng tích hợp. IDE cũng cung cấp một trình biên dịch và biên dịch mã nguồn, có thể chuyển đổi các kịch bản thành mã nhận diện được bởi phần cứng. 13 MPLAB IDE là đa nền tảng, điều này có nghĩa là nó có thể chạy trên các hệ thống Windows, Mac OS X và Linux. Hình CƠ SỞ LÝ THUYẾT -4 Phần mềm MPLAB IDE 1.5 Phần mềm thiết kế phần cứng Altium Designer là một phần mềm chuyên dụng trong lĩnh vực thiết kế PCB (Printed Circuit Board) và mạch điện tử.
Được phát triển bởi công ty Altium Hình MỤC LỤC-5 Phần mềm Altium 14 Limited, phần mềm này cung cấp một môi trường tích hợp cho việc thiết kế từ khâu concept đến sản xuất PCB. Với Altium Designer 21, Altium tiếp tục duy trì sự cân bằng hoàn hảo giữa thân thiện với người dùng và hiệu suất. Với các tính năng như định tuyến tương tác và DRC, cho phép bạn thiết kế PCB của mình với độ chính xác cao. Giao diện người dùng mới có thể tùy chỉnh theo sở thích của từng người dùng.
Khả năng 3-D đã được cải thiện sau phản hồi của người dùng và thiết kế ECAD của bạn cũng có thể được kiểm tra bằng tệp MCAD của vỏ bọc.6 Kết luận chương 1 Ở chương đã đưa ra kiến thức tổng quát về đồng hồ điện tử, cùng với cơ sở lý thuyết và các linh kiện cần thiết cho việc thiết kế một mô hình đồng hồ điện tử thông minh. Chương 2, chúng ta sẽ thiết kế phần cứng và thiết kế phần mềm cho mô hình đồng hồ điện tử này. THIẾT KẾ MÔ HÌNH ĐỒNG HỒ ĐIỆN TỬ 2.1 Mục đích yêu cầu 2.1 Các tính năng - Hiển thị LCD thời gian thực với bộ thời gian thực DS1307. - Có cài đặt thời gian bằng nút nhấn để thay đổi thời gian.2 Thông số kỹ thuật - Kích thước màn hình LCD 16x2.
- Dùng IC DS1307 để hiển thị thời gian thực và có nút nhấn để điều chỉnh thời gian. - Pin CMOS 3V dùng để cấp nguồn cho IC thời gian thực vẫn chạy đúng giờ ngay cả khi mất điện.3 Các yêu cầu cụ thể - Thiết kế, lắp ráp, đo kiểm thử phần cứng gồm: + Sử dụng nguồn 5V có nhiệm vụ cung cấp nguồn điện 5V cho mạch được hoạt động ổn định. + Khối vi điều khiển, khối nút nhấn, khối hiển thị LCD, khối thời gian thực. - Hiển thị trên màn hình LCD.
Có thể hiển thị được giờ, phút, giây ở hàng đầu tiên và hiển thị được thứ, ngày, tháng, năm ở hàng thứ 2. - Các nút nhấn có thể điều chỉnh được thời gian và điều chỉnh các qua lại giữa giờ, phút, thứ, ngày, tháng, năm. - Thiết kế phần mềm.(Vẽ lưu đồ thuật toán và viết chương trình trên MPLAB IDE) - Đánh giá kết quả thực nghiệm.2 Sơ đồ khối Hình MỤC LỤC-6 Lưu đồ khối toàn mạch 2.1 Khối nguồn Khối nguồn: Sử dụng nguồn cấp DC 5V có nhiệm vụ cung cấp nguồn điện 5V cho mạch được hoạt động ổn định. Hình MỤC LỤC-7 Khối nguồn 2.2 Khối vi xử lý 17 Khối vi xử lý: Sử dụng vi xử lý PIC18F4520.
Sử dụng các chân RB0, RB1 làm ngõ vào của 2 nút điều chỉnh. Chân RD0 làm chân RS, chân RD1 làm chân R/W và chân RD2 làm chân EN điều khiển cho LCD. 2 chân RC3 (SCL) và RC4 (SDA) được dùng để giao tiếp với DS1307. Nguồn cấp chính từ khối nguồn 5V.
Với nhiệm vụ chính là giao tiếp và điều khiển các khối khác thành một liên kết thực hiện các chức năng theo yêu cầu của mạch với chương trình được lập trình. Hình MỤC LỤC-8 Khối vi xử lý 2.3 Khối nút nhấn Khối nút nhấn: Các nút nhân SET1 SW, SET1 SW khi được nhấn sẽ kéo dẫn điện xuống mức 0. Với SW dùng để tăng giá giá trị thời gian, SW2 dùng để chọn chỉnh thời gian: ngày, tháng, năm, giờ, phút. RESET1 SW khi được nhấn sẽ reset chương trình.
18 Hình MỤC LỤC-9 Khối nút nhấn 2.4 Khối hiển thị LCD Khối hiển thị LCD: Màn hình LCD 16X2 ở chế độ 4 bit kết nối và được điều khiển bởi vi xử lý. Các chân 15 và 16 được cấp nguồn và cấp mass để sáng lên cho LCD. Biến trở 10K được dùng để chỉnh độ tương phản của màn hình. Màn hình giúp hiển thị các ký tự cơ bản trong bảng mã ASCII với 2 dòng và 16 cột.
Hình MỤC LỤC-10 Khối LCD 2.5 Khối thời gian thực Khối thời gian thực: sử dụng IC thời gian thực DS1307 với giao tiếp chuẩn I2C. Thạnh anh 32,768kHz giúp tạo giao động chuẩn thời gian cho IC thời gian 19 thực U2. Pin 3V dùng để cấp nguồn cho IC thời gian thực vẫn chạy đúng giờ ngay cả khi mất điện. Các điện trở kéo kên R1 và R2 có giá trị 10K.
Thời gian sẽ được chạy tự động trong U2: Hình MỤC LỤC-11 Khối thời gian thực 2.