Tải bản đầy đủ (.pdf) (7 trang)

thiết kế hệ thống điều khiển thang máy, chương 6 docx

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 (384.59 KB, 7 trang )

Chương 6:
Ch

¬ng
tr×nh xö lý
p
h
Ým
chung
Keybo
a
rd
yes
R
u
n=
0?
y
e
s
Flo
_
C
all?
ye
s
Bu
z
y
=1
?


Reset
K
ey_buff01
C
all
_S
B
N02
Call
_SB
N03
C
all
_
SB
N0
1
Li
_
cal
l?
No
yes yes
yes
Up_call
?
Bu
sy
=1
R

un=0?
Bu
s
y
=
1
y
e
s
Call SBN07 Call
SBN09 Call
SBN
08
R
un=0?
yes
Call SBN04 Call SBN05 Call
SB
N0
6
Reset
K
ey_
buff0
2
H
×
nh
2
-

10
:

®
å
thu
Ë
t
to¸n
cña
ch

¬n
g
tr
×
nh
bµn
p
h
Ý
m
1. KiÓm tra xem cã
phÝm
gäi tÇng
kh«ng,
nÕu cã chuyÓn
sang
b


íc
2,
ng

îc
l¹i
sang
b

íc 8.
2. KiÓm tra cê busy, nÕu busy = 1 chuyÓn sang
b

íc
3,
ng

îc
l¹i
sang
b

íc 6.
3. KiÓm tra cê run, nÕu run = 0 chuyÓn sang
b

íc
4, nÕu
run = 1 chuyÓn
sang b


íc 5.
4. Gäi
ch

¬ng
tr×nh
con
SBN
002, sang
b

íc 8.
5. Gäi
ch

¬ng
tr×nh
con
SBN
003, sang
b

íc 8.
6. Gäi
ch

¬ng
tr×nh
con

SBN
001, sang
b

íc 8.
7. Reset cê key_buff1 ( cã
phÝm
gäi tÇng ) = 0, sang
b

íc 8.
8. KiÓm tra xem cã phÝm gäi thang kh«ng, cã sang
b

íc
9,
ng

îc
l¹i
sang b

íc 21.
9. KiÓm tra cê run, run = 0
th×
sang
b

íc
10, run = 1 sang

b

íc 12.
10. KiÓm tra cê busy, busy = 1
th×
sang
b

íc
11, busy = 0
sang
b

íc 13.
11. KiÓm tra cê run, run = 0
th×
sang
b

íc
15, run = 1 sang
b

íc 14.
12. KiÓm tra cê busy, busy = 1
th×
sang
b

íc

17, busy = 0
sang
b

íc 16.
13. Gäi
ch

¬ng
tr×nh
con
SBN
007, sang
b

íc 20.
14. Gäi
ch

¬ng
tr×nh
con
SBN
009, sang
b

íc 20.
15. Gọi
ch


ơng
trình
con
SBN
008, sang
b

ớc 20.
16. Gọi
ch

ơng
trình
con
SBN
004, sang
b

ớc 20.
17. Kiểm tra cờ run, run = 0
thì
sang
b

ớc
19, run = 1 sang
b

ớc 18.
18. Gọi

ch

ơng
trình
con
SBN
005, sang
b

ớc 20.
19. Gọi
ch

ơng
trình
con
SBN
006, sang
b

ớc 20.
20. Reset cờ key_buff 02 ( có
phím
gọi thang ) =
0.
21. Kết thúc
ch

ơng
trình.

2.5
Ch

ơng
trình
đó
ng
-
mở
cửa
(
door
).
Op
e n _
D
o o
r
Se
t
T
IM
0 1
TIM 2 = 0
?
ye s
Re
a
d
k e y

Cl
o
s e _ f a s t?
ye s
Cl
o
s
e
d
o o
r
Se
t
T
IM
0 3
TIM
3 = 0
ye s
Re
a
d
k e y
H
ì
n
h
2-
11
:

S
ơ đ

th u

t
to
á
n
c

a
c h

ơng
tr
ì
nh c ử
a ( D
o
or
).
1. Ra lệnh mở cửa;
đặt
bộ
đếm
TIM 002, chuyển sang
b

ớc

2.
2. Kiểm tra xem
đã
hết thời gian trễ
ch

a,
nếu
ch

a th
ì
sang
b

ớc
3,
ng

ợc
lại
sang
b

ớc 5.
3. Gọi
ch

ơng
trình đọc phím

( Read_key ), sang
b

ớc 4.
4. KiÓm tra xem cã cê
®
ãng
cöa nhanh
kh«ng,
nÕu cã
th×
sang
b

íc
5,
ng

îc
l¹i

b

íc 2.
5. Ra lệnh
đóng
cửa,
đặt
bộ TIM 003, sang
b


ớc 6.
6. Kiểm tra xem
đã
hết thời gian trễ
ch

a,
nếu
ch

a th
ì
sang
b

ớc
7,
ng

ợc
lại
sang
b

ớc 8.
7. Gọi
ch

ơng

trình đọc phím
( Read_key ), sang
b

ớc 6.
8. Kết thúc
ch

ơng
trình.
2.6.1
các
Ch

ơng
trình
ng
ắt.
2.6.1
Ch

ơng trình
ngắt
sensor.
St
art
INC
S
ens
o

r
<
=
Sensor
CMP 3
>
Set S03
=1
Set S04
=1
<
=
Sensor CMP 5
Set S05
=1
En
d

đ

thuật
toán
xử lý ngắt Sensor
St
art
No
Key_buff01=1 ?
St
art
No

Key_bu
ff01=1
?
Calculat
e K
ey
Set
K
ey_buff0
1=1
End
Calculat
e K
ey
Set
K
ey_buff0
1=1
E
nd

đ

thu

t
toán
xử lý
ngắt
bàn phím

gọi
tầng
Sơ đồ
thuật
toán
xử lý ngắt
bàn
ph
í
m
gọi
thang
H
ì
nh
2-12
:
C
á
c s
ơ
đồ
thu

t
toán
xử lý
ngắt.
1.
Tăng giá

tr

sensor
lên
một
giá trị,
chuyển sang
b

ớc 2.
2. So
sánh giá
trị của sensor với số 3, nếu
bằng
sang
b

ớc
3, lớn hơn
sang b

ớc
4, nếu nhỏ
hơn
sang
b

ớc 6.
3. Set cờ S03 = 1, sang
b


ớc 7.
4. So
sánh giá
tr

của sensor với số 5, nếu
bằng
sang
b

ớc
5, nhỏ hơn
sang b

ớc 6.
5. Set cờ S05 = 1, Reset
giá
tr

sensor = 0, chuyển sang
b

ớc 7.
6. Set cờ S04 = 1, chuyển sang
b

ớc 7.
7. Kết thúc
ch


ơng
trình.
2.6.2
Ch

ơng
t
r
ình
ngắt đọc phím
gọi
tầng.
1. Kiểm tra xem
phím
bấm
tr

ớc
đó đã
đợc
xử lý
ch

a,
nếu
ch

a
(

key_buff
= 1 )
thì
sang
b

ớc
3, rồi ( key_buff1 = 0 )
thì
sang
b

ớc 2.
2.
Tính toán
v
à
đ
a
ra

của
p
h
í
m
đợc
gọi ( Scan code
), set
key_buff1=1.

3. Kết thúc
ch

ơng
trình.

×