Bài tập dài Thiết kế hệ VXL 8 bit
Đề bài: Thiết kế hệ VXL điều khiển động cơ bớc (hai động cơ)
I. Yêu cầu:
Thiết kế hệ VXL :
+) Điều khiển chuyển động
+) Tạo thành một bộ điều khiển theo luật tỷ lệ (tích phân)
II. Nội dung:
1. Phân tích yêu cầu công nghệ(suy ra luật điều khiển)
2. Thiết kế sơ đồ khối hệ VXL
3. Chọn phần tử
4. Viết chơng trình
5. Thử nghiệm
1
Chơng I: Giới thiệu động cơ bớc
I. Giới thiệu động cơ bớc:
Các hệ truyền động rời rạc thờng đợc thực hiện nhờ động cơ chấp hành đặc
biệt là động cơ bớc.
Động cơ bớc thực chất là một động cơ đồng bộ dùng để biến đổi các tín
hiệu điều khiển dới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển
động góc quay hoặc các chuyển động của roto và có khả năng cố định roto vào
những vị trí cần thiết.
Động cơ bớc làm việc đợc là nhờ có bộ chuyển mạch điện tử đa các tín hiệu
điều khiển vào stato theo một thứ tự và một tần số nhất định. Tổng số góc quay t-
ơng ứng với số lần chuyển mạch, cũng nh chiều quay và tốc độ quay của roto, phụ
thuộc vào thứ tự chuyển đổi và tần số chuyển đổi. Khi có một xung điện áp đặt
vào dây quấn stato (phần ứng) của động cơ bớc thì roto (phần cảm) của động cơ sẽ
quay đi một góc nhất định, góc ấy là một bớc quay của động cơ. Khi các xung
điện áp đặt vào phần ứng thay đổi liên tục thì roto sẽ quay liên tục (nhng thực chất
chuyển động đó vẫn là theo các bớc rời rạc).
Về cấu tạo có thể coi động cơ bớc là tổng hợp của hai loại động cơ: Động
cơ một chiều không tiếp xúc và động cơ đồng bộ giảm tốc công suất nhỏ. Xét về
cấu tạo, động cơ bớc có ba loại chính: Động cơ bớc có roto đợc kích thích (có dây
quấn kích thích hoặc kích thích bằng nam châm vĩnh cửu), động cơ bớc có roto
không kích thích (động cơ kiểu cảm ứng và động cơ kiểu phản kháng), động cơ b-
ớc hỗn hợp (kết hợp cả hai loại trên).
Theo một phơng diện khác, có thể coi động cơ bớc là linh kiện (hay dụng
cụ số mà ở đó các thông tin số hoá đã thiết lập sẽ đợc chuyển thành chuyển động
quay theo từng bớc. Động cơ bớc sẽ thực thực hiện trung thành các lệnh đã số hoá
mà máy tính yêu cầu( hình 1).
Số xung bằng số buớc (3xung -3 buớc)
F
Một xung bằng một buớc
Hình 1. Mô hình số hoá động cơ buớc
2
II. Nguyên lý hoạt động của động cơ bớc:
Khác với động cơ đồng bộ không thờng, roto của động cơ bớc không có
cuộn dât khởi động (lồng sóc mở máy) mà nó đợc khởi động bằng phơng pháp tần
số, roto của động cơ bớc có thể đợc kích thích (roto kích thích) hoặc không đợc
kích thích (roto thụ động).
Hình sau vẽ sơ đồ nguyên lý động cơ bớc m pha với roto có hai cực (2p=2)
và không đợc kích thích.
3
a)
4
1
m
2
F
1
3
b)
c)
4
4
3
F
2
1
1
F
m
2
m
2
F
1
F
1
2
F
F
Hình 1.2. Sơ đồ nguyên lý động cơ bớc m pha với rôto 2 cực và các lực điện
từ khi điều khiển bắng xung một cực.
Xung điện áp cấp cho m cuộn dây stato có thể là xung một cực (hình 3a)
hoặc xung hai cực (hình 3b).
0
u
t t
0
u
a)
b)
X
1
Hình 1.3. Xung điện áp cấp cho cuộn dây stato:
a) xung một cực ; b) xung hai cực
Chuyển mạch điện tử có thể cung cấp điện áp điều khiển cho các cuộn dây
stato theo từng cuộn dây riêng lẻ hoặc theo từng nhóm các cuộn dây. Trị số và
chiều của lực điện từ tổng F của động cơ và do đó vị trí của roto trong không gian
hoàn toàn phụ thuộc vào phơng pháp cung cấp điện cho các cuộn dây.
Ví dụ các cuộn dây của động cơ trên hình hai đợc cấp điện cho từng cuộn
dây riêng lẻ theo thứ tự 1,2,3 m, bởi xung một cực, thì roto của động cơ có m vị
trí ổn định trùng với trục của các cuộn dây (hình 2).
Trong thực tế để tăng cờng lực điện từ tổng của stato và do đó tăng từ thông
và mômen đồng bộ, ngời ta thờng cấp điện cho hai, ba hoặc nhiều cuộn dây. Lúc
3
đó roto của động cơ bớc sẽ có vị trí cân bằng (ổn định) trùng với vecto điện từ
tổng F. Đồng thời lực điện từ tổng F cũng có giá trị lớn hơn lực điện từ thành phần
của các cuộn dây stato (hình 2b và 2c).
Trên hình 2b vẽ lực điện từ tổng F khi cung cấp điện đồng thời cho một số
chẵn các cuộn dây (2 cuộn dây). Lực điện từ tổng F có trị số lớn hơn và nằm ở vị
trí chính giữa hai trục của hai cuộn dây. Trên hình 2c vẽ lực điện từ tổng F khi
cung cấp điện đồng thời cho một số lẻ các cuộn dây (3 cuộn dây). Lực điện từ
tổng F nằm trùng với trục của một cuộn dây nhng có trị số lớn hơn. Trong cả hai
trờng hợp (cấp điện cho một số chẵn cuộn dây và cho một số lẻ cuộn dây), rôto
của động cơ bớc sẽ có m vị trí cân bằng. Góc xê dịch giữa hai vi trí liên tiếp của
roto bằng
m/2
.
Nếu cấp điện theo thứ tự một số chẵn cuộn dây, rồi một số lẻ cuộn dây (ví
dụ kết hợp giữa hình 2b và 2c), có nghĩa là số lợng cuộn dây đợc điều khiển luôn
luôn thay đổi từ chẵn sang lẻ và từ lẻ sang chẵn thì số vị trí cân bằng của roto sẽ
tăng gấp đôi là 2m, độ lớn của một bớc sẽ giảm đi một nửa bằng
m2/2
. Trờng
hợp này đợc gọi là điều khiển không xứng; hay điều khiển nửa bớc (Haft Step).
Nếu số lợng cuộn dây đợc điều khiển luôn luôn không đổi (một số chẵn
cuộn dây hoặc một số lẻ cuộn dây, ví dụ hình 2b và 2c) thì roto có m vị trí cân
bằng và đợc gọi là điều khiển đối xứng, hay điều khiển cả bớc (Full Step).
III. ứng dụng của động cơ bớc:
Động cơ bớc ngày càng đợc sử dụng rộng rãi trong các hệ thống tự động,
điều khiển xa và nhiều thiết bị điện tử khác. Đặc biệt là các lĩnh vực: điều khiển
đọc ổ cứng, ổ mềm và các máy in trong hệ thống máy tính, điều khiển robốt, điều
khiển tiêu cự trong các hệ quang học, điều khiển định vị trong các hệ quang khác
phức tạp, điều khiển bắt, bám mục tiêu trong các khí tài quan sát, lập trình điều
khiển trong các hệ gia công cắt gọt, điều khiển các cơ cấu lái phơng và chiều
trong máy bay
4
Chơng II: thiết kế Hệ thống điều khiển động cơ bớc
I. Các yêu cầu về điều khiển động cơ bớc:
1. Các chế độ điều khiển:
Hình 2.1. Giản đồ nguyên lý các lực điện từ khi điều khiển ở chế độ vi bớc
Hình 2.1 vẽ mối quan hệ giữa véc tơ lực điện từ F
1
,F
2
của hai cuộn dây 1và
2 khi đợc cấp dòng điện đơn cực và vecto lực điện từ tổng F.
Trên hình 2.1:
F
1
: lực điện từ tác động lên roto khi cuộn dây 1 đợc kích thích;
F
2
: lực điện từ tác động lên roto khi cuộn dây 2 đợc kích thích;
F : lực điện từ tổng;
: góc bớc;
: góc cần điều chỉnh (góc vi bớc)
Xét trong tam giác OAB ta có
cos2
cos
cos
21
2
2
2
1
21
FFFF
FF
++
+
=
Từ công thức trên ta suy ra các trờng hợp sau:
a. Điều khiển cả bớc:
- Điều khiển cả bớc: Đầu tiên cho F
2
= 0 và F
1
= F nên roto ở vị trí trục cuộn
dây một. Sau đó cho F
1
= 0 và F
2
= F nên roto ở vị trí trục cuộn dây hai.
b. Điều khiển nửa bớc:
- Nếu ta cho F
2
=0 và F
1
=F, roto ở vị trí trục cuộn dây1.
- Tiếp theo là cho F
1
=F
2
=F,
( )
22
cos
cos12
cos1
cos
==
+
+
=
roto ở vị trí giữa góc
.
- Sau đó cho F
1
=0 và F
2
=F, roto ở vị trí trục cuộn dây 2.
Trong trờng hợp này roto sẽ chuyển động từng bớc
),2/,0.(2/
==
.
c. Điều khiển vi bớc:
Nếu ta điều khiển sao cho lực F
1
giảm dần theo từng bớc từ F đến 0 và lực F
2
tăng dần từng bớc từ 0 đến F thì roto sẽ quay từng bớc từ vị trí OA đến OB.
2. Các đặc trng của tín hiệu điện điều khiển động cơ bớc:
Đối với động cơ bớc, tín hiệu điện điều khiển là các xung rời rạc kế tiếp
nhau. Việc điều khiển động cơ bớc phụ thuộc vào các tham số sau của xung điều
khiển:
- Dòng điện I, kể cả cực tính (và liên hệ mật thiết với nó là mức điện áp U).
- Độ rộng xung (liên quan đến khả năng dịch bớc).
5
- Tần số xung (liên quan đến tốc độ quay).
- Cách thức cấp xung, bao gồm thứ tự và số lợng cuộn dây pha đợc cấp (liên
quan đến chiều quay và mômen tải).
Tuỳ thuộc vào việc cấp xung, động cơ bớc có bốn trạng thái sau đây:
a. Trạng thái không hoạt động: Khi không có cuộn dây nào đợc cấp điện:
- Đối với động cơ phản kháng: roto sẽ quay trơn.
- Đối với động cơ nam châm vĩnh cửu và động cơ kiểu hỗn hợp: có mômen hãm,
roto có xu hớng dừng ở các vị trí mà đờng khép từ thông giữa các cực của roto và
stato là nhỏ nhất.
b.Trạng thái giữ: Khi một số cuộn dây pha đợc cấp điện một chiều. Roto mang tải
sẽ đợc giữ chặt ở vị trí góc bớc nhất định do lực điện từ tổng F sinh ra mômen giữ.
c.Trạng thái dịch chuyển bớc: roto sẽ dịch chuyển từ vị trí bớc đang đợc giữ sang
vị trí bớc tiếp theo khi các cuộn dây pha đợc cấp dòng phù hợp.
d.Trạng thái quay quá giới hạn: Trong chế độ không tải, nếu xung điều khiển có
tần số quá cao, động cơ sẽ quay vợt quá tốc độ. ở trạng thái này động cơ không
đảo chiều, không thể dừng đúng vị trí, nhng vẫn có thể tăng và giảm từ từ. Muốn
dừng và đảo chiều động cơ phải giảm xuông dới tốc độ giới hạn để hoạt động
trong chế độ bớc.
Nh vậy động cơ bớc chỉ đợc coi là làm việc khi ở hai trạng thái b và c.
3. Điều khiển dòng điện I và điện áp U:
Có rất nhiều cách để điều khiển dòng điện và điện áp nh : điều khiển dòng
áp bằng hệ số L/R, điều khiển dòng áp bằng độ rộng xung, điều khiển dòng áp
bằng điện áp hai mức, điều khiển dòng áp bằng nguồn dòng.
Trong phạm vi bài tập lớn này ta sử dụng phơng pháp điều khiển dòng áp
bằng nguồn dòng.
X
1
đk
X
T
Cuộn dây pha
I const
1
D
2
U
t
Hình 2.2. Sơ đồ nguyên lý mạch điều khiển bằng nguồn dòng
Nguồn dòng là bộ phận nguồn luôn phát ra một suất ra một giá trị dòng
điện không đổi I
const
. Điện áp ra của nó chính là điện áp U
t
rơi trên tải R
t
:
U
t
= I
const
.R
t
6
Khi ở chế độ giữ, X
đk
= 1 làm cho bóng bán dẫn T mở liên tục, trong cuộn
dây có dòng không đổi I, điện áp U
t
= U = I.R
Khi ở chế độ không kích hoạt (ngắt), X
đk
= 0 bóng bán dẫn T ngắt mạch,
trong cuộn dây khôngcó dòng điện chạy U
t
= U
max
.
4. Điều khiển tốc độ quay của động cơ:
Động cơ bớc có thể quay với bất kỳ tấc độ nào trong giải từ 0 vòng/phút
đến giá trị cực đại cho phép. Vận tốc của động cơ bớc hiểu là vận tốc trung bình.
Vận tốc trung bình động cơ bớc đợc tính:
360360
.
f
t
n
V
==
(vòng/giây)
Việc thay đổi vận tốc động cơ bớc đợc thực hiện bằng cách thay đổi tần số
dịch bớc f. Tần số dịch bớc f trong trờng hợp tổng quát không đồng nhất với các
xung điều khiẻn, mà nó là tổ hợp của sự biến đổi các trạng thái của các xung điều
khiển đó. Vì vậy việc điều khiển các xung điều khiển này thờng đợc thực hiện bởi
các bộ VXL.
Gọi T
cb
là thời gian giữa hai lần chuyển bớc liên tiếp, ta có vận tốc tức thời
V
t
V
t
=
cb
T.360
(vòng/giây)
5. Điều khiển chiều quay của động cơ bớc:
Chẳng hạn roto ở vị trí bớc thứ n. Nếu ta cấp điện sao cho nó chuyển sang
vị trí thứ (n+1) thì động cơ quay phải và nếu ta cấp điện sao cho nó chuyển sang
vị trí thứ (n-1) thì động cơ quay trái. Bộ tạo xung điều khiển sẽ thực hiện việc này.
Đối với động cơ 4 pha, nếu cấp xung một cực thì cũng có 4 và 8 trạng thái
cấp điện vào các cuộn dây cho hai trờng hợp điều khiển cả bớc và nửa bớc.
Ta có bảng trạng thái cấp điện các pha của động cơ 4 pha
TT 1 2 3 4 5 6 7 8
Cuộn 1 1 1 0 0 0 0 0 1
Cuộn 2 0 1 1 1 0 0 0 0
Cuộn 3 0 0 0 1 1 1 0 0
Cuộn 4 0 0 0 0 0 1 1 1
Điều khiển cả bớc chỉ có 4 trạng thái:1,3,5,7 hoặc 2,4,6,8
Giả sử ta điều khiển ở các trạng thái 1,3,5,7
TT 1 3 5 7
Cuộn 1 1 0 0 0
Cuộn 2 0 1 0 0
Cuộn 3 0 0 1 0
Cuộn 4 0 0 0 1
7
Nếu phát xung sao cho theo trình tự cấp điện cho cuộn dây từ 1,2,3,4 động
cơ sẽ chạy thuận và ngợc lại động cơ sẽ chạy ngợc.
Trong phạm vi bài tập lớn này ta sẽ thiết kế hệ thống điều khiển động cơ b-
ớc 4 pha sử dụng nguồn dòng với chế độ điều khiển cả bớc.
II. Sơ đồ mạch lực:
I1 I2 I3 I4
NPN
X
1
1
Q
X
2
NPN
2
Q
X
3
NPN
3
X
4
Q
RES1
RS
1
D
1
1
2
2
D
2
D
3
1 2
RS
RES1
RS
RES1
NPN
4
Q
D
4
1 2
RS
RES1
Hình 2.3. Sơ đồ mạch lực bằng nguồn dòng cho động cơ 4 pha
Mỗi pha đợc cấp bằng nguồn dòng riêng biệt, các bóng bán dẫn Q
1
, Q
2
, Q
3
,
và Q
4
làm nhiệm vụ chuyển mạch điện tử; điều khiển các bóng bán dẫn này là
các xung X
1
, X
2
, X
3
, và X
4
; các điốt D
1
, D
2
, D
3
, và D
4
làm nhiệm vụ xả năng l-
ợng ngợc lại nguồn, dập xung ngợc khi các bóng bán dẫn ngắt mạch.
t
X
1
t
X
2
t
X
3
t
X
4
Hình 2.4. Giản đồ xung điều khiển cả buớc
động cơ 4 pha (cho các trạng thái 1, 3, 5, 7).
III. Sơ đồ mạch điều khiển:
Mạch điều khiển gồm các phần sau:
- Khối nguồn
- VXL
8
- Vi mạch nhớ
- Khối vào/ra (I/O)
- Khối khuyếch đại
1. Khối nguồn :
7805
1
C
2
C
+6V
+5V
Hinh 2.5 Khối nguồn
Khối nguồn gồm có một IC 7805 , một tụ C1 = 3,3 F mắc ở ngõ vào và một
tụ C2 = 1 F mắc ở ngõ ra nhằm mục đích ổn định, điện áp vào 6V cha ổn định sau
khi qua khối nguồn thành nguồn 5V ổn định, bằng phẳng ( loại bỏ hết các đột
biến dơng ) ở ngõ ra để cung cấp cho mạch.
2. VXL :
a. Chọn VXL:
Từ yêu cầu dùng VXL 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 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, 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ệp á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, nó đợ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 và 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. 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ế.
b. Giới thiệu VXL 8051:
9
PSEN
ALE
RST
EA
Oscillatior
Bus control
CPU
Interrupt
control
Other
registers
*Alternate pin assignments for P1 and P3
Address/data
P3P1P2P0
RXDTXD
* *
I/O ports
Serial
port
128 bytes
RAM
Timer 1
Timer 0
T1
*
T0
*
Serial port
Timer 1
Timer 0
INT1
*
INT0
*
4K
ROM
Hình 2.6. Sơ đồ khối của chip 8051
17
INT1
P3.3
13
12
11
10
TXD
RXD
INT0
P3.1
P3.0
P3.2
16
15
14
WR
T1
T0
RD
P3.6
P3.4
P3.5
P3.7
EA
9
RST
30
31
ALE
29
PSEN
AD3
36
P0.3
28
A11
24
P2.3
A10
A9
A8
22
P2.1
P2.0
21
P2.2
23
A15
A14
A13
A12
26
P2.6
P2.4
P2.5
25
P2.7
27
7
P1.6
2
P1.2
P1.0
P1.1
1
4
P1.4
P1.3
2
P1.5
6
5
P1.7
8
AD2
AD1
AD0
38
P0.1
P0.0
39
P0.2
37
AD7
AD6
AD5
AD4
34
P0.6
P0.5
P0.4
35
P0.7
32
33
P0.3
36
AD3
RD
WR
INT0
RXD
TXD
INT1
T1
T0
28
13
P3.3
P3.1
11
10
P3.0
12
P3.2
P3.6
16
14
15
P3.5
P3.4
17
P3.7
P2.3
24
A11
P2.1
22
A9
21
P2.0 A8
23
P2.2 A10
P2.6
26
A14
25
P2.4
P2.5
A12
A13
27
P2.7
A15
AD0
AD1
AD2
P1.6
7
31
EA
RST
9
30
ALE
P1.2
2
P1.0
1
P1.1
P1.4
4
2
P1.3
6
P1.5
5
29
PSEN
8
P1.7
P0.1
38
39
P0.0
37
P0.2
AD4
AD5
AD6
AD7
P0.6
34
35
P0.4
P0.5
33
32
P0.7
8051
40
VCC
XTAL1
XTAL2
18
19
30pF
12MHz
30pF
VSS
20
RXDTXD
* *
Serial
port
Timer 1
Timer 0
T1
*
T0
*
Hình 2.7. Sơ đồ chân của 8051
10
3. Vi mạch nhớ:
Từ cấu trúc của vi điều khiển 8051 và yêu cầu thiết kế ta tiến hành phân chia
các vùng nhớ nh sau:
Bộ nhớ chơng trình 8K ROM chia làm hai vùng:
ROM trong (On-chip) có địa chỉ vật lý: 0000H ữ 0FFFH.
ROM ngoài (2732) có địa chỉ vật lý: 1000H ữ 1FFFH.
Bộ nhớ dữ liệu đợc mở rộng thêm 32K RAM ngoài gồm 4 thanh RAM
8K có địa chỉ vật lý: 2000H ữ 9FFFH.
4.Khối vào ra (I/O) :
Mạch ghép nối vào/ ra sử dụng IC 8255 với địa chỉ của từng cấu hình nh sau:
Địa chỉ cổng PA: A000H
Địa chỉ cổng PB: A001H
Địa chỉ cổng PC: A002H
Địa chỉ của từ điều khiển PSW: A003H
5.Khối khuếch đại:
Ta sử dụng transistor ghép quang 4N33 để khuếch đại dòng (công suất).
Tín hiệu từ các port I/O đợc đa đến các chân của các khối khuếch đại nh hình vẽ.
Tín hiệu ra là các xung X
1
, X
2
, X
3
, và X
4
đợc đa vào các chân bazơ của các bóng
bán dẫn Q
1
, Q
2
, Q
3
, và Q
4
làm nhiệm vụ chuyển mạch điện tử
7805
2
C
+5V
R
1
R
R
R
+5V
2
T
3
4
Hình 2.8 Khối khuếch đại
IV. Chọn phần tử và tính toán:
Giả sử chọn loại động cơ bớc có:
+)
=1.8
0
+) V
max
=15 vòng/giây (900vòng/phút)
11
+) Động cơ 4 pha
Do đó ta có T
cb
>
max
.360V
= 0.33 ms
Cũng có nghĩa là tần số chuyển bớc f<3 kHz.
Trong bài toán này ta điều chỉnh động cơ bớc chạy tiến và lùi với vận tốc
trung bình là V
t
=5(vòng/giây)
f=1kHz
T=1ms.
12
Chơng III: Chơng trình cho VXl
Từ các phân tích trên ta có chơng trình điều khiển hai động cơ bớc sau:
INCLUDE 8051.MC
ORG 0
BATDAU:LJMP LOOP
ORG 001BH
LJMP T1ISR
ORG 0030H
LJMP RUN
ORG 00CDH
LOOP: MOV TMOD,#12H; BO DINH THOI 1; CHE DO 1
SETB TF1; BUOC NGAT DO BO DINH THOI 1
MOV IE,8AH;CHO PHEP NGAT DO CAC BO DINH THOI
T1ISR:
CLR TR1
MOV TH1,#25; THOI GIAN MUC CAO LA 0,25MS
MOV TL1,#75; THOI GIAN MUC THAP la 0.75MS
SETB TR1
RUN: MOV R3,#1
PUSH A
PUSH 2
PUSH DPL
PUSH DPH
PUSH PSW
MOV R2,B
CJNE R3,#0,TIEN
CJNE R2,#0,LUI
MOV R2,#3
MOV B,R2
MOV A,R2
MOV DPTR,#TABLE
MOVC A,@A+DPTR
SJMP ENDRUN
SJMP LOOP
LUI:
DEC R2
13
MOV B,R2
MOV A,R2
MOV DPTR,#TABLE
MOVC A,@A+DPTR
SJMP ENDRUN
TIEN:
CJNE R2,#3,CONTTROL
MOV R2,#0
MOV B,R2
MOV A,R2
MOV DPTR,#TABLE
MOVC A,@A+DPTR
SJMP ENDRUN
CONTTROL:
INC R2
MOV B,R2
MOV A,R2
MOV DPTR,#TABLE
MOVC A,@A+DPTR
ENDRUN:
MOV P0,A
POP PSW
POP DPH
POP DPL
POP 2
POP A
LJMP BATDAU
TABLE:
DB 10001000B
DB 01000100B
DB 00100010B
DB 00010001B
14
Không có nhận xét nào:
Đăng nhận xét