- 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 1KHOA Đ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 2TRƯỜ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 34 Viên Vĩ Hào 42001156 - Chuẩn bị, phân tích nội
dung về PIC 16F877A 100%
Trang 4iii
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 5LỜ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 6v
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 7I 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 8vii
3 G IẢI THÍCH CHƯƠNG TRÌNH : 31
VI KẾT LUẬN: 31
Trang 9I 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 tối thi u (V) ể 2
Điện áp hoạt động tối đa (V) 5.5
Trang 12c) 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 thic) Các chân chức năng:
Sơ đồ chân DS1307
- 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
- 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úngta đã tìm hiểu trong bài TWI của AVR
Trang 153 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 17c) 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 18Khở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 19Tuy 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 20IV 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