KHOA CÔNG NGHỆ THÔNG TIN
ĐẠI HỌC THÁI NGUYÊN
Môn: KĨ THUẬT LẬP TRÌNH NHÚNG
Giảng viên: Phạm Quốc Thịnh
Bộ môn: Điện Tử Viễn Thông
Các thành viên trong nhóm:
Nguyễn Mạnh Cường
Trần Văn Sơn
Đào Văn Sơn
Đào Thị Hiệu
Nguyễn Văn Vinh
Nguyễn Văn Tâm
Nguyễn Quang Sáng
Lớp: ĐTVT-K7A
Tháng 05 năm 2010
LẬP TRÌNH HIỂN THỊ LED 7 THANH
CHẠY TỪ 00 ĐẾN 99
ĐIỀU KHIỂN BẰNG HỌ VI ĐIỀU KHIỂN
8051
● 8051 là một trong các IC tiêu biểu của họ IC vi
điều khiển MCS-51 do hãng Intel sản suất và được
ứng dụng rộng rãi trong cuộc sống.
Vi dụ: điều khiển hiển thị , điều khiển ánh sáng,
điều khiển máy,…các thiết bị vào ra được kết nối
với các cổng I/0 của vi điều khiển.
TỔNG QUAN VỀ VI ĐIỀU KHIỂN 8051
●VỀ PHẦN CỨNG CỦA 8051:
- 4KB ROM bên trong.
- 128 byte RAM nội.
- 4 port xuất nhập (I/0 port) 8-bit.
- 2 bộ định thời 16-bit.
- Các chân từ 21 đến 28 trên 8051 và có 2 công
dụng
+làm nhiệm vụ xuất /nhập
+là byte địa chỉ cao của bus địa chỉ 16 bit
4: PORT 3
-Gồm các chân từ 10 đến 17 trên 8051, nó có 2 công
dụng :
+ Khi hoạt động suất /nhập
+Các chân của port 3 có nhiều chức năng riêng
(mỗi chân có chức năng riêng liên quan đến các
đặctrưng cụ thể của 8051)
♦Các thanh ghi chức năng đặc biệt:
- Có 21 thanh ghi chức năng đặc biệt SFR ở đỉnh
của RAM nội từ địa chỉ các thanh ghi chức năng
đặc biệt được định rõ,phần còn lại là không định
- Từ trạng thái chương trình (PSW: Program Status
Word) ở địa chỉ DOH được tóm tắt như sau:
Xin nói qua về vi điều khiển 89S52
•
class="bi xc y3d w8 hd"
class="bi x4 y3e w9 he"
class="bi x4 y3f wa hf"
class="bi x4 y40 wb h10"
1-Vi điều khiển AT89S52
- Số lượng: 1 con
Chức năng hoạt động như 8051 nhưng 89s52
có những chức năng được nâng cấp thêm như có 3 bộ
timer& counter 16bit , có thêm chức năng watchdog
2- Transistor A1015
- Số lượng: 14 con
- Đầu cáp 4: 8 cái
- Nút bấm reset: 1 cái
●SƠ ĐỒ KHỐI
Sơ đồ khối cho mạch dùng trong đề tài
- Đề tài dùng ngôn ngữ C nhúng vào vi điều khiển
AT 89S52 điều khiển led 7 thanh chạy từ 00 đến 99
- Khi chạy đến 99 thì tự động đếm lùi từ 99 về 00
- Khi nhấn nút reset thì sẽ quay về 00 tại bất kì thời
điểm nào(trong khoảng 00 đến 99)
♦ Code chương trình
#include "lib.h"
//===================================
==========
// khai bao bien va hang so
const unsigned char LED7[]={NUMBER_0,
NUMBER_1,
NUMBER_2,
NUMBER_3,
NUMBER_4,
NUMBER_5,
NUMBER_6,
NUMBER_7,
NUMBER_8,
NUMBER_9};
#define N 500
char hangchuc,hangdonvi,number,sign;
//===========================
// khai bao cac ham
void Delay(unsigned int);
void Delay(unsigned int n)
{
unsigned int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<100;j++);
}
}
♦ File “Lib.h”
#include <AT89X52.H>
#define DON_VI P2
#define CHUC P3
#define NUMBER_0 0xC0
#define NUMBER_1 0xF9
#define NUMBER_2 0xA4
#define NUMBER_3 0xB0
#define NUMBER_4 0x99
#define NUMBER_5 0x92
#define NUMBER_6 0x82
#define NUMBER_7 0xF8
#define NUMBER_8 0x80
#define NUMBER_9 0x90
=>Với sự kết hợp giữa phần code là linh hồn và bo
mạch chip đặc biệt là con vi điều khiển AT 89S52 là
thể xác đã tạo nên những con số nhấp nháy thật đẹp
mắt như các bạn đã thấy.
VÀ ĐÂY LÀ SẢN PHẨM CỦA CHÚNG TÔI
class="bi x4 y8a w6 h1c"