Tải bản đầy đủ (.doc) (25 trang)

bài tập lớn môn vi xử lý.DOC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (283.41 KB, 25 trang )

BTL vi xử lý Thiết kế khóa điện tử
Trờng đại học Bách khoa Hà Nội
Khoa điện tử viễn thông
Bài tập lớn môn vi xử lý
Giảng viên:Phạm Ngọc Nam
Nhóm 1 lớp ĐT9_K47:
1.Vũ Tiến Công
2.Vũ Ngọc Hà
3.Nguyễn Văn Hoàng
4.Thái Trờng
5.Trơng Khánh Toàn
Lời nói đầu
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
1
BTL vi xử lý Thiết kế khóa điện tử
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 trên con đờng tìm chỗ đứng cho mình.
Trong đó, lĩnh vực bảo mật là một mảng lớn mà chúng ta cần quan tâm. Chính
vì thế, với mục đích làm quen bớc đầu với việc thiết kế mạch điện tử nói chung
và với hệ thống an toàn, bảo mật nói riêng, chúng em chọn đề tài Thiết kế
hệ thống khóa mã điện tử để nghiên cứu và thực hiện. Hệ thống này cho
phép ta quản lý và hạn chế đợc số ngời ra vào theo mã số trong khu vực cần
bảo mật với độ an toàn cao.Đề tài tuy không lớn song về mặt nguyên lý thì có
thể phát triển thành các ứng dụng quản lý theo thẻ từ, mã vạch,mã hoá trong
các khu vực đặc biệt cần phải có may tính hiện đại với CSDL,ngoài mật mã ra
còn kiểm tra tần số giọng nói và camera kiểm tra hình ảnh mà hiện nay


đang rất cần thiết. Vì thế, đối với chúng em đây là bớc cơ sở để nghiên cứu
những ứng dụng lớn hơn sau này.
Trong quá trình thực hiện đề tài, tuy đã rất cố gắng song 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ếu sót. Chúng em rất mong nhận đợc những ý kiến
đóng góp của thầy cô và các bạn để đề tài của chúng em đợc hoàn thiện hơn,
với nhiều chức năng hơn
Hà Nội ngày 25 tháng 11 năm 2005
PHầN1: Giới thiệu chức năng hệ thống
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
2
BTL vi xử lý Thiết kế khóa điện tử
Đây là một hệ thống đóng mở theo mã cho phép một số ít ngời có thể ra
vào theo mã của họ. Nó có thể đợc áp dụng làm cửa ra vào của các hệ thống
cần mang tính bảo mật, giới hạn số ngời ra vào nh: Cửa ra vào cơ quan, nhà
máy, các khu quan trọng...
Trên cơ sở đó, hệ thống phải đảm bảo đợc hai yêu cầu cơ bản sau:
-Tính an toàn: do là cửa nên phải có chức năng bảo vệ.
-Tính bảo mật.
Do đó chúng em đã đa ra yêu cầu một hệ thống có chức năng đóng mở
nh sau:
I. Chức năng hệ thống:
Hệ thống quản lí một số mã ứng với một số ngời đợc cho phép ra vào ở
của này và hoạt động trên cơ sở các mã này.
Mã gồm có 6 chữ số.
Hệ thống giao tiếp với ngời sử dụng thông qua một bàn phím điều khiển
và hiển thị trên màn hình.
Bàn phím gồm các phím số 0-9 và các phím chức năng: ON, Change,
Enter, backspace(<--).
Khi bắt đầu , ngời điều khiển chọn chức năng thực hiện:

Nếu chọn Open: sau đó sẽ nhập mã. Kết thúc nhập mã băng nút Enter.
-Nếu mã đúng: cửa sẽ mở(mô phỏng trên mạch bằng việc bật hay
tắt đèn LED xanh)
-Nếu mã sai: không có hiện tợng gì cả. Nếu nhập mã sai 3 lần
liên tiếp chuông sẽ báo động. (mô phỏng trên mạch bằng việc bật hay
tắt đèn LED đỏ)
Nếu chọn Change: Kiểm tra xem mã cũ có đúng hay không.
-Nếu mã đúng: cho phép thay đổi mã bằng cách nhập vào mã mới
và xác nhận đúng mã này một lần nữa.
-Nếu mã sai: không có hiện tợng gì cả. Nếu nhập mã sai ba lần
liên tiếp chuông sẽ báo động.
Trong quá trình nhập mã, nếu có nhầm lẫn có thể nhập lại bằng cách sử
dụng nút Backspace(<--)
II. Phân tích hệ thống :
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
3
BTL vi xử lý Thiết kế khóa điện tử
II.1.Khả năng đáp ứng yêu cầu của hệ thống:
Hệ thống giao tiếp với ngời sử dụng chỉ bằng bàn phím và hiển thị do
vậy nó hạn chế đợc tác động của ngời sử dung vào nội dung bên trong của
khoá.
Với số lợng mã không lớn (cỡ 10 mã), mỗi mã dài sáu chữ số thì xác
suất tìm thấy mã đúng là: 10/1.000.000 = 0,0001%.Thêm vào đó là khả năng
báo động khi nhập ba mã sai liên tiếp làm cho hệ thống có tính an toàn cao.
Mỗi ngời có một mã riêng. Nếu nghi ngờ lộ mã, ngời dùng có thể thay
đổi mã theo mong muốn. Nhờ đó mà khả năng bảo mật của hệ thống cũng
tăng cao.
II.2. Phân tích hệ thống:
Do giới hạn của bài tập, chúng em chỉ tập trung vào thiêt kế phần mạch
điện tử để điều khiển hệ thống này.

Theo yêu cầu đa ra, hệ thống gồm 3 khối cơ bản:
Khối bàn
phím
Khối mạch xử

Khối hiển thị
Khối bàn phím: cần 14 nút gồm:
- Các nút số từ 0-9
- Các nút chức năng: Open, Change, <--.
- Sử dụng cácphím bấm tự nhả để nhập vào.
Khối mạch xử lí: Xử lí các hoạt động đã nêu ở yêu cầu hệ thống.
Khối hiển thị: Giúp cho việc giao tiếp với ngời sử dụng trở nên dễ dàng
hơn ngời sử dụng biết mình đang thực hiện thao tác gì với cửa.

Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
4
BTL vi xử lý Thiết kế khóa điện tử
PHầN 2: Các phơng án
Trên cơ sở các yêu cầu đã đặt ra và các phân tích sơ bộ, từng khối đều
có các phơng án giải quyết nh sau:
I. Khối bàn phím:
Bàn phím gồm các nút. Mỗi nút là một bộ phận đóng mở bằng cơ khí.
Các mã của bàn phím tạo ra có thể đợc tạo ra trực tiếp hoặc bằng phép quét
hàng và quét cột. Số đầu dây ra từ bàn phím phải phù hợp với đầu vào của
mạch xử lí. Đồng thời với càng ít dây thì khả năng ổn định của bàn phím càng
tăng.
Để thực hiện bàn phím 14 nút ta có thể có các phơng án sau:
I.1.Phơng án 1: Bố trí thành 1 hàng hoặc 1 cột:
Số đầu ra từ bàn phím là 14 dây.
Tốn diện tích.

Hình thức không đẹp.
I.2.Phơng án 2: Bố trí thành 2 hàng và 7 cột hoặc 7 hàng và 2 cột:
Số đầu ra từ bàn phím là 9 dây. Khả năng để giải mã khó.
Tốn diện tích.
Hình thức không đẹp.
I.3.Phơng án 3 :Bố trí thành 4 hàng và 4 cột:
Số đầu ra từ bàn phím là 8 dây.
Hình dáng đẹp, cân đối.
Còn d 3 nút để mở rộng chức năng trong tơng lai.
Sơ đồ của bàn phím nh sau
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
5
BTL vi xử lý Thiết kế khóa điện tử
II. Khối hiển thị:
Yêu cầu đặt ra đối với khối hiển thị là thân thiện với ngời sử dụng. Trên
cơ sở đó ta có 2 phơng án sau:
II.1.Phơng án 1: Dùng LED 7 thanh:
Ưu điểm: Đơn giản, rẻ.
Nhợc điểm: Không chỉ dẫn cụ thể.Giới hạn kí tự hiển thị ra. Nếu
muốn hiển thị chỉ dẫn dài cần nhiều LED và đi kèm với nó là bộ
giải mã. Điều này làm cho hệ thống trở nên cồng kềnh, phức
tạp.Việc lập trình quét hàng quét cột để hiển thị phức tạp.
II.2.Phơng án 2: Dùng LCD.
Ưu điểm: Hiển thị rõ ràng có kèm theo chỉ dẫn.
Thay đổi nội dung linh hoạt.Xử lý lập trình đơn giản hơn LED7
thanh và ma trận điểm.
Nhợc điểm: Giá thành đắt.
III. Mạch xử lí:
Dùng vi điều khiển:
Ưu điểm:

- Vi điều khiển có khả năng điều khiển linh hoạt theo mong
muốn của ngời sử dụng dựa vào phần mềm đợc viết.
- Khả năng thay đổi mã có thể thực hiện đợc.
- Hệ thống đơn giản hơn nhiều, kích thức nhỏ. Hơn nữa sẽ
giảm đợc độ kém ổn định do nhiều linh kiện gây ra.
- Có thể thay đổi, thêm chức năng bằng cách thay đổi phần
mềm.
Nhợc điểm:
- Chất lợng của hệ thống phụ thuộc vào chất lợng chơng trình
đợc nạp cho vi điều khiển.
IV. Kết luận:
Sau khi cân nhắc các phơng án đã đa ra, và khả năng phối hợp giữa các
khối, chúng em chọn giải pháp:
- Sử dụng bàn phím 4x4.
- Khối hiển thị dùng LCD.
- Khối mạch xử lí dùng vi điều khiển.
PHầN 3: phơng án dùng vi điều khiển
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
6
Bàn phím
BTL vi xử lý Thiết kế khóa điện tử
I. Thiết kế phần cứng:
Định hớng thiết kế:
Thiết kế một hệ vi điều khiển bao gồm cả việc thiết kế tổ chức phần
cứng và viết phần mềm cho nền phần cứng mà ta thiết kế. Việc xem xét giữa
tổ chức phần cứng và chơng trình phần mềm cho một thiết kế là một vấn đề
cần phải cân nhắc. Vì khi tổ chức phần cứng càng phức tạp, càng có nhiều
chức năng hỗ trợ cho yêu cầu thiết kế thì phần mềm càng đợc giảm bớt và dễ
dàng thực hiện nhng lại đẩy cao giá thành chi phí cho phần cứng, cũng nh chi
phí bảo trì. Ngợc lại với một phần cứng tối thiểu lại yêu cầu một chơng trình

phần mềm phức tạp hơn, hoàn thiện hơn; nhng lại cho phép bảo trì hệ thống dễ
dàng hơn cũng nh việc phát triển tính năng của hệ thống.
Từ yêu cầu và nhận định trên ta có những định hớng sơ bộ cho thiết kế
nh sau:
I.1.Chọn bộ vi điều khiển:
Từ yêu cầu của đề bài ta dự kiến dùng các chip vi điều khiển thuộc họ
MCS-51 của Intel, mà cụ thể ở đây là dùng chip 8051 vì những lý do sau:
Thứ nhất 8051 thuộc họ MCS-51, là chip vi điều khiển. Đặc điểm
của các chip vi điều khiển nói chung là nó đợc tích hợp với đầy
đủ chức năng của một hệ VXL nhỏ, rất thích hợp với những thiết
kế hớng điều khiển. Tức là trong nó bao gồm: mạch VXL, bộ
nhớ chơng trình và dữ liệu, bộ đếm, bộ tạo xung, các cổng vào/ra
nối tiếp và song song, mạch điều khiển ngắt
Thứ hai là, vi điều khiển 8051 cùng với các họ vi điều khiển khác
nói chung trong những năm gần đây đợc phát triển theo các hớng
sau:
Giảm nhỏ dòng tiêu thụ.
Tăng tốc độ làm việc hay tần số xung nhịp của CPU.
Giảm điện áp nguồn nuôi.
Có thể mở rộng nhiều chức năng trên chip, mở rộng cho các
thiết kế lớn.
Những đặc điểm đó dẫn đến đạt đợc hai tính năng quan trọng là: giảm
công suất tiêu thụ và cho phép điều khiển thời gian thực nên về mặt ứng dụng
nó rất thích hợp với các thiết kế hớng điều khiển.
Thứ ba là, vi điều khiển thuộc họ MCS-51 đợc hỗ trợ một tập
lệnh phong phú nên cho phép nhiều khả năng mềm dẻo trong vấn
đề viết chơng trình phần mềm điều khiển.
Cuối cùng là, các chip thuộc họ MCS-51 hiện đợc sử dụng phổ
biến và đợc coi là chuẩn công nghiệp cho các thiết kế khả
dụng.Với sinh viên mới làm quen với VĐK thì 8051 có nhiều tài

Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
7
Bàn phím
Hình 2.1: Cấu trúc của vi điều khiển 8051.

CPU
Điều khiển
ngắt
Port
0
Port
1
Port
2
Nguồn ngắt
BTL vi xử lý Thiết kế khóa điện tử
liệu tham khảo,đồng thời cũng sử dụng đơn giản nhất. Mặt khác,
qua việc khảo sát thị trờng linh kiện việc có đợc chip 8051 là dễ
dàng nên mở ra khả năng thiết kế thực tế.
Vì những lý do trên mà việc lựa chọn vi điều khiển AT89C51 của hãng
Atmel, đây là vi điều khiển thuộc họ MCS-51.
Cấu hình hoạt động của chip AT89C51:
-ROM trong: Flash ROM - 4KBytes
-RAM trong: 128 bytes
I.2 Tổ chức ngoại vi:
- Chip: AT89C51
- Ghép nối màn hình LCD: 16x2
Ngoài ra còn:
- LED báo hiệu chơng trình đang chạy
- Tín hiệu cho phép chạy đợc xử lý bằng cách dùng một nút ấn Reset hệ

thống.
- Tín hiệu báo động, mở cửa, đóng cửa đợc đa ra led
Sơ đồ khối của hệ thống nh sau:
II. Vi điều khiển AT89C51:
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
8
Khối vi xử lý
AT89C51
Bàn phím
Hiển thị LCD
Báo động
LED 1
LED 2
LED
Lớn
Hình 2.1: Cấu trúc của vi điều khiển 8051.

CPU
Điều khiển
ngắt
Port
0
Port
1
Port
2
Nguồn ngắt
BTL vi xử lý Thiết kế khóa điện tử
Chức năng của từng khối :
Khối xử lý trung tâm CPU:

Phần chính của bộ vi xử lý là khối xử lý trung tâm (CPU=Central
Processing Unit ), khối này có chứa các thành phần chính :
Thanh chứa ACC (ký hiệu là A).
Thanh ghi chứa phụ (ký hiệu là B) thờng đợc dùng cho phép nhân và
phép chia.
Khối logic số học (ALU=Arithmetic Logical Unit).
Từ trạng thái chơng trình (PSW= Program Status Word).
Bốn băng thanh ghi (Blank).
Con trỏ ngăn xếp (SP=Stack Point) cũng nh con trỏ dữ liệu để định địa
chỉ cho bộ nhớ dữ liệu ở bên ngoài.
Ngoài ra, khối xử lý trung tâm còn chứa:
Thanh ghi đếm chơng trình (PC= Progam Counter ).
Bộ giải mã lệnh
Bộ điều khiển thời gian và logic.
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
9
Hình 2.1: Cấu trúc của vi điều khiển 8051.
Bộ tạo dao
động

CPU
Điều khiển
ngắt
Nguồn
ngắt
trong.
8Kbytes
ROM trong
256byte
RAM

trong
2bộ
đếm /
định thời
Khối
đ.khiển
quản lý
Bus.
Port
0
Port
1
Port
2
Port
3
Giao
diện
nối
tiép.
XTAL 1.2
/PSEN/ALE
Cổng I/O
8 bit
Cổng I/O
Đchỉ cao
Dữ liệu 8
bit
Cổng I/O
Đchỉ thấp

Dữ liệu 8
bit
Cổng I/O
Các chức
năng đắc biệt
Dữ liệu 8 bit
Nguồn ngắt Đếm sự kiện.
BTL vi xử lý Thiết kế khóa điện tử
Sau khi đợc Reset, CPU bắt đầu làm việc tại địa chỉ 0000h, là địa chỉ
đầu đợc ghi trong thanh ghi chứa chơng trình (PC) và sau đó, thanh ghi này sẽ
tăng lên 1 đơn vị và chỉ đến các lệnh tiếp theo của chơng trình.
Bộ tạo dao động:
Khối xử lý trung tâm nhận trực tiếp xung nhịp từ bộ tạo dao động đợc
lắp thêm vào, linh kiện phụ trợ có thể là một khung dao động làm bằng tụ gốm
hoặc thạch anh. Ngoài ra, còn có thể đa một tín hiệu giữ nhịp từ bên ngoài vào.
Khối điều khiển ngắt:
Chơng trình đang chạy có thể cho dừng lại nhờ một khối logic ngắt ở
bên trong. Các nguồn ngắt có thể là: các biến cố ở bên ngoài, sự tràn bộ
đếm/bộ định thời hay có thể là giao diện nối tiếp. Tất cả các ngắt đều có thể đ-
ợc thiết lập chế độ làm việc thông qua hai thanh ghi IE (Interrupt Enable) và
IP (Interrupt Priority).
Khối điều khiển và quản lý Bus :
Các khối trong vi điều khiển liên lạc với nhau thông qua hệ thống Bus
nội bộ đợc điều khiển bởi khối điều khiển quản lý Bus.
Các bộ đếm/định thời:
Vi điều khiển 8051 có chứa hai bộ đếm tiến 16 bit có thể hoạt động nh
là bộ định thời hay bộ đếm sự kiện bên ngoài hoặc nh bộ phát tốc độ Baud
dùng cho giao diện nối tiếp. Trạng thái tràn bộ đếm có thể đợc kiểm tra trực
tiếp hoặc đợc xoá đi bằng một ngắt.
Các cổng vào/ra:

Vi điều khiển 8051 có bốn cổng vào/ra (P0 P3), mỗi cổng chứa 8 bit,
độc lập với nhau. Các cổng này có thể đợc sử dụng cho những mục đích điều
khiển rất đa dạng. Ngoài chức năng chung, một số cổng còn đảm nhận thêm
một số chức năng đặc biệt khác.
Giao diện nối tiếp:
Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng
bộ làm việc độc lập với nhau. Bằng cách đấu nối các bộ đệm thích hợp, ta có
thể hình thành một cổng nối tiếp RS-232 đơn giản. Tốc độ truyền qua cổng
nối tiếp có thể đặt đợc trong một vùng rộng phụ thuộc vào một bộ định thời và
tần số dao động riêng của thạch anh.
Bộ nhớ ch ơng trình:
Bộ nhớ chơng trình thờng là bộ nhớ ROM (Read Only Memory), bộ
nhớ chơng trình đợc sử dụng để cất giữ chơng trình điều khiển hoạt động của
vi điều khiển.
Bộ nhớ số liệu :
Bộ nhớ số liệu thờng là bộ nhớ RAM (Ramdom Acces Memory), bộ
nhớ số liệu dùng để cất giữ các thông tin tạm thời trong quá trình vi điều khiển
làm việc.
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
10
BTL vi xử lý Thiết kế khóa điện tử
Sự sắp xếp chân ra của vi điều khiển 8051 :
Phần lớn các bộ vi điều khiển 8051 đợc đóng vào vỏ theo kiểu hai hàng
DIL (Dual In Line) với tổng số là 40 chân ra, một số ít còn lại đợc đóng vỏ
theo kiểu hình vuông PLCC (Plastic Leaded Chip Carrier) với 44 chân và loại
này thờng đợc dùng cho những hệ thống cần thiết phải tiết kiệm diện tích.
Trong chơng trình ta sử dụng loại 89C51 kiểu 2 hàng với 40 chân ra.
III. Chi tiết từng khối:
III.1 Khối phím số:
Hệ thống sử dụng bàn phím 4x4 có giao diện nh sau:

Các phím của bàn phím.
Trong đó:
Phím 0-9 dùng để nhập mã
Các phím chọn chức năng: open(phím ON),đổi password(phím
change),xóa ký tự vừa nhập(<--).

Sơ đồ nguyên lý của bàn phím theo hình vẽ sau:
Lớp điện tử 9-K47 Giảng viên:Phạm Ngọc Nam
11

×