đồ án vi xử lý 8051 LCD

77 1.4K 8
đồ án vi xử lý 8051 LCD

Đ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

đồ án vi xử lý 8051 LCD

Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Mục lụcc lục lụcc Lời nói đầu Chương 1: CƠ SỞ LÝ THUYẾT I Vi điều khiển 89C51: Cấu tạo: Cấu trúc nhớ: Cấu trúc Port: 4 Các ngõ tín hiệu: 5 Lập trình xử lý ngắt: a Ngắt timer/couter: b Ngắt định thời: II LCD: Ghép nối vi điều khiển với LCD 16x2: Nguyên lí hoạt động LCD: Bảng mã lệnh LCD: Chương 2:THIẾT KẾ MẠCH VÀ THUẬT TOÁN 11 I Danh sách biến: 11 II Các chương trình con: 14 Hàm running(): 14 Menu: .17 Hẹn giờ: 20 Cài đặt: 23 Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Chương 3: CODE HOÀN CHỈNH 33 Chương 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .77 I Ưu nhược điểm chương trình 77 II Hướng phát triển .77 Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Lời nói đầu Ngày nay, vi điều khiển có những ứng dụng rộng rãi thâm nhập ngày nhiều lĩnh vực đời sống xã hội Hầu hết, thiết bị kỹ thuật từ phức tạp cho đến đơn giản thiết bị điều khiển tự động, thiết bị văn phòng cho đến thiết bị gia đình có dùng vi điều khiển Xuất phát từ thực tế đó, mơn học kỹ thuật vi điều khiển môn học thiếu bất kỳ sinh viên trường kỹ thuật sinh viên khoa Điện tử viễn thông, Công nghệ thông tin… Không chỉ cung cấp cho sinh viên kiến thức vi điều khiển để xây dựng nên những hệ thống thiết bị kỹ thuật đại Mà còn môn học để hiểu rõ chất việc xử lý số liệu tính tốn tờn từng giây, từng phút hàng triệu triệu vi xử lý, vi điều khiển khắp thế giới Đem đến nhìn sâu sắc hiểu biết sâu rộng thế giới tin học, góp phần tạo nên sự say mê sáng tạo cho mỡi sinh viên u thích mơn khoa học kỹ thuật Đồ án môn học Kỹ thuật vi xử lý dựa việc sử dụng vi điều khiển 8051 cũng khơng nằm ngồi mục đích nâng cao sự hiểu biết, củng cố lý thuyết cho mỗi sinh viên Tạo cho sinh viên tinh thần làm việc nhóm để đạt được mục đích chung: Làm đờ án hiệu quả, chất lượng! Nhóm thực Trần Anh Tuấn Lương Văn Bình Dương Hữu Đức Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Chương 1: CƠ SỞ LÝ THUYẾT I Vi điều khiển 89C51: Cấu tạo: Sơ đồ chân 89C51 Cấu trúc nhớ: o Có 4kb nhớ FLASH ROM bên dùng để lưu chương trình điều khiển o Có 128 byte RAM nôi o Port xuất/ nhập bit o Có khả giao tiếp truyền dữ liệu nối tiếp o Có khả giao tiếp truyền dữ liệu nối tiếp o Có thể giao tiếp 64Kb nhớ bên ngồi dùng để lưu chương trình điều khiển o Có thể giao tiếp với 64KB nhớ bên ngồi dùng để lưu trữ dữ liệu o Có 210bit truy xuất từng bit Có lệnh xử lý bit Cấu trúc Port: o Port 0:  Port port có chứ với số thứ tự chân 32-39  Trong hệ thống điều khiển đơn giản sử dụng nhớ bên không dùng nhớ mở rộng bên ngồi port được dùng làm điều khiển IO(Input-Output) Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy  Trong hệ thống điều khiển lớn sử dụng nhớ mở rộng bên ngồi port có chứ địa chỉ bú dữ liệu AD7- AD0 (Addresss: địa chỉ, Data: dữ liệu) o Port 1:  Port với số thứ tụ chân 1-8 Port chỉ có chức dùng làm đường điều khiển xuất nhập IO, port kkhoong chỉ có chứ khác o Port 2:  Port port có chức với số thứ tự chân 21-28  Trong hệ thống điệu khiển đơn giản sử dụng nhớ bên khơng dùng nhớ mở rộng bên ngồi port được dùng làm điều khiển IO Trong hệ thông điều khiển lớn sử dụng nhớ mở rộng bên ngồi port chứ địa chỉ cao A8-A15 o Port3:  Port port có với số thứ tự 10-17 Các chân port có nhiều chức , cơng dụng chuyển đổi có lien hệ với đặc tính đặc biệt 89C51 B Tên P3.0 RxD Chức chuyển đổi Ngõ vào nhận dữ liệu nối tiếp P3.1 TxD P3.2 0INT Ngõ xuất dữ liệu nối tiếp Ngõ vào ngắt cứng thứ Ngõ vào ngắt cứng thứ P3.3 1INT T0 Ngõ vào timer/counter thứ Ngõ vào timer/counter thứ Các ngõ tín hiệu: o PSEN ngõ tín hiệu(Program store enable):  PSEN tín hiệu ngõ chân 29 có tác dụng cho phép đọc nhớ chương trình mở rộng thường nối đến chân OE (output enable RD) Eprom cho phép ñọc byte mã lệnh  Khi có giao tiếp với nhớ chương trình bên ngồi dùng đến PSEN, nếu khơng có giao tiếp chân PSEN bỏ trống o Ngõ tín hiệu điều khiển ALE(Address Latch Enable):  Khi vi điều khiển 89C51 truy xuất nhớ bên ngoài, port có chức bus tải địa chỉ bus dữ liệu [AD7 – AD0] phải tách đường dữ liệu địa chỉ Tín hiệu ALE chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp đường địa chỉ dữ liệu kết nối chúng với IC chốt o Ngõ tín hiệu EA(External Access):  Tín hiệu vào EA chân 31 thường nói lên mức mức Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy  Nếu nối EA lên mức logic (+5v) vi điều khiển thi hành chương trình từ nhớ nội  Nếu nối EA với mức logic 0(0V) vi điều khiển thi hành chương trình từ nhớ ngoại o Ngõ tín hiệu RST(Reset):  Ngõ vào RST chân ngõ vào Reset 89C51 Khi cấp điện cho hệ thống nhấn nút reset vi điều khiển Khi reset tín hiệu reset phải mức cao chu kỳ máy, ghi bên được nạp những giá trị thích hợp để khởi động hệ thống Lập trình xử lý ngắt: a Ngắt timer/couter: i Cơ chế tạo trễ timer cách tính tốn giá trị nạp vào timer o Chế độ 1:  Ở chế độ định thời 16 bit, giá trị khoảng từ 0000 đến FFFF sử dụng để nạp cho TH TL định thời  Sau TH, TL được nạp giá trị ban đầu 16 bit định thời phải được khởi động với lệnh TR0=1 với timer0 TR1=1 với timer1, định thời bắt đầu đếm tăng theo xung clock từ giá trị ban đầu giá trị đỉnh FFFF Khi định thời quay vòng từ FFFF 0000 bật cờ báo tràn TF0 với timer0 TF1 với timer1 (ban đầu TFx=0) cần phải có thao tác xố cờ để lần sau còn biết được đếm tràn  Khi đếm tràn TH vồ TL định thời mang giá trị phải có thao tác nạp lại giá trị ban đầu cho chúng xoá cờ TF để đếm được lặp lại  Như vạy khoảng thời gian mà định thời toạ trễ khoảng thời gian đếm tăng từ giá trị ban đầu được nạp giá trị đỉnh FFFF  Tính tốn giá trị nạp vào ghi chứa định thời từ thời gian muốn tạo trễ (t): gọi N =65536-t/chu kì máy Sau chuyển sang mã HEX được số có chữ số có dạng : x1x2y1y2 Khi giá trị nạo cho ghi chứa sau: TH=x1x2, TL=y1y2 - Các bướclập trình cho định thời để tạo thời để tạo trể chế độ 1:  B1: chọn chế độ cho định thời cần dùng, từ xác định giá trị nạp cho ghi TMOD  B2: tính tốn giá trị ban đầu cần nạp cho TH TL từ thời gian trễ mong muốn  B3: khởi động định thời  B4 : kiểm tra trạng thái bật cờ TF Trang Đồ án Kỹ thuật vi xử lý o - b o o o GVHD: Trương Minh Huy  B5:dung định thời  B6 : xoá cờ TF cho vòng lặp kế tiếp  B7:quay trở B2 để nạp lại giá trị cho TH TL Chế độ 2:  Ở chế độ định thời 8bit, chỉ cho phép giá trị từ 00 đến FF được nạp vào ghi TH định thời Sau nạp giá trị bit vi điều khiển nội dung TH sang TL định thời được khởi động bằng lệnh TRx=1  Sau được khởi động đinh thời bắt đầu đếm tăng ghi TL từ giá trị ban đầu đến giá trị đỉnh FF quay vòng từ FF 00 cờ TFx được bật lên 1, ghi TL mang giá trị TL lậ tức được tự động nạp lại với giá trị ban đầu được lưu ghi Th  Như chế độ mỗi đếm tràn ghi chứa được vi điều khiển nạp lại giá trị ban đầu, chế độ được gọi chế độ tự động nạp lại  Tính giá trị nạp vào ghi chứa định thời từ thời gian trễ(t): Gọi N = 256-t/chu kì máy Sau chuyển sang mã HEX được số, ta nạp số vào ghi TH TL(nạp vào TL giá trị đếm lần nạp vào TH cho những lần sau để đếm tràn phần cứng vi điều khiển tự động Th sang TL) Các bước lập trình cho định thời để tạo trể chế độ  B1: nạp giá trị cho ghi thiêt lập chế độ TMOD với timer muốn sử dụng  B2: nạp vào TH giá trị đếm ban đầu  B3: khởi động định thời  B4: kiểm tra cờ báo tràn TFx  B5: xoá cờ tràn TFx, quay B4 chế dộ khác định thời chế độ 0(chế độ định thời 13 bit, định thời/bộ đếm bit, định tỷ lệ truớc bit ) chế độ 3(chế độ định thời chia tách) Ngắt định thời: Nguyên tắc sử dụng định thời chế độ ngắt:  khai báo ngắt định thời muốn sử dụng  Ng̀n gây ngắt  Chương trình chương trình phục vụ ngắt Với ngắt định thời việc khai báo nguồn ngắt bao gồm việc khai báo ngắt toàn cục EA = khai báo ngắt cho từng định thời muốn dùng ET0= (timer0) ET1 = 1(timer1) Nguồn báo ngắt định thời(với chế độ) đếm tràn(khi cờ TFx = 1), cờ TFx = vi điều khiển kết thúc cơng việc Trang Đồ án Kỹ thuật vi xử lý II GVHD: Trương Minh Huy chươnng trình chuyển vào chương trình phục vụ ngắt cứ theo địa chỉ chương trình phục vụ ngắt Khi thực xong chương trình phục vụ ngắt vi điều khiển quay trở chương trình nơi bị gián đoạn truớc o Tóm lại ngắt định thời việc ta sử dụng định thời tạo trễ khoảng thời gian được tính tốn trước, sau khoảng thời gian công việc ta mong muốn được thực chương trình phục vụ ngắt cơng việc coi độc lập với công việc chương trình o Các cơng việc lập trình sử dụng ngắt định thời :  Tính tốn thời gian trễ mong muốn công việc muốn thực sau khoảng thời gian  Khai báo ngắt định thời chương trình (EA=1, ETX=1)  Lựa chọn định thời chế độ ghi TMOD  Khởi động định thời  Xây dựng chương trình chương trình cần thiết  Xây dựng chương trình phục vụ ngắt thực công việc mong muốn (xác định rõ địa chỉ ngắt theo thứ tự ngắt bảng vector ngắt) LCD: Ghép nối vi điều khiển với LCD 16x2: Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Màn hình LCD Ngun lí hoạt động LCD:  Chân VCC, Vss, VEE: chân VCC VSS cáp dương nguồn 5v mass tương ứng Chân VEE được dùng để điều khiển độ tương phản  Chân chọn ghi RS(Register Select): có ghi LCD chân RS được dùng để chọn ghi nếu RS=0 ghi mã lệnh được chọn phép người dùng gửi lệnh lên chẳng hạn xố hình, đưa trỏ đầu dòng… Nếu RS=1 ghi dữ liệu được chọn cho phép người dùng gửi dữ liệu cần hiển thị lên LCD  Chân đọc/ghi (R/W): đầu vào đọc/ghi cho phép người dùng đọc thông tin từ LCD R/W=1 ghi thông tin lên LCD  Chân cho phép E(Enable): chân cho phép được sử dụng LCD để chốt dữ liệu Khi dữ liệu được cấp đế chân dữ liệu xung mức cao xuống thấp phải được áp đến chân để LCD chốt dữ liệu chân dữ liệu Xung có độ rộng tối thiểu 450ms  Chân DB0-DB7: đường dữ liệu 8bit, dùng để gửi thông tin lên LCD Bảng mã lệnh LCD: Mã (HEX) Lệnh đến ghi LCD 01 Xố hình hiển thị 02 Trở đầu dòng 04 Giảm trỏ(dịch trỏ sang trái ) 06 Tăng trỏ(dịch trỏ sang phải) 05 Dịch hiển thị sang phải 07 Dịch hiển thị sang trái 08 Tắt trỏ, tắt hiển thị 0a Tắt hiển thị, bật trỏ 0c Bật hiển thi, tắt trỏ 0e Bật hiển thị, nhấp nháy trỏ 0f Tắt trỏ, nhấp nháy trỏ 10 Dịch vị trí trỏ sang trái Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy 14 Dịch vị trí trỏ sang phải 18 Dịch toàn hiển thị sang trái 1c Dịch toàn hiển thị sang phải 80 Ép trỏ đầu dòng thứ c0 Ép trỏ đầu dòng thứ 38 Hai dòng ma tận 5x7 Trang 10 ... 16 Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Menu: if(startclock==1) { if(phimnhan==1)// doc phim de hien thi menu { reset(); Viewmenu(); startmenu=1; } Trang 17 Đồ án Kỹ thuật vi xử lý GVHD:... công vi? ??c mong muốn (xác định rõ địa chỉ ngắt theo thứ tự ngắt bảng vector ngắt) LCD: Ghép nối vi điều khiển với LCD 16x2: Trang Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy Màn hình LCD. .. timer để định giá trị la kêu Trang 13 Đồ án Kỹ thuật vi xử lý II GVHD: Trương Minh Huy Các chương trình con: Hàm running(): Trang 14 Đồ án Kỹ thuật vi xử lý GVHD: Trương Minh Huy //===================

Ngày đăng: 25/12/2013, 10:35

Hình ảnh liên quan

Màn hình LCD 2. Nguyên lí hoạt động của LCD: - đồ án vi xử lý 8051 LCD

n.

hình LCD 2. Nguyên lí hoạt động của LCD: Xem tại trang 8 của tài liệu.
01 Xoá màn hình hiển thị - đồ án vi xử lý 8051 LCD

01.

Xoá màn hình hiển thị Xem tại trang 8 của tài liệu.
Bảng mã để nhấp nháy led - đồ án vi xử lý 8051 LCD

Bảng m.

ã để nhấp nháy led Xem tại trang 12 của tài liệu.
//------------------ Trong giao dien man hình dong ho---------------------- ho----------------------if(startclock==1) - đồ án vi xử lý 8051 LCD

rong.

giao dien man hình dong ho---------------------- ho----------------------if(startclock==1) Xem tại trang 64 của tài liệu.
//------------------ Trong giao dien man hình hengio --------------------- --------------------- - đồ án vi xử lý 8051 LCD

rong.

giao dien man hình hengio --------------------- --------------------- Xem tại trang 67 của tài liệu.
//------------------ Trong giao dien man hình caidat --------------------- --------------------- - đồ án vi xử lý 8051 LCD

rong.

giao dien man hình caidat --------------------- --------------------- Xem tại trang 68 của tài liệu.
//------------------ Trong giao dien man hình dong ho--------------------- - đồ án vi xử lý 8051 LCD

rong.

giao dien man hình dong ho--------------------- Xem tại trang 73 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan