1. Trang chủ
  2. » Tất cả

Báo cáo đồ án chuyên ngành điện tử viễn thông

58 29 7
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Thiết kế khóa điện tử dùng PIC18F4520 hiển thị lên LCD
Tác giả Nhóm
Người hướng dẫn Nguyễn Thị Thu Hà
Trường học Trường Đại học Công nghiệp Hà Nội
Chuyên ngành Điện tử Viễn thông
Thể loại Đồ án chuyên ngành điện tử viễn thông
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 58
Dung lượng 4,58 MB
File đính kèm Báo cáo đồ án chuyên ngành điện tử viễn thông.rar (4 MB)

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

Nội dung

ĐỒ ÁN CHUYÊN NGÀNH ĐIỆN TỬ VIỄN THÔNG ĐỀ TÀI Thiết kế khóa điện tử dùng PIC18F4520 hiển thị lên LCD Bằng cách sử dụng PIC18F4520 và các linh kiện. Ta có thể tạo ra thiết bị khóa điện tử. Đối với trong việc bảo vệ tài sản là hết sức cần thiết, thiết bị có thể chủ động mở khoá nếu mật mã đúng và ngược lại.

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

KHOA ĐIỆN TỬ - -

ĐỒ ÁN CHUYÊN NGÀNH ĐIỆN TỬ VIỄN THÔNG

ĐỀ TÀI Thiết kế khóa điện tử dùng PIC18F4520 hiển thị lên LCD

GVHD:

Nhóm:

Sinh viên:

Hà Nội - 2022NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

………

………

………

Trang 2

……….…………

………

………

………

………

………

………

… ………

… ………

………

………

………

………

………

………

………

………

… ………

………

………

………

………

Hà Nội, ngày… tháng… năm 2022 Giáo viên hướng dẫn

Trang 3

Nguyễn Thị Thu Hà

Trang 4

LỜI CẢM ƠN

Trong thời gian làm đồ án chuyên ngành điện tử viễn thông, nhóm chúng em đãnhận được nhiều sự giúp đỡ, đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cô vàbạn bè

Nhóm chúng em xin gửi lời cảm ơn chân thành đến cô Nguyễn Thị Thu Hà, người

đã tận tình hướng dẫn, chỉ bảo nhóm chúng em trong suốt quá trình làm đồ án.Nhóm chúng em cũng xin chân thành cảm ơn các thầy cô giáo trong trường ĐạiHọc Công Nghiệp Hà Nội nói chung, các thầy cô trong Khoa điện tử nói riêng đãdạy dỗ cho chúng em kiến thức về các môn đại cương cũng như các môn chuyênngành, điều đó giúp chúng em có được cơ sở lý thuyết vững vàng và tạo điều kiệntốt cho nhóm trong suốt quá trình học tập

Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của sinh viên,

đồ án này không thể tránh được những thiếu sót Nhóm chúng em rất mong nhậnđược sự chỉ bảo, đóng góp ý kiến của các thầy cô để nhóm có điều kiện bổ sung,nâng cao kiến thức, phục vụ tốt hơn cho môn học tiếp theo và công việc sau này.Nhóm 16 xin chân thành cảm ơn!

Hà Nội, ngày 5 tháng 11 năm 2022

Sinh viên

Nhóm 03

Trang 5

Đồ án trình bày về việc vận dụng những kiến thức đã học, để có thêm nhiều kiến thức áp dụng vào thực tế, môn học Đồ án chuyên ngành điện tử viễn thông là môn học quan trọng góp phần củng cố kiến thức về mạch điện tử, giúp cho sinh viên đánh giá được năng lực của bản thân, từ đó trau dồi thêm

kỹ năng cần thiết để vận dụng vào việc thiết kế mạch điện tử có tính ứng dụng thực tiễn Đồ án nhóm chúng em nhận là: “THIẾT KẾ KHÓA ĐIỆN TỬ DÙNG PIC18F4520 HIỂN THỊ LÊN LCD” Chúng em nhận đề tài và xác định những thông tin quan trọng cần tìm hiểu để hoàn thành công việc được giao Dưới sự hướng dẫn tận tình của giáo viên hướng dẫn cùng với sự cố gắng nỗ lực của bản thân, chúng em đã vận dụng kiến thức để thực hiện đúng

đề tài được phân công

Đồ án gồm những nội dung sau:

Trang 6

MỤC LỤC

TÓM TẮT ĐỒ ÁN 0

MỤC LỤC 1

DANH MỤC HÌNH ẢNH 3

DANH MỤC BẢNG BIỂU 4

MỞ ĐẦU 5

PHẦN 1 TỔNG QUAN VỀ KHÓA 7

1.1 Sự ra đời của khóa điện tử 7

1.2 Chức năng và tiện ích của khóa cửa thông minh 7

1.3 Những tiện ích của khóa cửa điện tử thông minh 7

1.4 Nội dung nghiên cứu 8

1.5 Kết luận chương 9

PHẦN 2 LẬP TRÌNH VI ĐIỀU KHIỂN VỚI LCD VÀ BÀN PHÍM 4X4 9

2.1 Khối vi điều khiển PIC18F4520 và công cụ lập trình 9

2.1.1 Giới thiệu PIC18F4520 9

2.1.2 Các thanh ghi của EEPROM 12

2.1.3 Các thanh ghi của bộ phát xung 14

2.1.4 Các thanh ghi của hoạt động Reset 17

2.1.5 Hoạt động vào/ra 19

2.1.6 Lệnh điều khiển vào/ra theo byte hoặc theo bit 21

2.2 Lập trình với LCD VÀ MA TRẬN PHÍM 23

2.2.1 Đặc điểm LCD 23

Trang 7

2.2.2 Lập trình với LCD 25

2.2.3 Bàn phím 4x4 27

PHẦN 3 THIẾT KẾ KHÓA ĐIỆN TỬ 29

3.1 Thiết kế phần cứng 29

3.1.1 Sơ đồ 29

3.1.1.1 Sơ đồ khối sản phẩm 29

3.1.1.2 Sơ đồ chi tiết 29

3.1.2 Mạch nguyên lý 33

3.1.3 Mạch in 34

3.1.4 Mạch in 3D 35

3.2 Mô phỏng trên phần mềm 35

3.3 Lưu đồ thuật toán 37

PHẦN 4 KẾT LUẬN 39

TÀI LIỆU THAM KHẢO 40

PHẦN 5 PHỤ LỤC 41

Hướng dẫn sử dụng 41

Cảnh báo về an toàn 41

Các thông tin hướng dẫn 41

Các thao tác sử dụng mô hình sản phẩm 42

Chương trình 43

Trang 8

DANH MỤC HÌNH ẢNH

Hình 2.1.1.2: Phân bổ địa chỉ của các thanh ghi chức năng đặc biệt SFR 8

Hình 2.1.1.1: Sơ đồ chân PIC18F4520 8

Hình 2.1.1.3: Tổ chức bộ nhớ chương trình và ngăn xếp 9

Hình 2.1.6.1: Công cụ lập trình MPLAB IDE 19

Hình 2.1.6.2: PICkit và phần mềm MPLAB ICD 20

Hình 2.1.6.3: Kết nối mạch nạp PIC KIT 2 20

Hình 2.2.1.1: Sơ đồ chân LCD 21

Hình 2.2.3.1:Ma trận phím 4x4 24

Hình 3.1.1.1: Sơ đồ khối sản phẩm 26

Hình 3.1.2.1: Mạch nguyên lý 27

Hình 3.1.3.1: Mạch in 28

Hình 3.1.4.1: Mạch in 3D 29

Hình 3.2.1: Mô phỏng trên phần mềm Proteus 29

Hình 3.3.1: Lưu đô chương trình chính 30

Hình 3.3.2: Lưu đồ chương trình mở khóa 31

Hình 3.3.3: Lưu đồ chương trình đổi mật khẩu 31

Trang 9

DANH MỤC BẢNG BIỂU

Bảng 2.1.1.0.1: Thông số kĩ thuật PIC18F4520 11

Bảng 2.1.2.0.1: Thanh ghi điều khiển EEPROM 1 : EECON1 11

Bảng 2.1.1.2: Ghi chú của thanh ghi EECON1 12

Bảng 2.1.3.1: Thanh ghi chuyển chế độ bộ phát xung: OSCTUNE 13

Bảng 2.1.3.2: Ghi chú của thanh ghi OSCTUNE 13

Bảng 2.1.3.3: Thanh ghi điều khiển bộ phát xung: OSCCON 14

Bảng 2.1.3.4: Thanh ghi cấu hình 1 byte cao:CONFIG1H 15

Bảng 2.1.5.1: Các thanh ghi liên quan đến PORTA 18

Bảng 2.1.5.2: Các thanh ghi liên quan đến PORTB 18

Bảng 2.1.5.3: Các thanh ghi liên quan đến PORTC 19

Bảng 2.1.5.4: Các thanh ghi liên quan đến PORTD. 19

Bảng 2.1.5.5: Các thanh ghi liên quan đến PORTE 19

Bảng 2.2.1.1: Chức năng các chân LCD 23

Bảng 2.2.2.1: Bảng mã lệnh 24

Trang 10

MỞ ĐẦU

Lý do chọn đề tài

Ngày nay, sự phát triển của khoa học công nghệ luôn gắn liền với sự phát triển của kinh tế, xã hội Trong đó, ngành điện tử viễn thông luôn giữ vững tốc độ phát triển cao và ngày càng đi sâu vào trong đời sống và lĩnh vực bảo mật là mảng lớn luôn được mọi người quan tâm Vì vậy để làm quen với việc thiết kế mạch nhóm em đã chọn đề tài “ Thiết kế khóa điện tử dùng PIC18F4520 hiển thị lên LCD ” để nghiên cứu và thực hiện.

Mục đích thực hiện đề tài

Bằng cách sử dụng PIC18F4520 và các linh kiện Ta có thể tạo ra thiết

bị khóa điện tử Đối với trong việc bảo vệ tài sản là hết sức cần thiết, thiết bị

có thể chủ động mở khoá nếu mật mã đúng và ngược lại.

Nhiệm vụ đề tài

Thiết kế khóa số điện tử Sử dụng PIC18F4520 và ma trận phím để nhập mật mã và xuất dữ liệu ra LCD.

Tính ứng dụng

- Ứng dụng vào mỗi gia đình.

- Giữ an toàn cho những ngôi nhà , tài sản , tài liệu mật, giấy tờ.

Phương pháp nghiên cứu

- Phương pháp thiết kế và mô phỏng dựa trên phần mềm Proteus và thiết

kế mạch điện trên Altium.

Cấu trúc của báo cáo

Trong chương này, đồ án đã trình bày cơ sở lý thuyết cho các nội dung nghiên cứu của luận án bao gồm các nội dung về khóa điện tử Ở cuối chương

Trang 11

trình bày hướng nghiên cứu của đồ án và thảo luận một số kết quả nghiên cứu liên quan từ đó làm rõ hơn nội dung nghiên cứu của đồ án.

Trang 12

PHẦN 1 TỔNG QUAN VỀ KHÓA 1.1 Sự ra đời của khóa điện tử

Cuộc cách mạng về khóa cửa chỉ thực sự bắt đầu khi bùng nổ cuộc cách mạng công nghiệp Cùng với sự xuất hiện của các loại máy móc Sự ra đời của lò xo, ổ bi, các khớp ren Công nghệ tiện, đục, đúc kim loại,… Thì

độ tinh vi của khóa cửa được đưa tới một tầm cao mới Khóa cửa trở nên khó mở hơn bao giờ hết, nhỏ gọn hơn bao giờ hết Cùng với nền công nghiệp sản xuất hàng hóa lớn, khóa cửa trở thành một loại hàng hóa phổ cập Một mặt hàng thiết yếu mà nhà nhà đều có Loại khóa truyền thống này vẫn tiếp tục tồn tại cho đến ngày nay.

Khoảng hai thập kỷ trở lại đây, thế giới chứng kiến một cuộc cách mạng điện tử, tự động hóa rầm rộ trên tất cả mọi lĩnh vực Và khóa cửa cũng không phải là ngoại lệ Khóa cửa – một sản phẩm có khả năng bảo vệ tài sản không thể nằm ngoài luồng chảy này, liên tục được cập nhật, phát triển để có thể theo kịp thời đại, nâng cao độ tin cậy đối với người dùng Với ưu thế về

độ tiện dụng và an toàn cao, khóa cửa điện tử chính thức xuất hiện Thay vì dùng chìa như khóa truyền thống, khóa cửa điện tử dùng mã số, thẻ từ hoặc vân tay để mở khóa.

1.2 Chức năng và tiện ích của khóa cửa thông minh

Khóa cửa thông minh có nhiều chức năng và tiện ích được nhà sản xuất phát minh và ứng dụng một cách hiệu quả như: đèn led để sử dụng trong bóng tối, quét mã vân tay, quét võng mạc, tích hợp chuông báo động,

1.3 Những tiện ích của khóa cửa điện tử thông minh

- Tiện ích dễ dàng thấy được nhất chính là tránh được việc làm mất chìa khóa, chìa khóa thường tương đối nhỏ gọn nhưng cũng vì thế nên dễ bị rơi mất, với khóa thông minh, bạn không cần lo mất chìa khóa, cũng không cần loay hoay tìm kiếm chìa khóa mỗi khi muốn mở cửa.

Trang 13

- Người dùng không cần mất thời gian và tiền bạc làm thêm bản sao chìa khóa, những gì cần làm là chia sẻ mã khóa qua điện thoại hay email.

- Khóa thông minh được làm bằng vật liệu chắc chắn và có khả năng chịu sự ăn mòn tốt Độ bền của khóa cũng cao hơn khóa truyền thống bởi không cần phải tác động vật lý nhiều.

- Tự động khóa khi cửa đóng.

- Hoạt động với nguồn điện riêng.

- Một vài loại khóa thông minh giúp người dùng có thể kiểm soát, xem được hình ảnh và lưu trữ dữ liệu về người ra vào nên có thể kiểm soát được tình trạng an ninh có không gian.

- Khóa cửa thông minh có thiết kế sang trọng, đa dạng, phù hợp với nhiều phong cách kiến trúc khác nhau.

- Dễ dàng thiết lập, cài đặt loại mã khóa phù hợp nhất.

1.4 Nội dung nghiên cứu

 Yêu cầu:

- Yêu cầu, tính năng sản phẩm.

- Sử dụng vi điều khiển PIC18F4520.

- Khóa cửa bằng mật khẩu sử dụng bàn phím 4x4.

- Nhập mật khẩu và hiển thị trên màn hình LCD16x2.

- Cài đặt được mật khẩu và khi nhập đúng mật khẩu thì cho phép mở khóa, khi nhập sai mật khẩu thì báo lỗi.

- Chức năng: Khóa cửa và bảo vệ ngôi nhà.

- Đầu vào: Nhập mật khẩu trên ma trận phím 4x4.

- Đầu ra: Hiển thị thông báo trên màn hình LCD16x2.

 Yêu cầu ràng buộc

- Nguồn cấp điện cho mạch 12V xoay chiều, hạ áp và ổn áp 5V

Trang 14

- Kích thước mạch điện (dài x rộng): không quá 30x30 cm.

- Trọng lượng: không quá 2 kg.

1.5 Kết luận chương

Trong chương này, báo cáo đã trình bày cơ sở lý thuyết cho các nội dung nghiên cứu của báo cáo bao gồm các nội dung về sự ra đời của khóa điện tử, các chức năng và tiện ích của khóa điện tử đem lại cho chúng ta.

PHẦN 2 LẬP TRÌNH VI ĐIỀU KHIỂN VỚI LCD VÀ BÀN PHÍM 4X4 2.1 Khối vi điều khiển PIC18F4520 và công cụ lập trình

2.1.1 Giới thiệu PIC18F4520

PIC18F4520 là một chip 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 bit (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)……

Trang 16

Tổ chức bộ nhớ

- Thông số cơ bản của Chip

Hình 2.1.1.3: Tổ chức bộ nhớ chương trình và ngăn xếp

Trang 17

Nhà sản xuất Microchip

Kích thước bộ nhớ chương trình 32KB (16K x 16)

Nhiệt độ làm việc tối thiểu -40 oC

Nhiệt độ làm việc tối đa +85 oC

Loại bộ nhớ chương trình Flash

Bảng 2.1.1.0.1: Thông số kĩ thuật PIC18F4520

2.1.2 Các thanh ghi của EEPROM

- Thanh ghi điều khiển EEPROM 1 : EECON1

Bảng 2.1.2.0.2: Thanh ghi điều khiển EEPROM 1 : EECON1

Trang 18

‘1’ = Được thiết lập ‘0’ = Được xóa -x = Reset không xác định

Bảng 2.1.1.3: Ghi chú của thanh ghi EECON1

Bit 7 EEPGD: Bit lựa chọn bộ nhớ dữ liệu EEPROM hay bộ nhớ chương trình

Flash

1 = Truy cập bộ nhớ chương trình Flash

0 = Truy cập bộ nhớ dữ liệu EEPROM

Bit 6 CFGS: Bit lựa chọn cấu hình hoặc bộ nhớ chương trình Flash/dữ liệu

EEPROM

1 = Truy cập thanh ghi cấu hình

0 = Truy cập bộ nhớ chương trình Flash hoặc dữ liệu EEPROM

Bit 5 Không sử dụng, đọc trả về giá trị ‘0’

Bit 4 FREE: Bit cho phép xóa hàng bộ nhớ Flash

1 = Xóa hàng bộ nhớ chương trình được thiết lập, địa chỉ chứa trong thanh ghiTBLPTR, được xóa từ lệnh WR kê tiếp

0 = Chỉ thực hiện ghi

Bit 3 WRERR: Bit cờ lỗi bộ nhớ chương trình Flash/ bộ nhớ dữ liệu EEPROM

1 = Lỗi hoạt động ghi (hoạt động ghi bị kết thúc trước)

0 = Ghi hoàn thành

Bit 2 WREN: Bit cho phép ghi bộ nhớ chương trình Flash / Dữ liệu EEPROM

1 = Cho phép ghi vào bộ nhớ chương trình Flash /dữ liệu EEPROM

0 = Không cho phép ghi

Bit 1 WR: Bit điều khiển ghi

1 = Khởi tạo quá trình xóa/ghi bộ nhớ dữ liệu EEPROM hoặc xóa bộ nhớ chươngtrình

hoặc ghi bộ nhớ chương trình (Được xóa bằng phần cứng khi việc ghi hoàn thành.Thiết lập được bằng phần mềm nhưng không được xóa)

0 = Quá trình ghi hoàn thanh

Bit 0 RD: Bit điều khiển đọc

1 = Khởi tạo quá trình đọc bộ nhớ EEPROM ( Đọc mất một chu kỳ máy Bit RDđược

Trang 19

xóa bằng phần cứng Thiết lập được bằng phần mềm nhưng không được xóa BitRD

không được thiết lập khi EEPGD = 1 hoặc CFGS = 1.)

0 = Không khởi tạo quá trình đọc EEPROM

- Thanh ghi điều khiển EEPROM 2 : EECON2

Thanh ghi EECON2 không phải là thanh vật lý, nó được dành riêng cho việc ghi vàxóa bộ nhớ Đọc EECON2 sẽ được ‘0’

- Thanh ghi dữ liệu EEPROM: EEDATA

Thanh ghi EEDATA có 8 bit, là thanh ghi đệm dữ liệu cho bộ nhớ dữ liệuEEPROM,

được sử dụng để truy cập vào dữ liệu của bộ nhớ (Cho phép đọc ghi bằng phầnmềm,

mỗi ô nhớ của EEPROM có 8 bit)

- Thanh ghi địa chỉ EEPROM: EEADR

Thanh ghi EEADR có 8 bit, là thanh ghi của bộ nhớ dữ liệu EEPROM 8 bit củathanh ghi EEADR được sử dụng để địa chỉ hóa 256 ô nhớ của EEPROM từ 00h đếnFFh

2.1.3 Các thanh ghi của bộ phát xung

- Thanh ghi chuyển chế độ bộ phát xung: OSCTUNE

Bảng 2.1.3.4: Thanh ghi chuyển chế độ bộ phát xung: OSCTUNE

Bảng 2.1.3.5: Ghi chú của thanh ghi OSCTUNE

Bit 7 INTSRC: Bit lựa chọn nguồn xung nội tần số thấp

Trang 20

1 = Chọn tần số 31.25 kHz từ bộ chia tần Postscaler (8 MHz INTOSC chia 256)

0 = Chọn tần số 31 kHz từ bộ dao động nội INTRC

Bit 6 PLLEN: Bit lựa chọn bộ nhân PLL cho chế độ INTOSC

1 = Cho phép xung từ INTOSC qua bộ nhân tần số PLL (chỉ sử dụng với tần số 4MHz

và 8 MHz)

0 = Không cho phép PLL

Bit 5 Không sử dụng: Đọc được ‘0’

Bit 4-0 TUN4:TUN0: Bit chuyển chế độ tần số

- Thanh ghi điều khiển bộ phát xung OSCCON

Bảng 2.1.3.6: Thanh ghi điều khiển bộ phát xung: OSCCON

Bit 7 IDLEN: Bit cho phép chế độ Idle

1 = Chuyển sang chế độ Idle bằng lệnh SLEEP

0 = Chuyển sang chế độ Sleep bằng lệnh SLEEP

10

Bit 6-4 IRCF2:IRCF0: Các bit lựa chọn hệ số chia bộ phát cung nội INTOSC

111 = 8 MHz (xung trực tiếp từ INTOSC)

110 = 4 MHz

101 = 2 MHz

100 = 1 MHz (tần số mặc định khi Reset)

011 = 500 kHz

Trang 21

010 = 250 kHz

001 = 125 kHz

000 = 31 kHz (xung từ INTOSC/256 hoặc trực tiếp từ INTRC)

Bit 3 OSTS: Bit trạng thái bộ bộ định thời khởi động (Oscillator Start-up Timer)

1 = Kết thúc thời gian chờ khởi động từ bộ OST; bộ phát xung chính hoạt động

0 = Đang đếm thời gian khởi động; bộ phát xung chính chưa hoạt động

Bit 2 IOFS: Bit báo sự ổn định tín hiệu bộ phát xung nội INTOSC

1 = Bộ phát xung nội INTOSC ở trạng thái ổn định

0 = Bộ phát xung nội INTOSC chưa ổn định

Bit 1-0 SCS1:SCS0: Bit lựa chọn nguồn xung cho hệ thống

1x = Nguồn hệ thống từ bộ dao động nội

01 = Nguồn xung phụ, nối qua các chân của Timer1(Secondary oscillator)

00 = Nguồn xung chính qua các chân OSC1, OSC2 (Primary oscillator)

- Thanh ghi cấu hình 1 byte cao: CONFIG1H

Bảng 2.1.3.7: Thanh ghi cấu hình 1 byte cao:CONFIG1H

Bit 7 IESO: Bit cho phép luân phiên bộ phát xung nội/ngoại

Bit 5-4 không sử dụng: đọc sẽ được ‘0’

Bit 3-0 FOSC3:FOSC0: Bit lựa chọn bộ phát xung

11xx = Chế độ phát xung RC ngoài, chức năng phát xung CLKO trên chân RA6101x = Chế độ phát xung RC ngoài, chức năng phát xung CLKO trên chân RA6

1001 = Chế độ phát xung nội, chức năng phát xung CLKO trên chân RA6, vào/ratrên

Trang 22

chân RA7

1000 = Chế độ phát xung nội, vào/ra trên chân RA6 và RA7

0111 = Chế độ dao động RC ngoài, vào/ra trên chân RA6

0110 = Chế độ HS, cho phép PLL (xung hệ thống được nhân 4)

0101 = Chế độ EC, vào/ra trên chân RA6

0100 = Chế độ EC, phát xung trên chân RA6

0011 = Chế độ phát xung RC ngoài, chức năng phát xung CLKO trên chân RA6

0010 = Chế độ HS

0001 = Chế độ XT

0000 = Chế độ LP

2.1.4 Các thanh ghi của hoạt động Reset

- Thanh ghi điều khiển Reset: RCON

Bit 7 IPEN: Bit cho phép ưu tiên ngắt

1 = Cho phép ưu tiên ngắt

0 = Không cho phép ưu tiên ngắt

Bit 6 SBOREN: Bit cho phép reset BOR bằng phần mềm

Nếu BOREN1:BOREN0 = 01:

1 = Cho phép reset BOR

0 = Không cho phép reset BOR

Nếu BOREN1:BOREN0 = 00, 10 or 11:

Không được sử dụng, đọc sẽ được ‘0’

Bit 5 Không được sử dụng: Đọc sẽ được ‘0’

Bit 4 RI: Bit cờ lệnh RESET

1 = Lệnh RESET không được thực hiện

0 = Lệnh RESET được thực hiện (phải được thiết lập sau khi xảy ra ngắt BOR)

Bit 3 TO: Bit cờ báo Watchdog Time-out (thời gian đặt cho bộ WDT)

1 = Thiết lâp khi bật nguồn (power-up), lệnh CLRWDT hoặc lệnh SLEEP

0 = Xảy ra sự kiện WDT (yêu cầu reset hệ thống bằng WDT)

Bit 2 PD: Bit cờ phát hiện ngắt nguồn

1 = Thiết lập khi bật nguồn (power-up) hoặc lệnh CLRWDT

0 = Khi thực hiện lệnh SLEEP

Trang 23

Bit 1 POR: Bit trạng thái reset bật nguồn POR (Power-on Reset)

1 = Không xảy ra hiện tượng bật nguồn

0 = Xảy ra hiện tượng bật nguồn (phải được đặt bằng ‘1’ sau ngắt khi xảy ra resetPOR)

Bit 0 BOR: Bit trạng thái reset sụt nguồn BOR (Brown-out Reset)

1 = Không xảy ra hiện tượng sụt nguồn

0 = Xảy ra hiện tượng sụt nguồn (phải được đặt bằng ‘1’ sau ngắt khi xảy ra resetBOR)

- Thanh ghi cầu hình 3 byte cao: CONFIG3H

Bit 7 MCLRE: Bit cho phép reset trên chân MCLR/RE3

1 = Là chân reset MCLR

0 = Là chân vào/ra RE3

Bit 6-3 Không được sử dụng: Đọc sẽ được ‘0’

Bit 2 LPT1OSC: Bit cho phép bộ phát xung LPT1(Low-Power Timer1)

1 = Cấu hình Timer1 hoạt động ở điện áp thấp (low-Power)

0 = Cấu hình Timer1 hoạt động ở điện áp cao (higher power)

Bit 1 PBADEN: Bit cho phép A/D PORTB

(Ảnh hưởng đến thanh ghi ADCON1 khi Reset)

1 = Các chân PORTB<4:0> được cấu hình là vào/ra tương tự khi Reset

0 = Các chân PORTB<4:0> được cấu hình là vào/ra số khi Reset

Bit 0 CCP2MX: Bit MUX CCP2

1 = CCP2 nối với RC1

0 = CCP2 nối với RB3

- Thanh ghi cầu hình 2 byte thấp: CONFIG2L

Bit 7-5 Unimplemented: Đọc được ‘0’

Bit 4-3 BORV1:BORV0: Bit chọn điện áp Reset BOR (Brown-out Reset)

Trang 24

10 = BOR hoạt động ở chế độ phần cứng và chạy ở chế độ Run và Idle, không sửdụng

Tên Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

PORTA RA7 RA6 RA5 RA4 RA3 RA2 RA1 RA0 LATA LATA7 LATA6 Thanh ghi chốt

dữ liệu PORTA TRISA TRISA7 TRISA6

Thanh ghi hướng dữ liệu PORTA

ADCON

1 — — VCFG1 VCFG0

PCFG 3

PCFG 2

PCFG 1

PCFG 0 CMCON C2OUT C1OUT C2INV C1INV CIS CM2 CM1 CM0 CVRCO

N CVREN CVROE CVRR CVRSS CVR3 CVR2 CVR1

CVR 0

Bảng 2.1.5.8: Các thanh ghi liên quan đến PORTA

Tên Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit

0

PORTB RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 LATB

INTCON GIE/GIEH PEIE/

GIEL TMR0IE INT0IE RBIE

TMR0I F

INT0I

F RBIF

Trang 25

2 RBPU INTEDG0

INTEDG 1

INTEDG

TMR0I

P — RBIPINTCON

3 INT2IP INT1IP — INT2IE

INT1I

INT2I F

INT1 IF ADCON

1 — — VCFG1 VCFG0

PCFG

3 PCFG2

PCFG 1

PCF G0

Bảng 2.1.5.9: Các thanh ghi liên quan đến PORTB

Trang 26

Tên Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit

0

PORTC RC7 RC6 RC5 RC4 RC3 RC2 RC1 RC0 LATC

Thanh ghi chốt dữ liệu

của PORTC (Chốt dữ liệu

đọc ghi)

TRISC Thanh ghi chọn hướng

dữ liệu của PORTC

Bảng 2.1.5.10: Các thanh ghi liên quan đến PORTC

Tên Bit 7 Bit

6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

PORTD RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0

LATD

Thanh ghi chốt dữ liệu của PORTD (Chốt dữ liệu đọc ghi)

TRISD

Thanh ghi chọn hướng dữ liệu của PORTD TRISE(1) IBF OBF IBOV PSPMOD

E — TRISE2 TRISE1

TRISE 0 CCP1CON P1M1 P1M

0

DC1B

1 DC1B0

CCP1M 3

CCP1M 2

CCP1M 1

CCP1 M0

Bảng 2.1.5.11: Các thanh ghi liên quan đến PORTD.

Tên Bit

7

Bit

6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

PORTE — — — — RE3 RE2 RE1 RE0

Trang 27

LATE(2) — — — — —

Thanh ghi xuất dữ liệu LATE

TRISE IBF OBF IBOV PSPMODE — TRISE2 TRISE1 TRISE

0 ADCON

1 — — VCFG1 VCFG0 PCFG3 PCFG2 PCFG1

PCFG 0

Bảng 2.1.5.12: Các thanh ghi liên quan đến PORTE

2.1.6 Lệnh điều khiển vào/ra theo byte hoặc theo bit

- Lệnh điều khiển đọc dữ liệu theo byte

x = PORTD; // x là một biến kiểu byte

- Lệnh điều khiển ghi dữ theo byte

PORTD = x; // x là một biến kiểu byte

- Lệnh điều khiển đọc dữ liệu theo bit

x = PORTDbits.RD0; // x là một biến kiểu bit

Hoặc:

#define SW PORTBbits.RB2 // định nghĩa RB2 = SW

x = SW; // lệnh đọc

- Lệnh điều khiển ghi dữ theo bit

PORTDbits.RD0 = x; // x là một biến kiểu bit

Trang 28

Mạch nạp chương trình cho PIC

Microchip cung cấp các dòng sản phẩm bao gồm: MPLAB ICE2, MPLAB ICE3,MPLAB REAL ICE, PICKIT 2, PIC KIT 3

Hình 2.1.6.5: PICkit và phần mềm MPLAB ICD

Hình 2.1.6.4: Công cụ lập trình MPLAB IDE

Trang 29

Hình 2.1.6.6: Kết nối mạch nạp PIC KIT 2

2.2 Lập trình với LCD VÀ MA TRẬN PHÍM

2.2.1 Đặc điểm LCD

Giới thiệu LCD

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

Sơ đồ chân và các chức năng

Chúng còn giúp ta cấu hình ở chế độ đọc hoặc ghi

Trang 30

Hình 2.2.1.7: Sơ đồ chân LCD

Ngày đăng: 18/01/2023, 15:09

TỪ KHÓA LIÊN QUAN

w