1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

đề tài :Thiết kế lcd bàn phím điện thoại

27 2 0
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ế LCD bàn phím điện thoại
Tác giả Lại Văn Hoàn, Thoòng Trung, Nguyễn Văn Mạnh, Phạm Mạnh Linh
Người hướng dẫn Ngô Thanh Bình
Trường học Trường Đại Học Giao Thông Vận Tải
Chuyên ngành Kỹ thuật Vi xử lý
Thể loại Bài tập lớn
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 27
Dung lượng 1,86 MB
File đính kèm Thiêt kê LCD ban phim diên thoai.zip (1 MB)

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

Nội dung

Thiết kế phần cứng điều khiển thiết bị thông qua PIC16F877A.Điều khiển bậttắt thiết bịBấm phím Hiển thị trên LCD mã điều khiển để kiểm tra.Trong quá trình thực hiện đề tài, tuy đã rất cố gắng xong do những hạn chế về thời gian tìm hiểu, kiến thức cũng như kinh nghiệm thực tế nên chúng em không tránh khỏi nhiều thiết xót. Chúng em rất mong nhận được những ý kiến đóng góp của thầy và các bạn để đề tài của chúng em ngày càng được hoàn thiện hơn, với nhiều chức năng hơn.

Trang 1

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI

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

Bài tập lớn môn Vi xử lí Giảng viên : Ngô Thanh

Trang 2

Thiết kế LCD bàn phím điện thoại

II Nội dung báo cáo

• Linh kiện chuẩn bị ………8

• Lưu đồ giải thuật ……… …….

Trang 3

LỜI NÓI ĐẦU

Trong một xã hội hiện đại, sự phát triển của ngành điện tử viễn thông là một yêu cầu không thể thiếu để thúc đẩy nền kinh tế phát triển và góp phần nâng cao đời sống xã hội

Ngày nay, trên thế giới, điện tử viễn thông vẫn không ngừng phát triển với tốc

độ rất cao và thâm nhập ngày càng sâu vào tất cả các lĩnh vực của đời sống xã hội Cùng với sự phát triển như vũ bão đó, ngành điện tử viễn thông Việt Nam cũng đang

nỗ lực hết sức lực trên con đường tìm chỗ đứng cho mình Do đó sự ra đời của các dịch vụ điện thoại mà cụ thể mà cụ thể là điện thoại di động với ưu thế dễ dàng hoạt động khi di chuyển mọi lúc mọi nơi Nhưng để mà hoàn thiện được một sản phẩm như thế, chúng ta mới đặt ra được vấn đề làm sao để hình dung ra được các chức năng cơ bản để sau này nó là nguồn gốc chính để phát triển ra nhiều thứ mới mẻ Từ yêu cầu trên và những kiến thức tiếp thu ở trường, nhóm em đã lựa chọn đề tài: “ Thiết kế LCDbàn phím điện thoại ”

Trong đề tài này, nhóm em sẽ tập trung giải quyết các vấn đề chính:

 Thiết kế phần cứng điều khiển thiết bị thông qua PIC16F877A

 Điều khiển bật/tắt thiết bị

 Bấm phím

 Hiển thị trên LCD mã điều khiển để kiểm tra

Trong quá trình thực hiện đề tài, tuy đã rất cố gắng xong do những hạn chế về thời gian tìm hiểu, kiến thức cũng như kinh nghiệm thực tế nên chúng em không tránh khỏi nhiều thiết xót Chúng em rất mong nhận được những ý kiến đóng góp của thầy

Trang 4

và các bạn để đề tài của chúng em ngày càng được hoàn thiện hơn, với nhiều chức năng hơn.

Nhóm em xin chân thành cảm ơn

A PHẦN 1.

I Tìm hiểu về vi điều khiển PIC16F877A.

1 Khái quát về PIC16F877A

1.1 Sơ đồ nguyên lí và mạch thực tế của PIC16F877A.

1.2 Nhận xét

Từ sơ đồ chân và mạch thực tế, ta rút ra các nhận xét ban đầu như sau: PIC16F877A là một Vi điều khiển PIC 40 chân và được sử dụng hầu hết trongcá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, giaothức I2C PIC16F877A hỗ trợ cả ngắt chân phần cứng và ngắt bộ định thời

- 40 chân trên được chia thành 5 PORT, 2 chân cấp nguồn, 2 chânGND, 2 chân thạch anh và một chân dùng để RESET vi điều khiển

- 5 PORT của PIC16f877A bao gồm:

+ PORTB: 8 chân

Sơ đồ chân PIC16F877A Mạch thực tế PIC16F877A

Trang 5

+ PORTD: 8 chân+ PORTC: 8 chân+ PORTA: 6 chân+ PORTE: 3 chân

1.3 Khái quát về chức năng của các PORT trong vi xử lí PIC16F877A.

PORTA

PORTA gồm có 6 chân Các chân của PortA, ta lập trình để có thể thực hiện đượcchức năng “hai chiều”: xuất dữ liệu từ vi điều khiển ra ngoại vi và nhập dữ liệu từngoại vi vào vị điều khiển

Việc xuất nhập dữ liệu ở PIC16F877A khác với họ 8051, ở tất cả các PORT củaPIC16F877A, ở mỗi thời điểm chỉ thực hiện được một chức năng xuất hoặc nhập Đểchuyển từ chức năng này nhập qua chức năng xuất hay ngược lại, ta phải xử lý bằngphần mềm, không như 8051 tự hiểu lúc nào là chức năng nhập, lúc nào là chức năngxuất

Trong kiến trúc phần cứng của PIC16F877A, người ta sử dụng thanh ghi TRISA Ởđịa chỉ 85H để điều khiển chức năng IO trên Muốn xác lập các chân nào của PORTA

là nhập (input) thì ta set bit tương ứng chân đó trong thanh ghi TRISA Ngược lại,muốn chân nào là output thì ta clear bit tương ứng chân đó trong thanh ghi TRISA.Điều này hoàn toàn tương tự đối với các PORT còn lại

Ngoài ra, PORTA còn có các chức năng quan trọng sau :

- Ngõ vào Analog của bộ ADC : thực hiện chức năng chuyển từ Analog sangDigital

PORTB

PORTB có 8 chân Cũng như PORTA, các chân PORTB cũng thực hiện được 2chức năng: input và output Hai chức năng trên được điều khiển bởi thanh ghi TRISB.Khi muốn chân nào của PORTB là input thì ta set bit tương ứng trong thanh ghi

TRISB, ngược lại muốn chân nào là output thì ta clear bit tương ứng trong TRISB Thanh ghi TRISB còn được tích hợp bộ điện trở kéo lên có thể điều khiển đượcbằng chương trình

PORTC

Trang 6

PORTC có 8 chân và cũng thực hiện được chức năng input và output dưới sự điềukhiển của thanh ghi TRISC tương tự như hai thanh ghi trên.

Ngoài ra PORTC còn có các chức năng quan trọng sau:

- Ngõ vào xung clock cho Timer1 trong kiến trúc phần cứng

- Bộ PWM thực hiện chức năng điều xung lập trình được tần số, duty cycle: sử dụngtrong điều khiển tốc độ và vị trí của động cơ v,v ,

- Tích hợp các bộ giao tiếp nối tiếp I2C, SPI, SSP, USART

PORTD

PORTD có 8 chân, Thanh ghi TRISD điều khiển 2 chức năng input và output củaPORTD tương tự như trên PORTD cũng là cổng xuất dữ liệu của chuẩn giao tiếp songsong PSP (Parallel Slave Port)

PORTE

PORTE có 3 chân, Thanh ghi điều khiển xuất nhập tương ứng là TRISE Các châncủa PORTE có ngỏ vào analog Bên cạnh đó PORTE còn là các chân điều khiển củachuẩn giao tiếp PSP

Các loại LCD đơn sắc có thể tìm hiểu để ứng dụng nghiên cứu dưới đây được thiết

kế dưới dạng các mô-đun Các mô-đun gồm phần màn hình LCD, chip điều khiển quy định các tập lệnh tác động lên LCD (mã lệnh dưới dạng các tín hiệu bịt qua các chân điều khiển và chân dữ liệu của LCD), quy định quá trình khởi động LCD hoặc thiết lậpliên kết các vùng màn hình LCD khác nhau, Việc còn lại vẫn đòi hỏi cần có một mạch điều khiển ngoài dùng vi xử lý để lập trình hiển thị và giao tiếp của LCD với các

Trang 7

phần cứng khác (như đọc tín hiệu từ bàn phím, ma trận phím, ADC, tính toán, rồi hiển thị lên LCD, hoặc giao tiếp máy tính hiển thị lên LCD,

 LCD 7 đoạn, LCD nền xám sáng, được thiết kế từng khu vực riêng, thường được dùng trong các máy tính (Calculator), các đồng hồ đeo tay, treotường, Chúng hiển thị theo các khu vực segment đã được thiết lập trước, hoặc hiển thị như LED 7 đoạn với 7 segment mỗi khu vực Thường không

có mô-đun

 LCD hiển thị ký tự theo dòng hay đồ họa ký tự, chúng hiển thị bằng cách chia màn hình ra làm nhiều ô, thể hiện được các ký tự chỉ đọc (ROM

character - lưu trong DDRAM) hoặc các biểu tượng (thiết kế trong

CGRAM) trên mỗi ô, độ phân giải của từng ô tùy kích thước do nhà thiết kế quy định Riêng LCD đồ họa ký tự thì có khác đôi chút, như kích thước mànhình lớn hơn, các ô liền nhau như là ma trận điểm toàn màn hình, các ký tự thường có 2 bảng mã ASCII và 1 bảng mã chữ riêng (có kích thước ô lớn hơn, như tiếng Hoa, tiếng Nhật, ); ngoài ra nó được mở rộng để hiện thị đồhọa (chế độ mở rộng - thiết kế hiển thị qua GDRAM)

 LCD đồ họa điểm ảnh (ma trận điểm toàn màn hình) thì hoàn toàn không có bảng mã nào trong bộ nhớ, cũng không có tập lệnh cụ thể để thao tác cho các mục đích truy cập mà hình LCD, nhưng có quy định các mã cơ bản để thiết lập các trạng thái tín hiệu cho các điểm ảnh, và có quy định quá trình khởi động cho LCD – đây là điều quan trọng đầu tiên khi điều khiển LCD

Từ những điều đó, mà lập ra các tổ hợp lệnh hay chương trình để kích hoạt các điểm ảnh tương ứng nhãm hiển thị đúng như mong muốn của chương trình

Trang 8

B PHẦN 2 (LCD 4 Bits)

I Linh kiện chuẩn bị.

- 1 vi điều khiển PIC16F877A

Trang 9

Viết chương trình vi điều khiển PIC.

#include <pic.h>

CONFIG( FOSC_HS & WDTE_OFF & PWRTE_OFF & CP_OFF &

BOREN_ON & LVP_OFF & CPD_OFF & WRT_OFF & DEBUG_OFF);

void cmd(unsigned char a);

void dat(unsigned char b);

void show(unsigned char *s);

void lcd_delay();

unsigned int i=0;

unsigned char key();

Trang 13

while(C1==0||C2==0||C3==0);

return (keypad[rowloc][colloc]);

}

IV Mạch mô phỏng Proteus

Mạch khi hoàn thiện:

Trang 14

Khi chúng ta bấm để chạy chương trình:

- Khi đó màn hình LCD sẽ xuất hiện và hiện lên dòng chữ “ MOI BAN NHAP”

- Muốn bấm được số thì phải bấm Button trước để hiện dòng chờ đợi chúng ta nhâp bấm phím

- Chúng ta nhập số mà ta muốn bấm, kết quả chúng ta bấm nó sẽ xuất hiện trên màn hình LCD

Trang 15

Ví dụ ta nhập 0123456789 thì nó sẽ ngay kết quả trên màn hình LCD:

Trang 16

C PHẦN 3 ( LCD 8 Bits)

I Chuẩn bị linh kiện

- 1 Vi điều khiển PIC16F877A

Trang 17

III Viết chương trình Vi xử lí PIC16F877A

Trang 18

void dat(unsigned char b);

void show(unsigned char *s);

CONFIG( FOSC_HS & WDTE_OFF & PWRTE_OFF & CP_OFF & BOREN_ON

& LVP_OFF & CPD_OFF & WRT_OFF & DEBUG_OFF);

Trang 23

IV Mạch mô phỏng Proteus.

Mạch khi được hoàn thiện:

Trang 24

Khi chúng ta bấm để chạy chương trình:

- Khi đó màn hình LCD sẽ xuất hiện và hiện lên dòng chữ “ MOI BAN NHAP”

- Muốn bấm được số thì phải bấm Button trước để hiện dòng chờ đợi chúng ta nhâp bấm phím

- Chúng ta nhập số mà ta muốn bấm, kết quả chúng ta bấm nó sẽ xuất hiện trên màn hình LCD

Trang 25

Ví dụ ta nhập 0123456789 thì nó sẽ ngay kết quả trên màn hình LCD:

Trang 26

D Nhận xét của giảng viên

kiện

kiện

kiện

Trang 27

Lại Văn Hoàn (Hỗ trợ

code)

Nhận xét của Giáo Viên Hướng Dẫn

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

Ngày đăng: 01/02/2023, 20:28

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w