1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo VI điều KHIỂN thiết kế mạch đồng hồ thời gian thực hiển thị giờ, phút, giây và ngày, tháng, năm trên LCD

32 4 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

Tiêu đề Báo cáo Vi điều Khiển Thiết kế Mạch Đồng Hồ Thời Gian Thực Hiển Thị Giờ, Phút, Giây Và Ngày, Tháng, Năm Trên LCD
Người hướng dẫn TS. Trần Công Thịnh
Trường học Trường Đại học Tôn Đức Thắng
Chuyên ngành Kỹ thuật vi điều khiển
Thể loại Báo cáo
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 32
Dung lượng 1,26 MB

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

Cấu trúc

  • I. GIỚI THIỆU NỘI DUNG ĐỀ TÀI (9)
  • II. NHIỆM VỤ VÀ PHÂN TÍCH NHIỆM VỤ (9)
    • 1. N HIỆM VỤ (9)
    • 2. P HÂN TÍCH NHIỆM VỤ (9)
  • III. TỔNG QUAN SƠ LƯỢC LÝ THUYẾT (10)
    • 1. PIC 16F877A (10)
    • 2. REAL TIME CLOCK DS1307 (13)
    • 3. LCD LMD16L (15)
    • 4. T HẠCH ANH (19)
    • 5. Đ IỆN TRỞ (19)
  • IV. THIẾT KẾ PHẦN THIẾT BỊ (20)
    • 1. M ẠCH VI ĐIỀU KHIỂN VÀ MẠCH THỜI GIAN THỰC (20)
    • 2. M ẠCH HIỂN THỊ LCD (0)
  • V. THIẾT KẾ PHẦN MỀM (0)
    • 1. L ƯU ĐỒ MÔ TẢ HOẠT ĐỘNG THIẾT BỊ (0)

Nội dung

- Chân số 25 cũng hoạt động như TX vì vậy nếu bạn muốn thực hiện giao tiếp nối tiếp thì nó sẽ được sử dụng để gửi dữ liệu nối tiếp.. - Chân 26 cũng hoạt động như RX, vì vậy nếu bạn muốn

Trang 1

KHOA ĐIỆN – ĐIỆN TỬ

BÁO CÁO VI ĐIỀU KHIỂN

THÀNH PHỐ HỒ CHÍ MINH, THÁNG 12 NĂM 2022

Trang 2

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG

KHOA ĐIỆN – ĐIỆN TỬ

GVHD: TS TRẦN CÔNG THỊNH

NHÓM SVTH : 08

THÀNH PHỐ HỒ CHÍ MINH, THÁNG 12 NĂM 2022

Trang 3

4 Viên Vĩ Hào 42001156 - Chuẩn bị, phân tích nội

dung về PIC 16F877A 100%

Trang 4

iii

LỜI CẢM ƠN

Lời đầu tiên, em xin cảm ơn đến TS Trần Công Thịnh người thầy đã tận tình chỉ dạy và dìu dắt nhóm em trong suốt thời gian học tập và thực hiện bài báo cáo này Cảm ơn những lời chia sẻ tận tình, tâm huyết của thầy đã giúp nhóm em hoàn thành bài báo cáo tốt nhất Đây chắc chắn sẽ là những kiến thức có giá trị sâu sắc, là hành trang để chúng em vững bước sau này

Bên cạnh đó, tôi cũng xin gửi lời tự cảm ơn đến những thành viên trong nhóm đã luôn đoàn kết và kiên trì trong suốt thời gian làm báo cáo Làm việc nhóm cùng nhau đã giúp khả năng tư duy và sáng tạo của mỗi người ngày càng phát triển và có thể làm bài báo cáo này một cách hiệu quả nhất và đạt đúng yêu cầu đưa ra

TP Hồ Chí Minh, ngày 5 tháng 12 năm 2022

Đại diện (Đã ký)

Nguyễn Thành Lan (Trưởng nhóm)

Trang 5

LỜI CAM ĐOAN

Tôi xin cam đoan đây là bài nghiên cứu của riêng nhóm tôi và được sự hướng dẫn khoa học của TS Trần Công Thịnh Các nội dung tự tìm hiểu, kết quả phân tích trong đề tài này là trung thực và chưa công bố dưới bất kỳ hình thức nào trước đây Những số liệu trong các bảng biểu phục vụ cho việc phân tích, nhận ét, đánh giá được chính nhóm tự thu thập từ các nguồn khác nhau có ghi x

rõ trong phần tài liệu tham khảo

Ngoài ra, trong báo cáo còn sử dụng một số nhận xét, đánh giá cũng như

số liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc

Nếu phát hiện có sự gian lận hay sao chép dưới bất kỳ hình thức nào

mình Trường Đại học Tôn Đức Thắng không liên quan đến những vi phạm tác

quyền, bản quyền do nhóm tôi gây ra trong quá trình thực hiện

TP Hồ Chí Minh, ngày 5 tháng 12 năm 2022

Đại diện (Đã Ký)

Nguyễn Thành Lan (Trưởng nhóm)

Trang 6

v

PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN

Phần xác nhận của GV hướng dẫn

_

Tp Hồ Chí Minh, ngày tháng năm 2022

Phần đánh giá của GV chấm bài

_

Tp Hồ Chí Minh, ngày tháng năm 2022

Trang 7

I GIỚI THIỆU NỘI DUNG ĐỀ TÀI 8

II NHIỆM VỤ VÀ PHÂN TÍCH NHIỆM VỤ .8

1 N HIỆM VỤ : 8

2 P HÂN TÍCH NHIỆM VỤ : 8

III TỔNG QUAN SƠ LƯỢC LÝ THUYẾT: 9

1 PIC 16F877A 9

a) Khái niệm: 9

b) Các thông số kỹ thuật: 9

c) T rình phiên dịch của PIC16F877A: 11

d) Cổng nối tiếp của PIC16F877A 11

e) Giao tiếp I2C của PIC16F877A 11

f) Ngắt PIC16F877A 11

2 REAL TIME CLOCK DS1307 12

a) Định nghĩa: 12

b) Một số tính năng quan trọng: 12

c) Các chân chức năng: 13

3 LCD LMD16L 14

a) Định nghĩa 14

b) Cấu tạo, chức năng 14

c) Nguyên lý hoạt động 16

d) Ứng dụng 17

4 T HẠCH ANH : 18

5 Đ IỆN TRỞ : 18

IV THIẾT KẾ PHẦN THIẾT BỊ 19

1 M ẠCH VI ĐIỀU KHIỂN VÀ MẠCH THỜI GIAN THỰC : 19

2 M ẠCH HIỂN THỊ LCD: 20

V THIẾT KẾ PHẦN MỀM 21

1 L ƯU ĐỒ MÔ TẢ HOẠT ĐỘNG THIẾT BỊ : 21

2 V IẾT CHƯƠNG TRÌNH : 21

Trang 8

vii

3 G IẢI THÍCH CHƯƠNG TRÌNH : 31

VI KẾT LUẬN: 31

Trang 9

I GIỚI THIỆU NỘI DUNG ĐỀ TÀI

Vấn đề 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 Cái hay khi ta làm đồng hồ đếm thời gian thực đó chính là chúng ta có thể biết thời gian hiện tại chính xác là bao nhiêu, cho dù khi chúng ta không cấp nguồn cho cái đồng hồ này chạy nhưng lúc sau bật nguồn lên nó vẫn chạy đúng vì IC đếm thời gian thực luôn luôn chạy bằng pin

II NHIỆM VỤ VÀ PHÂN TÍCH NHIỆM VỤ

Trang 10

-

III TỔNG QUAN SƠ LƯỢC LÝ THUYẾT:

1 PIC 16F877A

a) Khái niệm:

PIC16F877A là một Vi điều khiển PIC 40 chân và

được sử dụng hầu hết trong các dự án và ứng dụng

nhúng Nó có năm cổng bắt đầu từ cổng A đến cổng

E Nó có ba bộ định thời trong đó có 2 bộ định thời 8

bit và 1 bộ định thời là 16 Bit Nó hỗ trợ nhiều giao

thức giao tiếp như giao thức nối tiếp, giao thức song

song, giao thức I2C PIC16F877A hỗ trợ cả ngắt chân

Chọ n chân ngo i vi (PPS) ạ Không

Bộ tạo dao động bên trong Không

Trang 11

Độ phân gi i ADC tả ối đa (bit) 10

Số b chuyộ ển đổi DAC 0

Độ phân gi i DAC tả ối đa 0

Tham chiếu điện áp n i b ộ ộ Có

Bộ tạo dao động được điều khi n b ng s ể ằ ố 0

Nhiệt độ hoạt động tối thiểu (* C) -40

Nhiệt độ hoạt động tối đa (* C) 125

Điện áp hoạt động ti thi u (V) ể 2

Điện áp hoạt động tối đa (V) 5.5

Trang 12

c) Trình phiên dịch của PIC16F877A:

- Trình biên dịch chính thức của vi điều khiển PIC là trình biên dịch MPLAB C18,

có trên trang web chính thức của Microchip

- Chúng ta viết code trong trình biên dịch PIC và sau đó biên dịch nó Sau khi biên dịch, một file hex được tạo và chúng ta sẽ tải lên trong bộ vi điều khiển PIC

d) Cổng nối tiếp của PIC16F877A

- PIC16F877a có một cổng nối tiếp trong đó được sử dụng để giao tiếp dữ liệu

- Chân số 25 cũng hoạt động như TX vì vậy nếu bạn muốn thực hiện giao tiếp nối tiếp thì nó sẽ được sử dụng để gửi dữ liệu nối tiếp

- Chân 26 cũng hoạt động như RX, vì vậy nếu bạn muốn thực hiện giao tiếp nối tiếp thì nó sẽ được sử dụng để nhận dữ liệu nối tiếp

e) Giao tiếp I2C của PIC16F877A

- PIC16F877a cũng có một cổng I2C có thể dễ dàng thực hiện giao tiếp I2C + Chân số 18 hoạt động như SCL, viết tắt của Serial Clock Line

+ Chân số 23 hoạt động như SDA, là chữ viết tắt của Serial Data Line

- Bây giờ chúng ta có cổng nối tiếp và cổng I2C trong cổng C, vì vậy chúng ta có thể sử dụng cổng C như một cổng đơn giản nhưng cũng có thể thực hiện hai giao tiếp này với các chân của nó, vì vậy nó hoàn toàn phụ thuộc vào lập trình viên

f) Ngắt PIC16F877A

PIC16F877a có tổng cộng 8 nguồn ngắt Nguồn ngắt là một số sự kiện tạo ra ngắt, nguồn này có thể là bộ đếm thời gian như các ngắt được tạo sau mỗi 1 giây hoặc cũng có thể là sự kiện thay đổi trạng thái chân, chẳng hạn như nếu trạng thái chân bị thay đổi sau đó ngắt sẽ được tạo ra

Vì vậy, ngắt PIC16F877a có thể được tạo ra bằng 8 cách sau:

 Ngắt ngoài

 Ngắt bộ định thời (Timer0 / Timer1)

 Thay đổi trạng thái cổng B

Trang 13

 Cổng Slave Song song Đọc / Ghi

 Bộ chuyển đổi A / D

 Nhận / Truyền nối tiếp

 PWM (CCP1 / CCP2)

 Thao tác ghi EEPROM

2 REAL TIME CLOCK DS1307

a) Định nghĩa:

- Module DS1307 là một trong những module RTC giá cả phải chăng và được sử dụng phổ biến nhất Đây là một IC tích hợp cho thời gian bởi vì tính chính xác

về thời gian tuyệt đối cho thời gian : Thứ, ngày,tháng, năm, giờ, phút, giây

- DS1307 là chế tạo bởi Dallas Chip này có 7 thanh ghi 8 bit mỗi thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây

b) Một số tính năng quan trọng:

- Khả năng tạo sóng vuông có thể lập trình

- Dòng điện thấp, dưới 500mA trong chế độ sao lưu pin

- Khả năng thiết lập ngày đến năm 2100

- Sử dụng chuẩn giao tiếp I2C

- Module DS1307 sử dụng pin CR2023 3 volt Bộ nhớ EEPROM 24c32 nhúng trên mô-đun này có thể tiết kiệm 32kb dữ liệu

- Ngoài ra, các bạn có thể đo nhiệt độ môi trường bằng cách sử dụng cảm biến DS18B20 đã được tích hợp sẵn trên board mạch

-

DS1307 là một IC thời gian thực với nguồn cung cấp nhỏ, dùng để cập nhật thời gian và ngày tháng với 56 bytes SRAM Địa chỉ và dữ liệu đƣợc truyền nối tiếp qua 2 đường bus 2 chiều Nó cung cấp thông tin về giờ, phút,giây, thứ, ngày, tháng, năm Ngày cuối tháng sẽ tự động đƣợc điều chỉnh với các tháng nhỏ hơn 31 ngày, bao gồm cả việc tự động nhảy năm Đồng hồ có thể hoạt

Trang 14

động ở dạng 24h hoặc 12h với chỉ thị AM/PM DS1307 có một mạch cảm biến điện áp dùng để dò các điện áp lỗi và tự động đóng ngắt với nguồn pin cung cấp.

-

DS1307 hoạt động với vai trò slave trên đường bus nối tiếp Việc truy cập được thi hành với chỉ thị START và một mã thiết bị nhất định được cung cấp bởi địa chỉ các thanh ghi Tiếp theo đó các thanh ghi sẽ được truy cập liên tục đến khi chỉ thị STOP được thực thi

c) Các chân chức năng:

Sơ đồ chân DS1307

- X1X2: 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

- V BAT: 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

-

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

Trang 15

3 LCD LMD16L

a) Định nghĩa

LCD ( Liquid Crystal Dislay) viết tắt của màn hình tinh thể lỏng Nó là một loại mô-đun màn hình điện tử được sử dụng trong một loạt các ứng dụng như các mạch các thiết bị khác nhau như điện thoại di động, máy tính, tv

b) Cấu tạo, chức năng

- Điện áp hoạt động của màn hình LCD này là 4.7V-5.3V Nó bao gồm hai hàng trong đó mỗi hàng có thể tạo ra 16 ký tự

- Việc sử dụng dòng điện là 1mA không có đèn nền

- Mọi nhân vật đều có thể được tạo bằng hộp 5 × 8 pixel

- Bảng chữ cái & số trên màn hình LCD chữ và số

- Là màn hình có thể hoạt động trên hai chế độ như 4-bit & 8-bit

Trang 16

- Chúng có thể đạt được với Đèn nền xanh lam & xanh lục.

Các chân chức năng:

- 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 DR 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

- 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

Trang 17

c) Nguyên lý hoạt động

Mô-đun LCD 16x2 có một bộ hướng dẫn lệnh đặt trước Mỗi lệnh sẽ làm cho đun thực hiện một nhiệm vụ cụ thể Các lệnh thường được sử dụng và chức năng của chúng được thể hiện trong bản sau:

Trang 18

Khởi tạo LCD

Các bước phải được thực hiện để khởi tạo màn hình LCD được đưa ra dưới đây và các bước này là phổ biến cho hầu hết các ứng dụng:

- B1: Gửi 38H đến dòng dữ liệu 8 bit để khởi tạo

- B2: Gửi 0FH để bật LCD, con trỏ BẬT và con trỏ nhấp nháy ON

- B3:Gửi 06H để tăng vị trí con trỏ

- B4: Gửi 01H để xóa màn hình và trả về con trỏ

Đưa dữ liệu vào LCD

Các bước để gửi dữ liệu đến mô đun LCD được đưa ra dưới đây - Mô-đun LCD có các chân RS, R / W và E Chính trạng thái logic của các chân này làm cho mô-đun xác định xem đầu vào dữ liệu đã cho là lệnh hay dữ liệu được hiển thị

- Đặt R / W mức thấp

- Đặt RS = 0 nếu byte dữ liệu là lệnh và tạo RS = 1 nếu byte dữ liệu là dữ liệu sẽ được hiển thị

- Đặt byte dữ liệu trên thanh ghi dữ liệu

- Xung E từ cao xuống thấp

- Lặp lại các bước trên để gửi dữ liệu khác

d) Ứng dụng

Công nghệ màn hình tinh thể lỏng được ứng dụng rộng rãi ngày nay, Phổ biến nhất mà người dùng có thể thấy là trên những chiếc smartphone, máy vi tính, laptop hay tivi siêu mỏng

Đặc biệt trong lĩnh vực quảng cáo, trình chiếu chuyên dụng thì công nghệ tinh thể lỏng được ứng dụng trong sản xuất màn hình quảng cáo chuyên dụng

Trang 19

Tuy những công nghệ khác cao cấp hơn như OLED, AMOLED hay Super AMOLED đang phát triển mạnh mẽ nhưng công nghệ LCD vẫn đang đóng vai trò quan trọng nhất bởi giá thành sản xuất cũng như độ bền tối ưu

Trong thiết bị điện tử điện trở là một linh kiện quan trọng, chúng được

làm từ hợp chất cacbon và kim loại tuỳ theo tỷ lệ pha trộn mà người ta tạo

ra được các loại điện trở có trị số khác nhau

Trang 20

IV THIẾT KẾ PHẦN THIẾT BỊ

1 Mạch vi điều khiển và mạch thời gian thực:

Về mạch vi điều khiển, ta thấy:

- Được kích bởi thạch anh 32,768 KHz, các Port D được sử dụng để kết nối LCD

- Các Port A kết nối với mạch thời gian thực

Về mạch thời gian thực, ta thấy hai chân SDA và SCL lần lượt được nối vao hai chân SDA và SCL của VDK Mss của DS1307 chung với mass của VDK và cực âm của pin 3v

Trang 21

Cổng Slave Song song Đọc / Ghi

Trang 22

- Module DS1307 là một trong những module RTC giá cả phải chăng và được sử dụng phổ biến nhất Đây là một IC tích hợp cho thời gian bởi vì tính chính xác

về thời gian tuyệt đối cho thời gian : Thứ, ngày,tháng, năm, giờ, phút, giây

- DS1307 là chế tạo bởi Dallas Chip này có 7 thanh ghi 8 bit mỗi thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây

b) Một số tính năng quan trọng:

- Khả năng tạo sóng vuông có thể lập trình

- Dòng điện thấp, dưới 500mA trong chế độ sao lưu pin

- Khả năng thiết lập ngày đến năm 2100

- Sử dụng chuẩn giao tiếp I2C

- Module DS1307 sử dụng pin CR2023 3 volt Bộ nhớ EEPROM 24c32 nhúng trên mô- đun này có thể tiết kiệm 32kb dữ liệu

- Ngoài ra, các bạn có thể đo nhiệt độ môi trường bằng cách sử dụng cảm biến DS18B20 đã được tích hợp sẵn trên board mạch

- DS1307 là một IC thời gian thực với nguồn cung cấp nhỏ, dùng để cập nhật thời gian và ngày tháng với 56 bytes SRAM Địa chỉ và dữ liệu đƣợc truyền nối tiếp qua 2 đường bus 2 chiều Nó cung cấp thông tin về giờ, phút,giây, thứ, ngày, tháng, năm Ngày cuối tháng sẽ tự động đƣợc điều chỉnh với các tháng nhỏ hơn 31 ngày, bao gồm cả việc tự động nhảy năm Đồng hồ có thể hoạt

Ngày đăng: 28/12/2022, 15:37

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