1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Lập trình hợp ngữ và điều khiển thiết bị - BÀI THỰC HÀNH SỐ 4

5 328 3

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 108 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Làm theo hướng dẫn Bài 1.. Lập trình xử lý ngắt phần cứng ngoài Bước 1.. Thiết kế mạch theo sơ đồ dưới đây Bước 2.. Viết chương trình thực hiện xử lý ngắt ngoài 0 tương ứng sự kiện ngườ

Trang 1

BÀI THỰC HÀNH

SỐ 4

Phần 1 Làm theo hướng dẫn

Bài 1 Lập trình xử lý ngắt phần cứng ngoài

Bước 1 Thiết kế mạch theo sơ đồ dưới đây

Bước 2 Viết chương trình thực hiện xử lý ngắt ngoài 0 tương ứng sự kiện người dùng bấm phím B2

#include <at89x51.h>

//Khai bao bien toan cuc

int count=0;

//Chuong trinh tao do tre

void delay(int interval)

{

int i,j;

for(i=0;i<100;i++)

{

for(j=0;j<interval;j++);

}

}

//Chuong trinh hien thi den led 7 thanh (khong dieu khien dot)

Trang 2

}

//Chuong trinh con xu ly ngat ngoai 0

void EXT0_Process() interrupt 0{

EA=0; //Cam ngat

count++;

EA=1; //Cho phep ngat

}

//Chuong trinh con hien thi so (<9999) ra module led 7 thanh

void display_number(int iNum){

int i;

unsigned char pos=0x08;

unsigned char temp;

for(i=0;i<4;i++){

temp=iNum%10;

iNum=iNum/10;

P2=pos;

output_7seg(temp);

delay(5);

pos=pos>>1;

}

}

//Chuong trinh khoi tao he thong

void init(){

P3_2=1; //Thiet lap chan P3_2 lam chan vao

IE=0x81; //Cho phep ngat ngoai 0

IT0=1; //Ngat theo suon

}

void main(){

init();

while(1){

display_number(count);

}

}

Bước 3 Quan sát kết quả, nhận xét và đặt câu hỏi với giáo viên để nhận giải đáp

Trang 3

Bài 2 Tạo độ trễ chính xác sử dụng bộ định thời

Bước 1 Thiết kế mạch theo sơ đồ dưới đây

Bước 2 Viết chương trình

#include <at89x51.h>

//Chuong trinh tao do tre chinh xac su dung Timer

void delay_hardware_50ms(){

TMOD=TMOD & 0xF0; //Xoa phan thiet lap cu cua Timer0

TMOD=TMOD | 0x01;

TH0=0x3C; //Thiet lap gia tri khoi dau la 3CB0 (He 16)

TF0=0; //Xoa co tran timer 0

TR0=1; //Khoi dong timer 0

TR0=0; //Dung timer 0

}

//Chuong trinh tao tre chinh xac 1 s

void delay_hardware_1s(){

int i;

Trang 4

delay_hardware_1s();

P0=0x55;

delay_hardware_1s();

}

}

Bước 3 Quan sát kết quả, nhận xét và đặt câu hỏi với giáo viên để nhận giải đáp

Phần 1 Làm theo hướng dẫn

Bài 4 Viết chương trình tạo trễ 1ms sử dụng bộ định thời

Bài 5 Xây dựng mô hình và viết chương trình mô phỏng hệ thống đèn giao thông tại một ngã tư với các yêu cầu sau

 Có 2 cột đèn (mỗi cột có 3 đèn xanh, đỏ, vàng)

 Mỗi cột đèn có gắn một đồng hồ đếm ngược

Dưới đây là thiết kế tham khảo

Ngày đăng: 21/04/2016, 18:08

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w