You are on page 1of 12

ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỂN


THÔNG VIỆT – HÀN
Khoa Kỹ thuật máy tính và Điện tử


BÁO CÁO MÔN HỌC


VI ĐIỀU KHIỂN

THỰC HÀNH: LAB 1 ĐẾN LAB 5

Sinh viên thực hiện:

Lớp: Vi điều khiển (5)

Giảng viên hướng dẫn: ThS. Nguyễn Thị Huyền Trang

Đà Nẵng, tháng 04 năm 2023

Nhóm: Robo Ranger


ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỂN
THÔNG VIỆT – HÀN
Khoa Kỹ thuật máy tính và Điện tử


BÁO CÁO MÔN HỌC


VI ĐIỀU KHIỂN

THỰC HÀNH: LAB 1 ĐẾN LAB 5

Sinh viên thực hiện:

Lớp: Vi điều khiển (5)

Giảng viên hướng dẫn: ThS. Nguyễn Thị Huyền Trang

Đà Nẵng, tháng 04 năm 2023

Nhóm: Robo Ranger


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………

Chữ ký GVHD

ThS. Nguyễn Thị Huyền Trang

Nhóm: Robo Ranger


LỜI CẢM ƠN

Trước hết, nhóm em xin gửi lời cảm ơn sâu sắc đến cô Nguyễn Thị Huyền Trang -
người trực tiếp hướng dẫn đã dành nhiều thời gian, công sức hướng dẫn nhóm em trong
suốt quá trình thực hiện nghiên cứu và hoàn thành môn học Vi điều khiển.
Nhóm em xin trân trọng cảm ơn các Quý thầy cô thuộc Khoa Kỹ thuật máy tính &
Điện tử, cũng như toàn thể thầy cô giáo trong trường Đại học Công nghệ thông tin và
Truyền thông Việt – Hàn, đã tận tình truyền đạt những kiến thức quý báu, giúp đỡ tụi em
trong quá trình học tập và nghiên cứu.
Tuy đã có nhiều cố gắng, nhưng bài báo cáo này không thể tránh khỏi những thiếu
sót. Nhóm em kính mong Quý thầy cô có những ý kiến đóng góp, giúp đỡ để thực hiện
báo cáo này được hoàn thiện hơn.

Nhóm em xin chân thành cảm ơn!

Nhóm: Robo Ranger


MỤC LỤC

Contents
LỜI CẢM ƠN................................................................................................................... 4
MỤC LỤC........................................................................................................................ 5
CHƯƠNG 1: LAB 1.........................................................................................................6
1.1. Mô phỏng 8 LED nhấp nháy với PIC18F4550.....................................................6
1.2. Lưu đồ thuật toán..................................................................................................6
1.3. Code và giải thích...................................................................................................6
CHƯƠNG 2: LAB 2.........................................................................................................7
2.1. Mô phỏng LED sáng với PIC18F4550 và Button................................................7
2.2. Lưu đồ thuật toán..................................................................................................7
2.3. Code và giải thích...................................................................................................7
CHƯƠNG 3: LAB 3.........................................................................................................8
3.1. Mô phỏng LED 7 đoạn với PIC18F4550..............................................................8
3.2. Lưu đồ thuật toán..................................................................................................9
3.3. Code và giải thích...................................................................................................9
CHƯƠNG 4: LAB 4.......................................................................................................11
4.1. Mô phỏng LED matrix với PIC16F877A...........................................................11
4.2. Lưu đồ thuật toán................................................................................................11
4.3. Code và giải thích.................................................................................................11
CHƯƠNG 5: LAB 5.......................................................................................................12
5.1. Mô phỏng LCD program với PIC16F887..........................................................12
5.2. Lưu đồ thuật toán................................................................................................12
5.3. Code và giải thích.................................................................................................12

Nhóm: Robo Ranger


CHƯƠNG 1: LAB 1
1.1. Mô phỏng 8 LED nhấp nháy với PIC18F4550

1.2. Lưu đồ thuật toán

1.3. Code và giải thích

Nhóm: Robo Ranger


CHƯƠNG 2: LAB 2
2.1. Mô phỏng LED sáng với PIC18F4550 và Button

2.2. Lưu đồ thuật toán

2.3. Code và giải thích

Nhóm: Robo Ranger


CHƯƠNG 3: LAB 3
3.1. Mô phỏng LED 7 đoạn với PIC18F4550

Nhóm: Robo Ranger


3.2. Lưu đồ thuật toán

3.3. Code và giải thích

a) Source code:

#include <xc.h>
#include "stdio.h" // Configuration bits file stored in a header file
#define _XTAL_FREQ 20000000 //define crystal frequency to 20MHz

// This array stores binary bit pattern that will be send to PORTB
unsigned char
binary_pattern[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};

void main(void)
{
Nhóm: Robo Ranger
TRISB = 0x00; //define PORTB as a output pin
while(1)
{
//this loop sends all binary patterns to PORTB
for (int i=0;i<10;i++)
{
PORTB = binary_pattern[i];
__delay_ms(100); //add delay of 0.1 second
}

for (int i=8;i>0;i--)


{
PORTB = binary_pattern[i];
__delay_ms(100); //add delay of 0.1 second
}
}
return;
}
b) Explanation
xc.h và stdio.h là các tệp tiêu đề. Các tệp tiêu đề xc.h chứa định nghĩa về các
thanh ghi bên trong của vi điều khiển PIC18F4550.
Mặt khác, tệp tiêu đề stdio.h chứa các cài đặt bit cấu hình.
Mảng binary_pattern bao gồm các mẫu số nhị phân để hiển thị bảy đoạn loại catốt
chung.
Mảng này lưu trữ mẫu bit nhị phân sẽ được gửi tới PORTB
unsigned char
binary_pattern[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
Sau đó, đặt PORTB của vi điều khiển PIC18F4550 làm đầu ra kỹ thuật số bằng
cách sử dụng thanh ghi điều khiển hướng TRISB.
TRISB = 0x00; //define PORTB as a output pin
Đây là phần chính của chương trình gửi giá trị của mảng binary_pattern đến
PORTB sau mỗi một giây. vòng lặp while(1) sẽ tiếp tục thực thi vô thời hạn
while(1)
{
// vòng lặp này gửi tất cả các mẫu nhị phân đến PORTB for (int
i=0;i<10;i++)
{
PORTB = binary_pattern[i];
__delay_ms(100); //add delay of 0.1 second
}
// vòng lặp này đếm ngược lại trong PORTB
for (int i=0;i<8;i--)
{
PORTB = binary_pattern[i];
__delay_ms(100); //add delay of 0.1 second
}
}

Nhóm: Robo Ranger


CHƯƠNG 4: LAB 4
4.1. Mô phỏng LED matrix với PIC16F877A

4.2. Lưu đồ thuật toán

4.3. Code và giải thích

Nhóm: Robo Ranger


CHƯƠNG 5: LAB 5
5.1. Mô phỏng LCD program với PIC16F887

5.2. Lưu đồ thuật toán

5.3. Code và giải thích

Nhóm: Robo Ranger

You might also like