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

GIẢI BÀI TẬP MÔN HỆ THỐNG NHÚNG

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

1
BÀI TẬP MÔN HỆ THỐNG NHÚNG
BÀI 1
a).Thiết kế vi điều khiển PIC 16F877A với dao động là 8Mhz sử
dụng quartz có cơ chế reset hệ thống đầu ra PB được nối với 8
đèn led.
b). Viết chương trình cho vi điều khiển PIC 16F877A được thiết
kế ở phần a) cho việc đóng ngắt cho các đèn led chân lẻ luân
phiên nhau.


2
1:led chẵn sang thì đưa các bit chẵn là 1 và bit lẻ là 0
(pB=10101010)
2:led lẻ sang thì đưa ra các bit lẻ là 1, các bit chẵn là 0.
; chương trình trên ASM.
Processor
Include

16f877A
<16f877a.inc>

-config-WDT-OFF&-PWRTE-ON
; khai báo biến…………………
Cblock 0x20
Counter 1
Endc
; phần chương trình.
Org 0x0000
Banksel TrisB
Clrf



TrisB

Banksel PortB
Loop
Movlw B’10101010’
Movwf PortB
Call

delay1

Call

delay1


3
Movlw B’01010101’
Movwf PortB
Call

delay1

Call

delay1

Goto

loop


; chương trình con
Delay 1
Movlw h’FF’
Movwf counter1
Loop1
Decfsz counter1
Goto loop1
Loop2
Movlw h’FF’
Decfsz counter1
Goto loop2
Return
End.

Bài 2


4
a). Thiết kế vi điều khiển PIC 16F877A sử dụng dao động là
quartz 20Mhz có chế độ reset hệ thống bởi đầu ra là chuẩn PC
được nối với optocoupler có nối ghép collector với led.
b).Viết chương trình cho vi điều khiển PIC 16F877A được thiết
kế ở phần a) cho một led sáng và thay đổi chạy vòng quanh các
led trên

b.


5

processor 16f877A
include

<hangso.h>

; defines

vanables

Cblock 0x20
Counter1
Counter2
Endc
;…………….
Org 0x0000
Banksel TrisC
Clrf

TrisC

Bank

PortC

Movlw B’00000001’
Movwf

PortC

Loop

Ref

PortC

Call

delay

Goto

loop

; chương trình con
Delay
Clrf counter 2


6
Loop1
Clrf counter1
Loop2
Decfsz counter1
Goto

loop2

Decfsz counter2
Goto

loop1


Return
End.

Bài 3
a.Thiết kế vi điều khiển PIC 16F877A với dao động là 8Mhz sử
dụng quartz có cơ chế reset hệ thống và đầu ra kết nối với 1 vi
mạch 8255 (cổng vào ra //) sử dụng các chân PA làm chân giải
mã chọn chip và chân PB của PIC để truyền dữ liệu
b.Viết chương trình cho vi điều khiển PIC 16F877A được thiết
kế ở phần a) với dao động là 8Mhz sử dụng quartz để đưa 1 byte
10101010 ra cổng PA của 8255.


7

b.

processor 16f877A


8
include

<hangso.h>

-config-CP-0FF&-WDT-OFF
; định nghĩa hằng số.
Word-control


equ 0x89

PA0

equ 0x00

PA1

equ 0x01

PRD

equ 0x02

PWR

equ 0x03

PCS

equ

0x04

; bắt đầu chương trình
Org

0x0000

Clrf


PortA

Clrf

PortB

Bsf

Status,RP0

Clrf

TrisA

Clrf

TrisB

Bcf

Status,RP0

Movlw b’10101010’
Movwf PortA
Movlw

Word-control

Call


ghi_PPI


9
End
Ghi_PPI
Nop
Nop
Nop
Bcf

PortA,PRW

Nop
Nop
Nop
Bsf

PortA,PRN

Nop
Nop
Nop
Return
End.

Bài 4
a.Thiết kế 1 bộ vi điều khiển PIC 16F877A sử dụng dao động
RC có cơ chế reset, đầu ra được nối với 8 led trên cổng PB .



10
b. Viết chương trình cho Vi điều khiển PIC 16F877A được thiết
kế ở phần a) cho đếm từ 0->255.

b.

; dem 255
processor 16f877A
include

<hangso.h>


11
; define vanable
Cblock

0x20

Counter 1
Counter 2
Crt
Endc
;…………………………..
Org 0x0000
Banksed TrisB
Clrf


TrisB

Banksed PortB
Clrf

crt

Lan 2
Movlf

h’ff’

Movwf

cnt

Movwf

PortB

Movwf

delay3

Loop

Lo
Decfsz
Goto


delay3
Lo


12
Call

delay_2vong

Decfsz

cnt

Movwf

cnt,w

Goto

loop

Goto

Lan2

; chuong trinh con tre 2 vong
Delay_2vong
Clrf

counter1


Loop1
Clrt

counter2

Loop2
Decfsz

counter1

Goto

loop2

Decfsz

counter2

Goto

loop1

Return

End.

Bài5
a.Thiết kế Vi điều khiển PIC 16f877a vơi tân số 5MHz sử dụng
bộ dao động RC, có reset hệ thống. Đầu ra nối với 8 led ở cổng

PB .


13
b.Viết chương trình cho bật tắt đèn của 4 bit thấp và 4 bit cao
thay phiên nhau.

; chương trình trên ASM bật tắt đèn 4 bit thấp 4 bít cao thay
phiên nhau.
Processor
Include

16f877A
<16f877a.inc>


14
-config-WDT-OFF&-PWRTE-ON
; khai báo biến…………………
Cblock 0x20
Counter 1
Endc
; phần chương trình.
Org 0x0000
Banksel TrisB
Clrf

TrisB

Banksel PortB

Loop
Movlw B’00001111’
Movwf PortB
Call

delay1

Call

delay1

Movlw B’11110000’
Movwf PortB
Call

delay1

Call

delay1

Goto

loop


15
; chương trình con
Delay 1
Movlw h’FF’

Movwf counter1
Loop1
Decfsz counter1
Goto loop1
Loop2
Movlw h’FF’
Decfsz counter1
Goto loop2
Return
End.

Bai 6
a.Thiết kế Vi điều khiển PIC 16f877a vơi tân số 20MHz sử dụng
bộ quartz, có reset hệ thống. Đầu ra nối với 8 led ở cổng PB
b.Viết chương trình cho chạy 2 đèn vòng quanh.


16

b.led chạy vòng quanh 2 đèn.
Processor

16f877A

Include

<hangso.h>

Cblock


0x20


17
Counter1

(20h)

Counter2

(21h)

Endc
Org 0x0000
Banksed

TrisB

Clrf

TrisB

Movlw

B’00001100’

Movwf

TrisA


Banksed

PortB

Movlw

B’00000011’

Movwf

PortB

Loop
Rlf

PortB

Call

delay

Loop3
Btfss

PortA,1

Goto

loop3


Goto

loop

Delay
Clrf
Loop1

counter2


18
Clrf

counter1

Loop2
Decfsz

counter1

Goto loop2
Decfsz
Goto

counter2
loop1

Return
End.


Bài 7
a.Thiết kế Vi điều khiển PIC 16f877a vơi tân số 20MHz sử dụng
bộ quartz, có reset hệ thống. Đầu ra nối với 8 led ở cổng PB .
b.Viết chương trình cho bật đèn theo độ rông xung như sau:
768*0.2 3*768*0.2 4*768*0.2


19


20
b.chương trình cho bật đèn theo độ rông xung.
: chương trình viết trên ASM
Proconor 16f877a.
……………………….*************………………………..
Include

<16f877a.inc>

-config-WDT-OFF&-PWRTE-ON
; khai báo biến…………………
Cblock 0x20;
Counter 1;
Endc
; phần chương trình.
Org 0x0000
Banksel TrisB
Clrf


TrisB

Banksel PortB
Loop:
Molw

B’ 11111111’;

Mowf

port B;

Call

delay _4 vong ;

; chương trình con trễ 4 vòng ;
Delay _4 vong


21
Movlw H’ff;
Movwf counter 1;
Loop 1:
Decfsz

counter 1;

Goto


loop1

Movlw h’ff;
Return
End.

Bài 8
a.Thiết kế vi điều khiển PIC 16F877A với dao động là 8Mhz sử
dụng quartz và đầu ra kết nối với vi mạch 8255 (cổng vào ra //)
sử dụng các chân PA làm chân giải mã chọn chip và cổng, chân
PB của PIC để truyền dữ liệu.
b.Viết chương trình cho vi điều khiển PIC 16F877A được thiết
kế ở phần a) xác định cổng PA , PB là ra và cổng PC là vào của
8255.


22

b.

processor 16f877A


23
include

<hangso.h>

-config-CP-0FF&-WDT-OFF
; định nghĩa hằng số.

Word-control

equ 0x89

PA0

equ 0x00

PA1

equ 0x01

PRD

equ 0x02

PWR

equ 0x03

PCS

equ

0x04

; bắt đầu chương trình
Org

0x00


Clrf

PortA

Clrf

PortB

Bsf

Status,RP0

Clrf

TrisA

Clrf

TrisB

Bcf

Status,RP0

Movlw b’00010111’
Movwf PortA
Movlw
Call


Word-control
ghi_PPI


24
End
Ghi_PPI
Nop
Nop
Nop
Bcf

PortA,PRW

Nop
Nop
Nop
Bsf

PortA,PRN

Nop
Nop
Nop
Return
End.

Bài 9



25
a.Thiết kế vi điều khiển PIC 16F877A với dao động là 8Mhz sử
dụng quartz có reset hệ thống và đầu ra PC kết nối với rơ le 12V
đóng ngắt qua tránsitor npn.
b.Viết chương trình kết nối đóng ngắt trên.


×