giahung2542

New Member

Download miễn phí Đồ án Thiết kế, chế tạo bảng thông tin điện tử





Sau gần hai tháng nghiên cứu và làm việc một cách nghiêm túc cùng với sự hướng dẫn của thầy Bạch Hưng Trường, thầy Đặng Văn Khanh và các thầy cô trong khoa Điện_Điện tử cùng với các ý kiến quý báu của các bạn bè, đến nay chúng em đã hoàn thành đề tài khá hoàn chỉnh. Qua cả một thời gian nghiên cứu , tìm tòi , chúng em đã tự có thể đánh giá khả năng làm việc , học hỏi , sáng tạo của mình với những kiến thức mà các thầy cô đã trang bị trong suốt thời gian qua. Quá trình thiết kế và thi công mạch , chúng em đã có sự két hợp giữa kiến thức trên lý thuyết và kỹ năng thực hành. Không những vậy , mà qua thời gian này, chúng em còn học hỏi và đúc rút , biết cách làm việc một cách trực quan và độc lập. Đó là kết quả to lớn trong suốt quá trình học tập mà chúng em đã đạt được.

 





Để tải tài liệu này, vui lòng Trả lời bài viết, Mods sẽ gửi Link download cho bạn ngay qua hòm tin nhắn.

Ketnooi -


Ai cần tài liệu gì mà không tìm thấy ở Ketnooi, đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:


ng dụng của mỗi bộ.
1.3. Sơ đồ chân tín hiệu.
Hình 2. IC 80C51/AT89C51
Chức năng của các chân tín hiệu như sau:
- P0.0 đến P0.7 là các chân của cổng vào/ra P0.
- P1.0 đến P1.7 là các chân của cổng vào/ra P1.
- P2.0 đến P2.7 là các chân của cổng vào/ra P2
- P3.0 đến P3.7 là các chân của cổng vào/ra P3
Các chân của cổng P3 ngoài những chức năng xuất/nhập dữ liệu nó còn có các chức năng đặc biệt sau:
- RxD: Nhận tín hiệu kiểu nối tiếp (P3.0).
- TxD: Truyền tín hiệu kiểu nối tiếp (P3.1).
- /INT0: Ngắt ngoài 0 (P3.2).
- /INT1: Ngắt ngoài 1(p3.3).
- T0: Chân vào 0 của bộ Timer/Counter 0 (P3.4).
- T1: Chân vào 1 của bộ Timer/Counter 1 (P3.5).
- /Wr: Ghi dữ liệu vào bộ nhớ ngoài (P3.6).
- /Rd: Đọc dữ liệu từ bộ nhớ ngoài (P3.7).
- RST: Chân vào Reset, tích cực ở mức logic cao trong khoảng 2 chu kỳ máy.
- XTAL1: Chân vào mạch khuyếch đaị dao động
- XTAL2: Chân ra từ mạch khuyếch đaị dao động.
- /PSEN : Chân cho phép đọc bộ nhớ chơng trình ngoài (ROM ngoài).
- ALE (/PROG): Chân tín hiệu cho phép chốt địa chỉ để truy cập bộ nhớ ngoài, khi On-chip xuất ra byte thấp của địa chỉ. Tín hiệu chốt đợc kích hoạt ở mức cao, tần số xung chốt = 1/6 tần số dao động của bộ VĐK. Nó có thể đợc dùng cho các bộ Timer ngoài hay cho mục đích tạo xung Clock. Đây cũng là chân nhận xung vào để nạp chơng trình cho Flash (hay EEPROM) bên trong On-chip khi nó ở mức thấp.
- /EA/Vpp: Cho phép On-chip truy cập bộ nhớ chơng trình ngoài khi /EA=0, nếu /EA=1 thì On-chip sẽ làm việc với bộ nhớ chơng trình nội trú. Khi chân này đợc cấp nguồn điện áp 12V (Vpp) thì On-chip đảm nhận chức năng nạp chơng trình cho Flash bên trong nó.
- Vcc: Cung cấp dơng nguồn cho On-chip (+ 5V).
- GND: nối mát.
1.4. Các thanh ghi chức năng đặc biệt.
SFR đảm nhiệm các chức năng khác nhau trong On-chip. Chúng nằm ở RAM bên trong On-chip, chiếm vùng không gian nhớ 128 Byte đợc định địa chỉ từ 80h đến FFh. Cấu trúc của SFR bao gồm các chức năng thể hiện ở bảng 1và bảng 2.
Thanh ghi
MSB
Nội
dung
LSB
IE
EA
-
ET2
ES
ET1
EX1
ET0
EX0
IP
-
-
PT2
PS
PT1
PX1
PT0
PX0
PSW
CY
AC
FO
RS1
RS0
OV
-
P
TMOD
GATE
C/(/T)
M1
M0
GATE
C/(/T)
M1
M0
TCON
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
SCON
SM0
SM1
SM2
REN
TB8
RB8
TI
RI
PCON
SMOD
-
-
-
GF1
GF0
PD
IDL
P1
T2
T2EX
/SS
MOSI
MISO
SCK
P3
RXD
TXD
/INT0
/INT1
T0
T1
/WR
/RD
Bảng 1. Chức năng riêng của từng thanh ghi trong SFR
Symbol
Name
Address
Reset Values
* ACC
Thanh ghi tích luỹ
0E0h
00000000b
* B
Thanh ghi B
0F0h
00000000b
* PSW
Từ trạng thái chương trình
0D0h
00000000b
SP
Con trỏ ngăn xếp
81h
00000111b
DP0L
Byte cao của con trỏ dữ liệu 0
82h
00000000b
DP0H
Byte thấp của con trỏ dữ liệu 0
83h
00000000b
* P0
Cổng 0
80h
11111111b
* P1
Cổng 1
90h
11111111b
Symbol
Name
Address
Reset Values
* P2
Cổng 2
0A0h
11111111b
* P3
Cổng 3
0B0h
11111111b
* IP
TG điều khiển ngắt u tiên
0B8h
xxx00000b
* IE
TG điều khiển cho phép ngắt
0A8h
0xx00000b
TMOD
Điều khiển kiểu Timer/Counter
89h
00000000b
* TCON
TG điều khiển Timer/Counter
88h
00000000b
TH0
Byte cao của Timer/Counter 0
8Ch
00000000b
TL0
Byte thấp của Timer/Counter 0
8Ah
00000000b
TH1
Byte cao của Timer/Counter 1
8Dh
00000000b
TL1
Byte thấp của Timer/Counter 1
8Bh
00000000b
* SCON
Serial Control
98h
00000000b
SBUF
Serial Data Buffer
99h
indeterminate
PCON
Power Control
87h
0xxx0000b
* : có thể định địa chỉ bit, x: không định nghĩa
Bảng2. Địa chỉ, ý nghĩa và giá trị của các SFR sau khi Reset
2. Ngôn ngữ lập trình Assembly .
2.1.Ngôn ngữ lập trình .
- Khi chương trình được viết trực tiếp bằng ngôn ngữ máy , nếu muốn thêm hay xoá một mã lệnh nào đó thì các mã lệnh có địa chỉ kèm theo cũng phải tính toán cho đúng nên rất khó khăn cho viết và sửa chương trình. Vì vậy bằng việc thay phải viết bằng ngôn ngữ máy , người lập trình có thể viết bằng một ngôn ngữ dưới dạng các kí hiêu hình thức hay các từ gợi nhớ tuân theo một qui tắc noà đó dễ đọc và dễ hiểu. Mỗi từ gợi nhớ này tương đương với một lệnh của CPU. Ngôn ngữ này chính là ngôn ngữ Asembly, là ngôn ngữ lập trình cấp thấp gần với ngôn ngữ máy.
2.2. Các lệnh cơ bản trong ngôn ngữ Asembly.
Các lệnh được sử dụng trong chương trình
- Cú pháp câu lệnh: MOV ,
Chức năng: Sao chép nội dung của toán hạng nguồn vào toán hạng đích, nội dung của toán hạng nguồn không thay đổi. Lệnh này không làm ảnh hởng tới các cờ và các thanh ghi khác.
- Cú pháp câu lệnh: MOV DPTR, #data16
Chức năng: Giá trị 16 bit ở toán hạng thứ 2 trực tiếp trong câu lệnh đợc nạp vào thanh ghi DPTR. Hằng số 16 bit này đợc đặt ở byte 2 và byte 3 của lệnh. Byte 2 là byte cao đợc nạp cho thanh ghi DPH, byte 3 là byte thấp đợc nạp vào thanh ghi DPL. Lệnh này không ảnh hởng tới các cờ.
- Lệnh xoá bit
Cú pháp câu lệnh: CLR bit
Chức năng: Xoá bit đợc chỉ ra trong câu lệnh về 0. Lệnh này có thể thao tác trên cờ nhớ, hay trên 1 bit bất kỳ đợc định địa chỉ trực tiếp. Lệnh không làm ảnh hởng tới trạng thái các cờ.
- Lệnh xoá thanh ghi tích luỹ
Cú pháp câu lệnh: CLR A
Chức năng: Xoá tất cả các bit của thanh ghi tích luỹ về 0. Các cờ không bị ảnh hởng.
- Lệnh thiết lập bit
Cú pháp câu lệnh: SETB bit
Chức năng: Thiết lập bit đợc chỉ ra trong câu lệnh lên mức logic 1. Lệnh này có thể thao tác trên cờ nhớ, hay trên 1 bit bất kỳ đợc định địa chỉ trực tiếp. Lệnh không làm ảnh hởng tới trạng thái các cờ.
- Lệnh tăng lên 1 đơn vị.
Cú pháp của câu lệnh: INC
Chức năng: Tăng giá trị của byte trong câu lệnh lên 1 đơn vị. Nếu giá trị ban đầu của byte là 0FFh, thì sau khi thực hiện lệnh INC nội dung của byte sẽ là 00h. Lệnh này không làm ảnh hởng tới trạng thái các cờ.
- Lệnh giảm 1 đơn vị.
Cú pháp của câu lệnh: DEC
Chức năng: Giảm giá trị của byte trong câu lệnh xuống 1 đơn vị. Nếu giá trị ban đầu của byte là 00h, thì sau khi thực hiện lệnh DEC nội dung của byte sẽ là 0FFh. Lệnh này không làm ảnh hởng tới trạng thái các cờ.
- Lệnh : MOVC A,@A+DPTR
Lệnh chuyển byte mã lệnh:
Chức năng: Nạp cho thanh ghi tích luỹ byte mã lệnh từ bộ nhớ chơng trình. Địa chỉ của byte đợc tìm nạp trong bộ nhớ là tổng nội dung của thanh ghi A 8 bit với nội dung của thanh ghi DPTR 16 bit
- Nhóm lệnh rẽ nhánh chơng trình.
1. Lệnh gọi tuyệt đối.
Cú pháp câu lệnh: ACALL addr11
Chức năng: Gọi không điều kiện một chương trình con đặt tại địa chỉ đợc chỉ ra trong câu lệnh. Lệnh này tăng bộ đếm chơng trình thêm 2 đơn vị để PC chứa địa chỉ của lệnh kế lệnh ACALL, sau đó cất nội dung 16 bit của PC vào ngăn xếp (byte thấp cất trớc) và tăng con trỏ ngăn xếp lên 2 đơn vị. Địa chỉ đích sẽ đựơc hình thành bằng cách ghép 5 bit cao của thanh ghi PC (sau khi đợc tăng), 3 bit cao của byte mã lệnh và byte thứ 2 của lệnh. Do đó chương trình con đợc gọi phải nằm trong đoạn 2 Kbyte của bộ nhớ chơng trình chí it phải chứa lệnh đầu tiên của chơng trình con này. Lệnh không làm ảnh hởng tới các cờ.
2.Lệnh gọi dài.
Cú pháp câu lệnh: LCALL addr16
Chức năng: Gọi một chơng trình con đặt tại địa chỉ đợc chỉ ra trong câu lệnh. Lệnh này tăng bộ đếm chơng trình thêm 3 đơn vị để PC chứa địa chỉ của lệnh kế lệnh LCALL, sau đó cất nội dung 16 bit của PC vào ngăn xếp (byte thấp cất trớc) và tăng con trỏ ngăn xếp lên 2 đơn vị. Tiếp theo nó sẽ chuyển by...

 

Các chủ đề có liên quan khác

Top