BT-VXL- Ch 6-trang 1
ĐHBK Tp HCM–Khoa Đ-ĐT–BMĐT
Môn hc: Vi x
GVPT: H Trung M
Bài tp Vi X Lý – Chương 6 (Lp trình C cho PIC)
Chú ý: VXL/VĐK dùng cho các bài tp sau dùng PIC16F877 và lp trình C vi CCS C
1. Hãy thiết kế mch nhp nháy LED (3 LED vi 3 R hn dòng được gn vào các chân RB[2:0]) vi quy
lut sau:
Nếu RA0=0 thì RB[2:0]=000, 001, 010, 011, 100, 101, 110, 111 và lp li (thi gian tr gia 2
s đếm là 200ms)
Nếu RA0=1 thì RB[2:0]=000, 001, 011, 010, 110, 111, 101, 100 và lp li (thi gian tr gia 2
s đếm là 200ms)
2. Vi mch hin th sau:
a) V mch kết ni vi PIC16F877
b) Viết chương trình C để đổi 1 s nh phân 8 bit ra s BCD 3 ký s và hin th kết qu vi phn
cng a)
3. (đề thi cũ) Cho sơ đồ kết ni gia PIC 16F877 vi các LED như hình v và chương trình điu khin:
V
cc
16F877
RA0
RA1
RA2
RA3
LED0
LED
1
LED
2
LED
3
oke !!!
BT-VXL- Ch 6-trang 2
#include <16F877.h>
#fuses HS, NOWDT, NOPROTECT, PUT
#use delay(clock=8000000)
byte const LED[8]={0x0f,0x0e,0x0c,0x08,0x00,0x01,0x03,0x07};
main()
{
int8 count;
while(true)
{
for(count=0;count<8;count++)
{
output_A(LED[count]);
delay_ms(500);
}
}
}
Khi thc hin chương trình này, thì các đèn LED hot động ra sao? (Gii thích)
4. (đề thi cũ) Viết chương trình điu khin PIC 16F84 có nhim v liên tc kim tra chân port RB0:
Nếu RB0 = 0 thì to sóng vuông tn s 4KHz chân port RB6.
Nếu RB0 = 1 thì to sóng vuông tn s 50Hz chân port RB7.
Chú ý khi to sóng vuông chân port này thì chân port kia mc 0.
5. Cho mch sau:
Figure 1. LED patterns.
Hãy viết chương trình C vi yêu cu sau:
RA0 =0 thì các LED PORTB sáng theo mu 1 (LED pattern #1, màu đen là LED sáng)
RA0 =1 thì các LED PORTB sáng theo mu 2 (LED pattern #2, màu đen là LED sáng)
Thi gian tr gia các đợt là 200 ms.
6. Cài đặt mch logic sau dùng PIC16F877
0
1
1
0
1
1
1
0
0
0
1
0
0
1
1
1