thiết kế và thi công mạch đếm sản phầm dùng vi điều khiển 8051 . chương trình hệ thống và ứng dụng - Pdf 13

Lời giới thiệu
Trong quá trình hiện nay, máy tính điện tử đã góp phần không nhỏ đối
với sự phát triển của xã hội. Do yêu cầu của con ngời ngày càng cao , các thế
hệ máy tính đã liên tục đợc phát triển không ngừng . Ngay trong giai đoạn
đầu các thế hệ vi xử lý 8 bít đợc dùng là Z80 . 8085 , sau đó là các hệ vi xử
lý 16 bít nh 8086 , 8088
Các hệ vi xử lý đã góp phần quan trọng trong việc chơng trình hóa các
hoạt động của máy móc trong công nghiệp nhờ vào các phần mềm ứng
dụng . Một khi trong công nghiệp đã ứng dụng nhiều vào vi xử lý thì các nhà
chế tạo không bỏ lỡ cơ hội cho ra đời các họ vi điều khiển ngày càng tiến bộ
hơn
Vi điều khiển đợc sử dụng nhiều trong các thiết bị công nghiêp, trong
máy giặt , trong điều khiển đèn giao thông , trong các đồ chơi giải trí
Tại việt nam việc chơng trình hóa các hệ thống đang đợc áp dụng ngày càng
nhiều trong các nhà máy công nghiệp
Để tìm hiều về vi điều khiển và tìm hiệu một ứng dụng cụ thể của nó nhóm
chúng em xin thực hiện đề tài gồm 2 phần chính :
Phần 1 : khảo sát vi điều khiển 8051 ,, vi mạch chuyển đổi mức điện
áp TTL sang RS 232 , cùng với bộ nhớ bán dẫn và cảm biến hồng ngoại.
Phần 2 : Thiết kế và thi công mạch đếm sản phầm dùng vi điều khiển
8051 . Chơng trình hệ thống và ứng dụng
Nhờ có sự giúp đỡ của quý thầy cô và bạn bè, nhóm chúng em đã cố gắng
thực hiện đề tài đợc giao nhng do kiến thức và thời gian có hạn nên đề tài
không thể tránh khỏi thiết sót nên rất mong sự đóng góp của quý thầy cô và
bạn bè
Hà Nội , ngày 27 tháng 11 năm 2009-12-05
Giáo viên hớng dẫn : Nguyễn Anh Dũng
Nhóm sinh viên thực hiện :
Nguyễn Hồng Mạnh
Hoàng Văn Hoàn
Hà Văn Lợng

-4 port I/0 8 bit
-3 bộ định thời 16 bit
-Giao tiếp nối tiếp
-64 KB không gian bộ nhớ chơng trình mở rộng
-64 KB khônh gian bộ nhớ dũ liệu mở rộng
-một bộ vi xử lí(thao tác trên các bit đơn)
-210 bit đợc địa chỉ hoá
-bộ nhân/chia 4us
1.kiến trúc phần cứng của 8051
Phần chính của vi điều khiển 8051 là bộ vi xử lý trung tâm(CPU:
central processing unit) bao gồm:
- Thanh ghi tích luỹ A
- Thanh ghi tích luỹ phụ B, dùng cho phép nhân và phép chia
- Đơn vị logic 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
- con trỏ ngăn xếp
- ngoài ra còn có bộ nhớ chơng trình, bộ giải mã lệnh, bộ điều khiển
thời gian và logic
Hình 1.1 : Sơ đồ khối 89s52
Đơn vị xử lý trung tâm nhận trực tiếp xung từ bộ dao động, ngoài ra còn
có khả năng đa một tín hiệu giữ nhịp từ bên ngoài.
Chơng trình đang chạy có thể cho dừng lại nhờ một khối điều khiển 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 của bộ
đếm định thời hoặc cũng có thể là giao diện nối tiếp.
ba bộ định thời 16 Bit hoạt động nh một bộ đếm.
Các cổng(Port 0, Port 1 Port 2 Port 3). Sử dụng vào mục đích điều khiển.
ở cổng 3 có thêm các đờng dẫn điều khiển dùng để trao đổi với bộ nhớ ở bên
ngoài, hoặc để đầu nối giao diện nối tiếp, cũng nh các đờng ngắt dẫn ở bên
ngoài.

4 k 7
U 1 A T 8 9 S 5 2
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
2 0
2 1
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
3 0
3 1
3 2
3 3
3 4
3 5
3 6
3 7
3 8

P S E N
A L E / P R O G
E A / V P P
P 0 . 7 / A D 7
P 0 . 6 / A D 6
P 0 . 5 / A D 5
P 0 . 4 / A D 4
P 0 . 3 / A D 3
P 0 . 2 / A D 2
P 0 . 1 / A D 1
P 0 . 0 / A D 0
V C C
P 1 . 0 / T 2
P 1 . 1 / T 2 E X
P 1 . 2
P 1 . 3
P 1 . 4 / S S
P 1 . 5 / M O S I
P 1 . 6 / M I S O
P 1 . 7 / S C K
R S T
P 3 . 0 / R X D
S C K
D I
R 2
4 k 7
X 1
1 2 M h z
V C C
J 3

1 7
4
1 6
3
1 5
2
1 4
1
C 2
3 3 p
R 1
4 k 7
R 3
4 k 7
Hình 2.6. Sơ đồ mạch nạp ISP ở cổng song song
2.3. Port 2.
Port2 là một port công dụng kép: Các đường xuất nhập hoặc là byte
cao của bus đòa chỉ đối với các thiết kế dùng bộ nhớ mở rộng.
H×nh 2.7. CÊu tróc cđa c¸c ch©n trªn port 2
2.4. Port 3
Mçi ch©n trªn Port 3 ngoµi chøc n¨ng xt nhËp cßn cã mét chøc n¨ng
riªng, cơ thĨ nh sau:
Bit Tên Chức năng
P3.0 RXD Dữ liệu nhận cho port nối tiếp
P3.1 TXD Dữ liệu phát cho port nối tiếp
P3.2 INTO Ngắt 0 bên ngoài
P3.3 INT1 Ngắt 1 bên ngoài
P3.4 TO Ngõ vào của timer/counter 0
P3.5 T1 Ngõ vào của timer/counter 1
P3.6 WR Xung ghi bộ nhớ dữ liệu ngoài

3. c¸c thanh ghi
a. C¸c thanh ghi Port xt nhËp:
C¸c Port cua 8051 bao gåm port 0 á ®Þa chØ 80H.port1 á dÞa chØ
90H,port2 á ®Þa chØ A0H vµ port 3 á ®Þa chØ B0H.TÊt c¶ c¸c port dỊu ®ỵc ®Þa
chØ ho¸ tïng bit .§iỊu ®ã cung cÊp mét kh¶ n¨ng giao tiÕp thn lỵi.
b.C¸c thanh ghi TIMER:
8051 chøa 2 bé ®Þnh thêi ®Õm 16bit ®ỵc dïng trong viƯc ®Þnh thêi
ho¹c ®Ðm sù kiƯn.Timer0 ở ®Þa chØ 8AH(TLO:byte thÊp) vµ 8CH (THO:byte
cao)Timer1 ë ®Þa chØ 8BH (TL1 byte thÊp)vµ 8DH(TH1:byte cao).ViƯc vËn
hµnh cđa Timer ®ỵc set bëi thanh ghi Timer MODE(TMOD)ë ®Þa chØ 89H cµ
thanh ghi ®iỊu khiĨn timer(TCON)ë ®Þa chØ 88H .ChØ cã TCON ®ỵc ®Þa chØ
ho¸ tõng bit.
c.C¸c thanh ghi Port nèi tiÕp:
8051 chứa một port nối tiếp trên chip dành cho việc trao đổi thông tin
với các thiết bị nối tiếp nh máy tính, Modern hoặc cho việc giao tiếp với các
IC khác có giao tiếp nối tiếp (có bộ chuyển đổi A/D,các thanh ghi dịch ).
Một thanh ghi gọi la bộ đệm dữ liệu nối tiếp (SBUF) ở địa chỉ 99H sẽ dữ cả
hai vai trò truyền và nhận dữ liệu.Khi truyền dữ liệu thì ghi lên SBUF, khi
nhận dữ liệu thì đọc SBUF. Các MODE vận hành khác nhau đợc lập trình qua
thanh ghi diều khiển Port nối tiếp (SCON) đợc dịa chỉ hoá từng bit ở địa chỉ
98H.
d.Các thanh ghi ngắt :
8051 có cấu trúc 5 nguồn ngắt , 2 mức u tiên.Các ngắt bị cấm sau khi
reset hệ thống và sẽ đợc cho phép bằng việc thanh ghi cho phép ngắt (IE) ở
địa chỉ 8AH. Cả hai thanh ghi đợc địa chỉ hoá từng bit.
5.Hoạt động của bộ định thời(timer)
Giới thiệu
Một định nghĩa đon giản của timer là một chuỗi các flip-flop chia đôi
tần số nôí tiếp với nhau,chúng nhận tín hiệu vào làm nguỗn xung nhịp .Ngõ
ra của tần số cuối lam nguồn xung nhịp cho flip-flop báo tràn của timer (flip-

Byte thấp của
timer0
Byte thấp của
timer1
Byte cao của
timer 0
Byte cao của
timer 1
88H
89H
8AH
8BH
8CH
8DH

Không
Không
Không
Không
Không
Bảng 2.4:Thanh ghi chức năng đặc biệt dùng timer.
A :Thanh ghi chế độ timer(TMOD)
Thanh ghi TMOD chứa 2 nhóm 4bit dùng để đặt chế dộ làm việc cho
timer0 và timer1.
Bit Tên Timer Mô tả
7
6
5
4
2

bit chọn counter/timer
bit 1 của chế độ
bit 0 của chế độ
Bảng 2.5:Tóm tắt thanh ghi TMOD
B Thanh ghi điều khiển timer(TCON)
Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển cho
timer 0 và timer 1.
Bit Ký
hiệu
địa chỉ Mô tả
TCON.7 TF1 8FH Cở báo tràn TIMER 1. Đợc đặt bởi phần cứng,
khi tràn đợc xóa bằng phần mềm, hay phần
cững khi bộ xử lý chỉ đến chơng trình phục vụ
ngắt
TCON.6 TR1 8EH Bit điều khiển timer 1 chạy, đặt và xóa bằng
phần mềm.
TCON.5 TF0 8DH Cờ báo tràn Timer 0, tơng tự nh Timer 1.
TCON.4 TR0 8CH Bit điều khiển chạy cho Timer 0. đặt xóa bằng
phần mềm.
TCON.3 IE1 8BH Cờ báo ngắt 1 bên ngoài.
TCON.2 IT1 8AH Cờ ngắt do Timer 1
TCON.1 IE0 89H Cờ báo ngắt do Timer 0
TCON.0 IT0 88h Cờ ngắt do Timer 0
C. Các chế độ timer.
.Chế độ 0,chế độ timer 13bit
Để tơng thích với 8048(có trớc 8051), ba bit cao của TLX(TL0 /hoặc
TL1) không dùng
Xung nhịp timer
Cờ báo
tràn

Khi timer 0 ở chế độ 3 có thể cho timer 1 chạy và ngng bằng cách chuyển
nó ra ngoài và vào chế độ 3 . Nó vẫn có thể đợc sử dụng bằng port nối tiếp
nh bộ tạo tốc độ baund hoặc nó có thể đợc sử dụng bằng bất cứ cách nào
không cần ngắt (vì nó không còn đợc nối với TF1).
Xung nhịp Timer
Xung nhịp Timer Cờ báo tràn
TFx
TLx THx
(5 bit) (8
bit)
TL1 TH1
TL0 TF0
TH0 TF1

1/12 Fosc Cờ báo tràn
6. Hoạt động port nối tiếp.
Giới thiệu
8051 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ khác
trên một dải tần số rộng. Chức năng chủ yếu của một port nối tiếp là thực
hiện chuyển đổi song song sang nối tiếp với dữ liệu xuất và chuyển đổi nối
tiếp sang song song với dữ liệu nhập.
Truy xuất phần cứng đến port nối tiếp qua các chân TXD và RXD. Các
chân này có các chức năng khác với 2 bit của port3, P3.1 ở chân 11 (TXD)
và P3.0 ở chân 10 (RXD).
Port nối tiếp cho hoạt động song song (full duplex:thu và phát đồng thời) và
đệm lúc thu (receiver buffering) cho phép một ký tự sẽ đợc thu và đợc giữ
trong khi ký tự thứ 2 đợc nhập. Nừu CPU đọc ký tự thứ nhất trớc khi ký tự
thứ 2 đợc thu đầy đủ thì dữ liệu sẽ không bị mất.
Hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất tới port nối
tiếp là: SBUF và SCON. Bộ đếm port nối tiêp (SBUF) ỏ tại địa chỉ 99H thật

SCON.4 REN 9CH
SCON.3 TB8 9BH
SCON.2 RB8 9AH
SCON.1 TI 99H
SCON.0 RI 98H
-Bit 0 của chế độ port nối tiếp
-Bit 1 của chế độ port nối tiếp
-Bit 2 của chế độ 2 nối tiếp
Cho phép truyền thông đa xử lý
trong các chế độ 2 và 3 ,RI sẽ
không bị tác động
Nếu bit thứ 9 thu đợc bằng 0
-cho phép thu (đặt bằng 1)
-bit 8 phát bit thứ 9 đợc phát các
chế độ 2 và 3
-bit 8 thu bit thứ 9
-cờ ngắt phát ,đặt lên 1 khi kết
thúc phát
-cờ ngắt thu ,đặt lên 1 khi kết thúc
nhận
Bảng 2.7:Tóm tắt thanh ghi chế độ port nối tiếp SCON.
Các chế độ hoạt động của PORT nối tiếp
Port nối tiếp có 4 chế độ hoạt động :
1)_ chế độ 0 :
- đây là chế độ mà Port nối tiếp đợc dùng nh 1 thanh ghi dịch 8 bit. Dữ
liệu đợc truyền/nhận nối tiếp trên chân RXD, chân TXD đợc dùng để phát
xung clock dịch bit. Khi truyền/ nhận các byte dữ liệu 8 bit, bit có giá trị
thấp nhất ( LBS ) đợc truyền nhận trớc tiên và bit MSB đợc truyền/nhận sau
cùng.
- việc truyền dữ liệu đợc bắt đầu bằng việc ghi 1 byte dữ liệu vào SBUF

Chế độ này là sự kết hợp của chế độ 1 và chế độ 2, Port nối tiếp hoạt
động nh 1 bộ UART 9 bit và tốc độ baud của UART thay đổi giống nh chế
độ 1 ( đợc cung câp bởi timer 1 và timer 2 ).
Tốc độ baud port nối tiếp .
Nh đã nói, tốc độ bốt cố định ở các chế độ 0 và 2. trong chế độ 0 nó
luôn luôn là tần số dao động trên chip đợc chia cho 12. Thông thờng thạch
anh ấn định tần số dao động trên chip của 8051 nhng cũng có thể sử dụng
nguồn xung nhịp khác. giả sử với tần số dao động danh định là 12MHz, thì
tốc độ baud chế độ 0 là 1MHz
Dao động trên chip Xung nhịp tốc độ
baud
a.chế độ 0

Dao động trên chip Xung nhịp tốc
độ baud b.chế độ 2

Hình :Các nguồn tạo xung nhịp cho port nối tiếp
/12
/64
/32
8051 phát và thu dữ liệu nối tiếp theo nhiều tốc độ khác nhau. Tốc độ
truyền có thể lập trình đợc thông qua bộ định thời Timer 1. Trớc khi tìm hiểu
vấn đề này, chúng ta sẽ xem xét quan hệ giữa tần số thạch anh và tốc độ baud
của 8051.
tần số chu trình máy của 8051 là tần số thạch anh chia cho 12. Nếu
XTAL = 11.0592MHz thì tần số chu trình là 921.6kHz (11.0592MHz : 12 =
921.6kHz). Mạch UART truyền nối tiếp của 8051 lại chia tần số chu trình

SBUP để đợc đọc.
Các ngắt cổng nối tiếp khác với các ngắt Timer. Cờ gây ra ngắt cổng nối
tiếp không bị xoá bằng phần cứng khi CPU chuyển tới ngắt. Do có hai nguồn
ngắt cổng nối tiếp TI và RI. Nguồn ngắt phải đơcj xác định trong ISR và cờ
tạo ngắt sẽ đợc xoá bằng phần mềm. Các ngắt Timer cờ ngắt đợc xoá bằng
phần cứng khi CPU hớng tới ISR.
.Các ngắt ngoài.
Các ngắt ngoài xảy ra khi có mức thầp hoặc sờn xuống trên chân INT0
hoặc INT1 của vi điều khiển. Đây là chức năng chuyển đổi của các bit Port
3(P3.2 và P3.3).
Các cờ tạo ngắt nàylà các bit IE0 và IE1 trong TCON. Khi quyền điều
khiển đã chuyển đến ISR, cờ tạo ngắt chỉ đợc xoá nếu ngắt đợc tích cực bằng
sờn xuống. Nếu ngắt đợc tích cực theo mức, thì nguồn yêu cầu ngắt bên
ngoài sẽ điều khiển mức của cờ thay cho phần cứng.
Nếu ngắt ngoài đợc tác đọng bằng sờn xuống thì nguồn bên ngoài phải
giữ chân tác động ở mức cao tối thiểu một chu kỳ và giữ nó ở mức thấp trong
mộy chu kỳ nữa để đảm bảo phát hiện đợc cạnh xuống. Nếu ngắt ngoài đợc
tác động theo mức thì nguồn bên ngoài phải giữ tín hiệu yêu cầu tác động
cho ngắt đợc yêu cầu thật sự tạo ra và không tác động yêu cầu ngắt trớc khi
ISR đợc hoàn tất. Nếu không một ngắt khác sẽ đợc lặp lại.
Phần II
Thiết kế và thi công
Mạch đếm sản phẩm dùng cảm biến hồng ngoại hiển thị lên màn hình vi
tính dùng phần mềm Hyper Terminal
I / sơ đồ nguyên lý .
KhốI VI ĐIềU KHIểN
Sơ đồ mô phỏng bằng phần mềm ISIS Professional
II/ Nguyªn lý ho¹t ®éng cña m¹ch
M¹ch nµy gåm phÇn m¹ch nguån vµ phÇn m¹ch ®iÒu khiÓn.M¹ch
nguån sö dông IC nguån lµ 7805 ,IC 7805 t¹o ra ®iÖn ¸p 5V ®Ó cÊp cho

Điện áp của VDK là điện áp mức TTL , Còn điện áp của máy tính là mức RS
232
2 mức điện áp này không tơng thích với nhau , cho nên ta cần 1 bộ chuyển
đổi mức điện áp TTL sang mức RS 232 và ngợc lại để VDK và máy tính có
thể giao tiếp đợc với nhau
Vi mạch MAX 232 của hãng MAXIM là một vi mạch chuyên dụng dùng
trong giao tiếp nối tiếp với máy tính . Chúng có nhiệm vụ chuyển đổi mức
TTL ở lối vào thành mức + 10V hoặc 10 V ở phía truyền, và các mức
+3 +15 V hoặc -3-15V thành mức TTL ở phía nhận
Dữ liệu đợc đa vào T2IN thông qua chân TXD và d liệu ra đợc đa ra T2OUT
và vào chân số 2 là chân RXD của cổng COM để hiển thị lên màn hình máy
vi tính
*/// PHầN CứNG :
Mạch PCB nh sau :
*/// PHầN MềM
*/ Lu đồ thuật toán của đề tài đếm sản phẩm dùng cảm biến hồng ngoại


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status