SlideShare a Scribd company logo
DỊCH VỤ VIẾT THUÊ ĐỀ TÀI TRỌN GÓI ZALO / TEL: 0909.232.620
DỊCH VỤ VIẾT THUÊ ĐỀ TÀI TRỌN GÓI ZALO / TEL: 0909.232.620
HỌC VIỆN KĨ THUẬT QUÂN SỰ
KHOA VÔ TUYẾN-ĐIỆN TỬ
ĐỒ ÁN MÔN HỌC
Kỹ thuật vi xử lý và lập trình assembly cho hệ VXL
Đề tài:
Thiết kế đếm sản phẩm sáu kênh với số lượng xung tích lũy tối đa trên một
kênh là 5000 xung, hệ thống hiển thị sử dụng LCD 16:2 với thông tin hiển
thị lên màn hình gồm số hiệu kênh và số lượng xung tích lũy được trên
kênh. Việc lựa chọn kênh hiển thị qua bàn phím, sử dụng bàn phím điện
thoại, bộ VXL sử dụng 80c51
Giảng viên hướng dẫn: Nguyễn Hải Dương
Sinh viên thực hiện : Nguyễn Mạnh Cường-
Đktđ10
Nguyễn Văn Thạch – Đktđ
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
2
10
Hà Nội 2012
I. Phân tích đề tài
Thông qua quá trình tìm hiểu đề tài và hướng dẫn của thầy giáo em có thể mô hình
hóa đề tài này như sau: đề tài này tương tự như một chương trình đếm sản phẩm. Với mỗi sản
phẩm tương ứng là một xung. Có 6 băng chuyền và đặt trên đó là 6 cảm biến. Cứ mỗi sản
phẩm đi qua cảm biến sẽ thông báo về cho VĐK. Việc của người quản lý là sử dụng bàn
phím điện thoại để kiểm soát xem số sản phẩm trên mỗi băng chuyền là bao nhiêu thông qua
thông tin hiển thị trên LCD 16:2. Các kênh sẽ đếm các sản phẩm khi nào đủ 5000 sản phẩm
thì sẽ quay về đếm lại từ 0. Qua đây ta có nhận xét:
 Cảm biến sẽ cho đó là một sản phẩm khi có sườn lên của xung, ngược lại đó sẽ
không phải là một sản phẩm hoàn chỉnh và bỏ qua.
 Mỗi sản phẩm khi đi qua cảm biến sẽ mất một khoảng thời gian nhất định,
điều này phụ thuộc vào tốc độ băng truyền và kích thước sản phẩm (tốc độ
băng truyền ta có thể điều chỉnh được)
 2 sản phẩm liên tiếp luôn có 1 khoảng cách nhất định hay nói cách khác, giữa
2 xung liên tiếp tồn tại 1 khoảng thời gian.
 Vì các kênh hoạt động độc lập nên các cảm biến gửi tín hiệu về VĐK trong 1
thời điểm bất kì, không biết trước.
Bằng những phân tích trên ta có thể xây dựng được ý tưởng, từ đó xây dựng lên phần
cứng như sau.
Ý tưởng thực hiện bài toán: vì các tín hiệu về VĐK là bất kì nên ta sẽ “bấm thời
gian”. Sau 1 khoảng thời gian ta lại dừng và kiểm tra xem trong khoảng thời gian đó có bao
nhiêu sản phẩm đi qua.Công việc này sẽ được thực hiện liên tục VĐK sẽ lấy sản phẩm trong
khoảng thời gian sau cộng thêm vào với sản phẩm ở những khoảng thời gian trước đó.
Ta quy định khi nào có sườn lên của xung thì khi đó là 1 tín hiệu được gửi đến nên ta
sẽ chọn flip- flop D để làm khối thu tin. Đầu D được đặt ở mức cao. Tín hiệu xung được đưa
vào chân Clk. Mỗi khi có sườn lên của chân Clk thì đầu ra Q sẽ được set lên 1 và ta sẽ đọc
giá trị ở đầu ra Q.
Thời gian sẽ do timer0 quy định, mỗi khi cờ tràn TF0 được set lên 1 thì sẽ báo có ngắt
và sẽ chạy chương trình kiểm tra tín hiệu vào trên từng kênh. Kênh nào có tín hiệu thì sẽ tăng
biến đếm ở kênh đấy lên 1, sau đó sẽ phát lệnh reset flip flop ở kênh đó để sẵn sàng thu xung
tiếp theo.
II. Các linh kiện trong mạch.
1. Onchip 80c51
80c51 là bộ vi xử lý có 8 bit. Tức là nó chỉ có thể làm việc tối đa được với 8 bit dữ
liệu ở cùng 1 thời điểm. 80c51 có 4 cồng vào ra . Mỗi cổng rộng 8 bit.
Cấu trúc của vi điều khiển 80c51
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
3
80c51 là loại IC đóng vỏ DIP. Có 40 chân. Mỗi chân có kí hiệu và chức năng như sau:
 Chân 40 nối với nguồn nuôi (Vcc)
 Chân 20 nối với đất (GND)
 Chân 29 (PSEN) là tín hiệu điều khiển xuất ra của 8051, nó cho phép chọn bộ
nhớ ngoài và được nối với chân OE của EPROM ngoài để cho phép đọc cái
byte của chương trình
 Chân 30 (ALE) là tín hiệu điều khiển xuất ra của 8051 cho phép phân kênh
bus địa chỉ và bus dữ liệu của cổng P0
 Chân 31 (EA) cho phép chọn bộ nhớ ngoài
 Chân 18,19 nối với thạch anh
 Chân 9 (rst) reset chương trình
 32 chân còn lại chia thành 4 cổng vào ra từ P0 đến P3
2. Flip flop D
Sở dĩ chọn flip-flop làm hệ thu tin vì flip-flop được đồng bộ bằng sườn. Do đó việc
nhận biết tín hiệu xung vào sẽ chính xác hơn. Phương trình hàm ra của flip flop có dạng
Q=D. Khi đặt D ở mức 1, nếu có sườn lên ở chân Clk thì Q sẽ được set từ 0 lên 1. Và đây
chính là thông tin mà ta cần thu.
3. LCD 16:2
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
4
LCD có 16 chân chức năng như sau
chân Kí hiệu I/O Mô tả
1 VSS - Đất
2 VCC - Nguồn
3 VEE - Nguồn điều khiển tương phản
4 RS I RS=0 chọn thanh ghi lệnh. RS=1 chọn thanh ghi dữ
liệu
5 R/W I R/W = 1 đọc dữ liệu, R/W = 0 ghi dữ liệu
6 E I/O Cho phép đọc ghi
7 DB0 I/O Bit dữ liệu
8 DB1 I/O Nt
9 DB2 I/O Nt
10 DB3 I/O Nt
11 DB4 I/O Nt
12 DB5 I/O Nt
13 DB6 I/O Nt
14 DB7 I/O Nt
Nguyên lý hoạt động của LCD:
 Chân chọn thanh ghi RS: có 2 thanh ghi trong LCD. Nếu RS=0 thì thanh ghi
lệnh được chọn. Cho phép người lập trình gửi 1 lệnh đến LCD như xóa con
trỏ, xóa hiển thị..v...v. Nếu RS=1 thì thanh ghi dữ liệu được chọn cho phép
người lập trình gửi thông tin cần hiển thị lên LCD
 Chân đọc ghi R/Wcho phép người lập trình đọc dữ liệu từ LCD khi R/W=1 và
ghi dữ liệu lên LCD khi R/W=0
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
5
 Chân cho phép E. chân này được dùng để chốt dữ liệu. Khi dữ liệu được gửi
đến các chân dữ liệu của LCD thì trên chân E phải có sườn xuống của xung để
chốt dữ liệu
 Chân DB0-DB7 là các chân dữ liệu. Dùng để gửi thông tin vào LCD hay đọc
thông tin từ các thanh ghi bên trong nó
 2 chân cuối cùng là 15 và 16 dùng để sáng LED, giúp người điều khiển nhìn
thấy thông tin trên LCD trong bóng tối
Chú ý: chúng ta sử dụng RS =0 để kiểm tra bit cờ bận BD7. Nếu R/W =1 và
BD7=0 thì LCD sẽ bận và không nhận bất cứ thông tin gì từ ngoài vào. Khi
nào DB7= 0 thì LCD mới bắt đầu nhận thông tin.
Dưới đây là sơ đồ phần cứng cho LCD
Sau đây là phần lập trình hiển thị của LCD
#include <REGX51.H>
#include <string.H> //thu vien xau trong C de hien thi ra LCD
sfr LCDdata = 0xA0; //cong 2, 8 bit du lieu
sbit RS = P3^5;
sbit RW = P3^6;
sbit EN = P3^7;
sbit BF = 0xA7;
//********* KIEM TRA CLD CO BAN HAY KHONG *************
void wait(void)
{
long n=0;
EN=1; //dua chan cho phep len cao
RS=0; //chon thanh ghi lenh
RW=1; //doc du lieu tu LCD
LCDdata=0xFF; //gia tri 0xFF
if (BF==1) //kiem tra co ban
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
6
{
delay(200);// neu co BF=1 thi cho 1 luc roi thoat khoi vong if
}
EN=0; //dua xung cao xuong thap de chot
RW=0; //ghi du lieu tu bus vao thanh ghi ben trong
}
//*********HAM DIEU KHIEN CLD THUC HIEN 1 LENH*********
void LCDcontrol(unsigned char x)
{
EN=1; //dua chan cho phep len cao
RS=0; //chon thanh ghi lenh
RW=0; //ghi len LCD
LCDdata = x;//gan gia tri hex cho PORT2, khac voi khai bao chon PORT2 lam bus du lieu vao ra
EN=0;//xung cao xuong thap de chap nhan cho du lieu ghi vao ben trong
wait();//doi LCD san sang
}
//*******************KHOI TAO LCD*********************
void LCDinit(void)
{
LCDcontrol(0x30); //che do 8 bit
LCDcontrol(0x38); //2 dong ma tran 2x7
LCDcontrol(0x01); //xoa man hinh
LCDcontrol(0x0C); //tat con tro
}
//****************LCD HIEN THI 1 KI TU ****************
void LCDwrite(unsigned char c)
{
EN=1;//cho phep
RS=1;//ghi du lieu
RW=0;//ghi len LCD
LCDdata = c;
EN=0;//xung cao xuong thap
wait();
}
//******** CHO LCD HIEN THI 1 DONG CHU ****************
void LCDputs(char *s,unsigned char row) //'*s' la con tro tro toi bien s
{
unsigned char len,k;
if (row==1) LCDcontrol(0x80);//ep con tro ve dau dong 1
else LCDcontrol(0xC0); //ep con tro ve dau dong 2
for (k=0;k<16;k++)
{LCDcontrol(0x14);} //dich con tro sang tan cung ben phai
len=strlen(s); //lay do dai bien duoc tro boi con tro
while(len!=0) //khi do do dai van con
{
LCDwrite(*s); //ghi ra LCD gia tri dc tro boi con tro
s++; //tang con tro
len--; //giam do dai
LCDcontrol(0x1C);
}
}
4. Bàn phím
Nguyên lý quét ma trận phim 3x4 theo hàng là ra sẽ đưa mức thấp đến từng hàng.
Bình thường các cột sẽ có mức cao. Nếu 1 nút được nhấn thì cột của nút đấy sẽ có mức thấp.
Vậy ta sẽ kiểm tra xem hàng nào và cột nào cùng có mức thấp thì nút giao nhau giữa hàng và
cột đó sẽ được nhấn.
Sơ đồ phần cứng:
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
7
Trong quá trình đọc phím. Xung đặt vào các chân không phải là lý tưởng. Khi nhấn
phím, điện áp sẽ phải mất 1 khoảng thời gian để ổn định và sẽ xuất hiện các xung kim. Phần
mềm do đó có thể đọc sai phím. Đây được gọi là hiện tương rung cơ học của bàn phím. Để
giải quyết vấn đề này, khi đọc phím ta sẽ cách 1 khoảng thời gian đọc 1 lần. Sau đó kiểm tra.
Nếu ta lấy được n lần thì bắt đầu đưa ra kết quả nhấn phím. Cụ thể trong bài em đã kiểm tra
50 lần, nếu được 10 lần giống nhau thì phím được nhấn.
Chú ý: đối với 80c51, do P0 có cấu trúc đặc biệt nên ta phải nối Port này với điện trở
băng và nguồn.
Chương trình đọc bàn phím
//******************** DOC PHIM ***********************
unsigned char doc_phim(void)
{
unsigned char giatribanphim;
unsigned char x;
unsigned char y;
char dem1=0,dem2=0,dem3=0;
for (x=0;x<4;x++)
{
if (x==0) {P0_0=0;P0_1=1;P0_2=1;P0_3=1;}
else
{
if (x==1) {P0_0=1;P0_1=0;P0_2=1;P0_3=1;}
else
{
if (x==2) {P0_0=1;P0_1=1;P0_2=0;P0_3=1;}
else
{
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
8
if (x==3) {P0_0=1;P0_1=1;P0_2=1;P0_3=0;}}}}
for(y=0;y<50;y++) //chong rung phim
{
if(P0_4==0) {dem1++;
if (dem1==10) {giatribanphim = 1+3*x;break;}}
if(P0_5==0) {dem2++;
if (dem2==10) {giatribanphim = 2+3*x;break;}}
if(P0_6==0) {dem3++;
if (dem3==10) {giatribanphim = 3+3*x;break;}}
}
}
return(giatribanphim);
}
III.Lưu đồ thuật toán
1. Sơ đồ bố trí các khối của toàn hệ thống
Đưa thông tin vào
Reset đầu thu
6
kênh
thông
tin
vào
6
đầu
thu
tin
cho
6
kênh
(bẫy
xung
)
Hệ
VXL
Onchip
80c51
Màn
hình
LCD
16:2
Bàn
phím
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
9
2. Lưu đồ thuật toán
a. Thuật toán thu thông tin
Tràn bộ đếm
Tràn timer
N
Y
N
Y
 Dừng chạy timer0 TR0=0
 Xóa cờ tràn TF0=0
Kiểm tra từ P1.0 đến P1.5.
Có xung?
 Tăng biến đếm ở kênh đó lên 1
 Đưa tín hiệu reset fip-flop ở kênh đó
Biến đếm = 5001 ?
Đặt lại biến đếm về 0
Reset flip flop tương ứng
START:
 Cài đặt mode2,8bit auto reload
cho timer0
 TL0=0,TH0=0
 EA=1,ET0=1
 TR0=1 (cho timer chạy)
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
10
căn cứ vào sơ đồ trên nên ta có sơ đồ thiết kế phần cứng của khối thu tin như sau:
Trong đó quy ướn mỗi lần nhấn phím là 1 xung. Tất cả đầu vào D của flip-flop được đưa lên
mức 1. Chân reset của mỗi flip-flop được nối với 1 chân của VĐK
Chương trình đếm xung bằng timer0
//***************CHUONG TRINH NGAT*********************
int ch1=0,ch2=0,ch3=0,ch4=0,ch5=0,ch6=0;
/*----- ham khoi tao ------ */
void init_timer0(void)
{
EA=0;//cam ngat toan cuc
TMOD=0x02; //che do 8 bit
TL0=0X00;//khoi tao gia tri ban dau cho 2 thanh ghi TL0 va TH0
TH0=0x00;
ET0=1; //cho phep ngat timer 0
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
11
EA=1; // cho phep ngat toan cuc
TR0=1;//cho timer 0 chay, bat dau dem so chu ki may
}
void demxung(void) interrupt 1
{
TR0=0;//dung chay timer0
TF0=0;//xoa co tran
//chuong trinh dem
if (P1_0==1) {ch1++; P1_6=1;delay(20);P1_6=0;if(ch1==5001) ch1=0;} /*neu co tin hieu thi tang bien dem len
1 va dua 1 xung ra de reset lai*/
if (P1_1==1) {ch2++; P1_7=1;delay(20);P1_7=0;if(ch2==5001) ch2=0;}
if (P1_2==1) {ch3++; P3_1=1;delay(20);P3_1=0;if(ch3==5001) ch3=0;}
if (P1_3==1) {ch4++; P3_2=1;delay(20);P3_2=0;if(ch4==5001) ch4=0;}
if (P1_4==1) {ch5++; P3_3=1;delay(20);P3_3=0;if(ch5==5001) ch5=0;}
if (P1_5==1) {ch6++; P3_4=1;delay(20);P3_4=0;if(ch6==5001) ch6=0;}
TH0=0x00;
TR0=1;//cho chay timer0
}
như vậy trong phần thiết kế, ta đã đặt timer 0 ở chế độ 8 bít. Nên sau 255us chương trình đếm
xung sẽ được gọi.
b. Thuật toán hiển thị kết quả đếm ra LCD
Tại sao phải xử lý biến đếm? Đó là do LCD chỉ hiển thị được các kí tự chứ không
hiển thị được số. Chính vì vậy ta cần phải xử lý biến đếm, đưa dạng số về dạng kí tự
*Hàm xử lý biến đếm
/*************** XU LI BIEN DEM **********************
char hangnghin,hangtram,hangchuc,hangdonvi;
char digit[10]={'0','1','2','3','4','5','6','7','8','9'};
void xuly(int dem)
Biến đếm
Xử lý biến đếm, chuyển số
thành kí tự
Hiển thị lên LCD
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
12
{
int a,b,c,d;
a =(int)(dem/1000);hangnghin=digit[a];//xac dinh chu so hang nghin
b =(int)((dem-1000*a)/100);hangtram=digit[b];//chu so hang tram
c =(int)((dem-1000*a-100*b)/10);hangchuc=digit[c];//chu so hang chuc
d =(int)(dem-1000*a-100*b-10*c);hangdonvi=digit[d];//chu so hang dvi
}
*Chương trình hiển thị thông tin khi nhấn phím
void read_data(unsigned char phim)
{
if (phim==1)
{
LCDputs("KENH 1: ",1); //noi dung can hien thi
xuly(ch1);
LCDcontrol(0x1C);//dich trai
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
if (phim==2)
{
LCDputs("KENH 2: ",1); //noi dung can hien thi
xuly(ch2);
.....v....v......
IV. Sơ đồ thiết kế tổng thể và chương trình
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
13
Toàn bộ chương trình:
#include <REGX51.H>
#include <string.H> //thu vien xau trong C de hien thi ra LCD
#include <stdio.H> //thu vien chua cac thu tuc vao ra
//******************** KHAI BAO ***********************
sfr LCDdata = 0xA0; //cong 2, 8 bit du lieu
sbit RS = P3^5;
sbit RW = P3^6;
sbit EN = P3^7;
sbit BF = 0xA7;
//-----------cac bien toan cuc-----------
int ch1=0,ch2=0,ch3=0,ch4=0,ch5=0,ch6=0;
char hangnghin,hangtram,hangchuc,hangdonvi;
char digit[10]={'0','1','2','3','4','5','6','7','8','9'};
//--------khai bao chuong trinh con----
void delay(int t);
void wait(void);
void LCDcontrol(unsigned char x);
void LCDinit(void);
void LCDwrite(unsigned char c);
void LCDputs(char *s,unsigned char row);
void init_timer0(void);
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
14
void xuly(int dem);
unsigned char doc_phim(void);
void read_data(unsigned char phim);
//********* KIEM TRA CLD CO BAN HAY KHONG *************
void wait(void)
{
long n=0;
EN=1; //dua chan cho phep len cao
RS=0; //chon thanh ghi lenh
RW=1; //doc du lieu tu LCD
LCDdata=0xFF; //gia tri 0xFF
if (BF==1) //kiem tra co ban
{
delay(200);// neu co BF=1 thi cho 1 luc roi thoat khoi vong if
}
EN=0; //dua xung cao xuong thap de chot
RW=0; //ghi du lieu tu bus vao thanh ghi ben trong
}
//*********HAM DIEU KHIEN CLD THUC HIEN 1 LENH*********
void LCDcontrol(unsigned char x)
{
EN=1; //dua chan cho phep len cao
RS=0; //chon thanh ghi lenh
RW=0; //ghi len LCD
LCDdata = x;//
EN=0;//xung cao xuong thap de chap nhan cho du lieu ghi vao ben trong
wait();//doi LCD san sang
}
//*******************KHOI TAO LCD*********************
void LCDinit(void)
{
LCDcontrol(0x30); //che do 8 bit
LCDcontrol(0x38); //2 dong ma tran 2x7
LCDcontrol(0x01); //xoa man hinh
LCDcontrol(0x0C); //tat con tro
}
//****************LCD HIEN THI 1 KI TU ****************
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
15
void LCDwrite(unsigned char c)
{
EN=1;//cho phep
RS=1;//ghi du lieu
RW=0;//ghi len LCD
LCDdata = c;
EN=0;//xung cao xuong thap
wait();
}
//******** CHO LCD HIEN THI 1 DONG CHU ****************
void LCDputs(char *s,unsigned char row) //'*s' la con tro tro toi bien s
{
unsigned char len,k;
if (row==1) LCDcontrol(0x80);//ep con tro ve dau dong 1
else LCDcontrol(0xC0); //ep con tro ve dau dong 2
for (k=0;k<16;k++)
{LCDcontrol(0x14);} //dich con tro sang tan cung ben phai
len=strlen(s); //lay do dai bien duoc tro boi con tro
while(len!=0) //khi do do dai van con
{
LCDwrite(*s); //ghi ra LCD gia tri dc tro boi con tro
s++; //tang con tro
len--; //giam do dai
LCDcontrol(0x1C);
}
}
//***************CHUONG TRINH NGAT*********************
/*----- ham khoi tao ------ */
void init_timer0(void)
{
EA=0;//cam ngat toan cuc
TMOD=0x02; //che do 8 bit
TL0=0X00;//khoi tao gia tri ban dau cho 2 thanh ghi TL0 va TH0
TH0=0x00;
ET0=1; //cho phep ngat timer 0
EA=1; // cho phep ngat toan cuc
TR0=1;//cho timer 0 chay, bat dau dem so chu ki may
}
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
16
void demxung(void) interrupt 1
{
TR0=0;//dung chay timer0
TF0=0;//xoa co tran
//chuong trinh dem
if (P1_0==1) {ch1++; P1_6=1;delay(20);P1_6=0;if(ch1==5001) ch1=0;}
if (P1_1==1) {ch2++; P1_7=1;delay(20);P1_7=0;if(ch2==5001) ch2=0;}
if (P1_2==1) {ch3++; P3_1=1;delay(20);P3_1=0;if(ch3==5001) ch3=0;}
if (P1_3==1) {ch4++; P3_2=1;delay(20);P3_2=0;if(ch4==5001) ch4=0;}
if (P1_4==1) {ch5++; P3_3=1;delay(20);P3_3=0;if(ch5==5001) ch5=0;}
if (P1_5==1) {ch6++; P3_4=1;delay(20);P3_4=0;if(ch6==5001) ch6=0;}
TH0=0x00;
TR0=1;//cho chay timer0
}
//*************** XU LI BIEN DEM **********************
void xuly(int dem)
{
int a,b,c,d;
a =(int)(dem/1000);hangnghin=digit[a];//xac dinh chu so hang nghin
b =(int)((dem-1000*a)/100);hangtram=digit[b];//xac dinh chu so hang tram
c =(int)((dem-1000*a-100*b)/10);hangchuc=digit[c];//xac dinh chu so hang chuc
d =(int)(dem-1000*a-100*b-10*c);hangdonvi=digit[d];//xac dinh chu so hang don vi
}
//********************* HAM TRE ***********************
void delay(int t)
{
int i;
for (i=0;i<=t;i++) {;}
}
//******************** DOC PHIM ***********************
unsigned char doc_phim(void)
{
unsigned char giatribanphim;
unsigned char x;
unsigned char y;
char dem1=0,dem2=0,dem3=0;
for (x=0;x<4;x++)
{
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
17
if (x==0) {P0_0=0;P0_1=1;P0_2=1;P0_3=1;}
else
{
if (x==1) {P0_0=1;P0_1=0;P0_2=1;P0_3=1;}
else
{
if (x==2) {P0_0=1;P0_1=1;P0_2=0;P0_3=1;}
else
{
if (x==3) {P0_0=1;P0_1=1;P0_2=1;P0_3=0;}}}}
for(y=0;y<50;y++) //chong rung phim
{
if(P0_4==0) {dem1++;
if (dem1==10) {giatribanphim = 1+3*x;break;}}
if(P0_5==0) {dem2++;
if (dem2==10) {giatribanphim = 2+3*x;break;}}
if(P0_6==0) {dem3++;
if (dem3==10) {giatribanphim = 3+3*x;break;}}
}
}
return(giatribanphim);
}
//******************** CHON KENH **********************
void read_data(unsigned char phim)
{
if (phim==1)
{
LCDputs("KENH 1: ",1); //noi dung can hien thi
xuly(ch1);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
18
}
if (phim==2)
{
LCDputs("KENH 2: ",1); //noi dung can hien thi
xuly(ch2);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
if (phim==3)
{
LCDputs("KENH 3: ",1); //noi dung can hien thi
xuly(ch3);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
if (phim==4)
{
LCDputs("KENH 4: ",1); //noi dung can hien thi
xuly(ch4);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
19
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
if (phim==5)
{
LCDputs("KENH 5: ",1); //noi dung can hien thi
xuly(ch5);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
if (phim==6)
{
LCDputs("KENH 6: ",1); //noi dung can hien thi
xuly(ch6);
LCDcontrol(0x1C);
LCDwrite(hangnghin);
LCDcontrol(0x1C);
LCDwrite(hangtram);
LCDcontrol(0x1C);
LCDwrite(hangchuc);
LCDcontrol(0x1C);
LCDwrite(hangdonvi);
delay(30000);
LCDinit();//khoi tao cho LCD
}
}
//*************** CHUONG TRINH CHINH ******************
void main()
{
unsigned char i;
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
20
P1_6=0;P1_7=0;P3_1=0;P3_2=0;P3_3=0;P3_4=0;
LCDinit();//khoi tao cho LCD
init_timer0();
while(1)
{
i=doc_phim();
if((((((i==1)||(i==2))||(i==3))||(i==4))||(i==5))||(i==6))
{
while(1)
{
read_data(i);
if (P3_0==0) {LCDinit();break;}
}
}
}
}
V. Tổng kết
Trên đây là phần trình bày của em về quá trình xây dựng cũng như cách thực hiện đề
tài đồ án vi xử lý. Phần cứng của đề tài được thiết kế và chạy mô phỏng trên phần mềm
Proteus ver7.6 SP4. Phần mềm của đề tài được viết bằng ngôn ngữ C, phần mềm Keil C
uVision3. Do kiến thức và tầm hiểu biết cũng như kinh nghiệm còn hạn chế nên dù đã rất cố
gắng cũng không thể tránh khỏi thiếu sót. Em rất mong được sự đóng góp của thầy để em có
thể hoàn thiện sản phẩm này hơn nữa. Em xin chân thành cảm ơn!
EBOOKBKMT.COM
GVHD:Nguyễn Hải Dương
21
Mục lục
Mục Trang
I.Phân tích đề tài 2
II.Các linh kiện trong mạch 2
1.Onchip80c51 2
2.Flip Flop D 3
3.LCD 16:2 4
4.bàn phím 6
III.Lưu đồ thuật toán 8
1.Sơ đồ bố trí các khối của toàn hệ thống 8
2.Lưu đồ thuật toán 9
a.Thuật toán thu thông tin 9
b.Thuật toán hiển thị thông tin lên LCD 11
IV.Sơ đồ thiết kế tổng thể và chương trình 12
V.Tổng kết 19

More Related Content

Similar to Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc

Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vn
bibibobo2007
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Trần Đức Anh
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Ky Nguyen Ad
 
BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docx
VnHun9
 
Lap trinh-c-cho-vdk
Lap trinh-c-cho-vdkLap trinh-c-cho-vdk
Lap trinh-c-cho-vdk
Hiepsvd Bk
 
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Mr Giap
 
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Viết thuê báo cáo thực tập giá rẻ
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sô
Cao Phong
 
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
nataliej4
 
Tự học PLC CP1L
Tự học PLC CP1LTự học PLC CP1L
Tự học PLC CP1L
quanglocbp
 
Huongdanthuchanh lcd
Huongdanthuchanh lcdHuongdanthuchanh lcd
Huongdanthuchanh lcd
Con Khủng Long
 
Thiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdfThiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdf
quandao25
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
Bùi Ngọc Bảo
 
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đĐề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Lập trình pic hainguyen
Lập trình pic hainguyenLập trình pic hainguyen
Lập trình pic hainguyen
Hải Nguyễn
 
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tưđề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
nataliej4
 
8051 giao tiep lcd
8051 giao tiep lcd8051 giao tiep lcd
8051 giao tiep lcd
Jean Okio
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợp
Minh Hoàng
 

Similar to Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc (20)

Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vn
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr
 
BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docx
 
Lap trinh-c-cho-vdk
Lap trinh-c-cho-vdkLap trinh-c-cho-vdk
Lap trinh-c-cho-vdk
 
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
 
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
 
Msptieuluan
MsptieuluanMsptieuluan
Msptieuluan
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sô
 
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
Đồ Án ASSEMBLY:Thiết kế đồng hồ số hiển thị trên LCD 16*2 Sử dụng IC AT89S52.
 
Lcd vagam
Lcd vagamLcd vagam
Lcd vagam
 
Tự học PLC CP1L
Tự học PLC CP1LTự học PLC CP1L
Tự học PLC CP1L
 
Huongdanthuchanh lcd
Huongdanthuchanh lcdHuongdanthuchanh lcd
Huongdanthuchanh lcd
 
Thiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdfThiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdf
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
 
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đĐề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
 
Lập trình pic hainguyen
Lập trình pic hainguyenLập trình pic hainguyen
Lập trình pic hainguyen
 
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tưđề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
 
8051 giao tiep lcd
8051 giao tiep lcd8051 giao tiep lcd
8051 giao tiep lcd
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợp
 

More from Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864

Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.docYếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.docTừ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.docTác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.docSong Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.docỨng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.docVai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.docThu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.docTạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 

More from Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864 (20)

Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.docYếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
 
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.docTừ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
 
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
 
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
 
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
 
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
 
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
 
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.docTác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
 
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
 
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.docSong Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
 
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.docỨng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
 
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.docVai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
 
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
 
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.docThu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
 
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
 
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.docTạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
 

Recently uploaded

Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTUChuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
nvlinhchi1612
 
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
ngocnguyensp1
 
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
https://www.facebook.com/garmentspace
 
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdfGIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
Điện Lạnh Bách Khoa Hà Nội
 
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docxHỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
giangnguyen312210254
 
AV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in englishAV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in english
Qucbo964093
 
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nayẢnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
chinhkt50
 
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
Nguyen Thanh Tu Collection
 
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
nhanviet247
 
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptxDẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
nvlinhchi1612
 
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
Nguyen Thanh Tu Collection
 
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
duykhoacao
 

Recently uploaded (12)

Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTUChuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
Chuong 2 Ngu am hoc - Dẫn luận ngôn ngữ - FTU
 
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
 
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
 
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdfGIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
 
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docxHỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
HỆ THỐNG 432 CÂU HỎI TRẮC NGHIỆM MÔN TTHCM.docx
 
AV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in englishAV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in english
 
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nayẢnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
 
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
 
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
ÔN-TẬP-CHƯƠNG1 Lịch sử đảng Việt Nam chủ đề 2
 
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptxDẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
 
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
 
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
 

Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc

  • 1. DỊCH VỤ VIẾT THUÊ ĐỀ TÀI TRỌN GÓI ZALO / TEL: 0909.232.620 DỊCH VỤ VIẾT THUÊ ĐỀ TÀI TRỌN GÓI ZALO / TEL: 0909.232.620 HỌC VIỆN KĨ THUẬT QUÂN SỰ KHOA VÔ TUYẾN-ĐIỆN TỬ ĐỒ ÁN MÔN HỌC Kỹ thuật vi xử lý và lập trình assembly cho hệ VXL Đề tài: Thiết kế đếm sản phẩm sáu kênh với số lượng xung tích lũy tối đa trên một kênh là 5000 xung, hệ thống hiển thị sử dụng LCD 16:2 với thông tin hiển thị lên màn hình gồm số hiệu kênh và số lượng xung tích lũy được trên kênh. Việc lựa chọn kênh hiển thị qua bàn phím, sử dụng bàn phím điện thoại, bộ VXL sử dụng 80c51 Giảng viên hướng dẫn: Nguyễn Hải Dương Sinh viên thực hiện : Nguyễn Mạnh Cường- Đktđ10 Nguyễn Văn Thạch – Đktđ
  • 2. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 2 10 Hà Nội 2012 I. Phân tích đề tài Thông qua quá trình tìm hiểu đề tài và hướng dẫn của thầy giáo em có thể mô hình hóa đề tài này như sau: đề tài này tương tự như một chương trình đếm sản phẩm. Với mỗi sản phẩm tương ứng là một xung. Có 6 băng chuyền và đặt trên đó là 6 cảm biến. Cứ mỗi sản phẩm đi qua cảm biến sẽ thông báo về cho VĐK. Việc của người quản lý là sử dụng bàn phím điện thoại để kiểm soát xem số sản phẩm trên mỗi băng chuyền là bao nhiêu thông qua thông tin hiển thị trên LCD 16:2. Các kênh sẽ đếm các sản phẩm khi nào đủ 5000 sản phẩm thì sẽ quay về đếm lại từ 0. Qua đây ta có nhận xét:  Cảm biến sẽ cho đó là một sản phẩm khi có sườn lên của xung, ngược lại đó sẽ không phải là một sản phẩm hoàn chỉnh và bỏ qua.  Mỗi sản phẩm khi đi qua cảm biến sẽ mất một khoảng thời gian nhất định, điều này phụ thuộc vào tốc độ băng truyền và kích thước sản phẩm (tốc độ băng truyền ta có thể điều chỉnh được)  2 sản phẩm liên tiếp luôn có 1 khoảng cách nhất định hay nói cách khác, giữa 2 xung liên tiếp tồn tại 1 khoảng thời gian.  Vì các kênh hoạt động độc lập nên các cảm biến gửi tín hiệu về VĐK trong 1 thời điểm bất kì, không biết trước. Bằng những phân tích trên ta có thể xây dựng được ý tưởng, từ đó xây dựng lên phần cứng như sau. Ý tưởng thực hiện bài toán: vì các tín hiệu về VĐK là bất kì nên ta sẽ “bấm thời gian”. Sau 1 khoảng thời gian ta lại dừng và kiểm tra xem trong khoảng thời gian đó có bao nhiêu sản phẩm đi qua.Công việc này sẽ được thực hiện liên tục VĐK sẽ lấy sản phẩm trong khoảng thời gian sau cộng thêm vào với sản phẩm ở những khoảng thời gian trước đó. Ta quy định khi nào có sườn lên của xung thì khi đó là 1 tín hiệu được gửi đến nên ta sẽ chọn flip- flop D để làm khối thu tin. Đầu D được đặt ở mức cao. Tín hiệu xung được đưa vào chân Clk. Mỗi khi có sườn lên của chân Clk thì đầu ra Q sẽ được set lên 1 và ta sẽ đọc giá trị ở đầu ra Q. Thời gian sẽ do timer0 quy định, mỗi khi cờ tràn TF0 được set lên 1 thì sẽ báo có ngắt và sẽ chạy chương trình kiểm tra tín hiệu vào trên từng kênh. Kênh nào có tín hiệu thì sẽ tăng biến đếm ở kênh đấy lên 1, sau đó sẽ phát lệnh reset flip flop ở kênh đó để sẵn sàng thu xung tiếp theo. II. Các linh kiện trong mạch. 1. Onchip 80c51 80c51 là bộ vi xử lý có 8 bit. Tức là nó chỉ có thể làm việc tối đa được với 8 bit dữ liệu ở cùng 1 thời điểm. 80c51 có 4 cồng vào ra . Mỗi cổng rộng 8 bit. Cấu trúc của vi điều khiển 80c51
  • 3. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 3 80c51 là loại IC đóng vỏ DIP. Có 40 chân. Mỗi chân có kí hiệu và chức năng như sau:  Chân 40 nối với nguồn nuôi (Vcc)  Chân 20 nối với đất (GND)  Chân 29 (PSEN) là tín hiệu điều khiển xuất ra của 8051, nó cho phép chọn bộ nhớ ngoài và được nối với chân OE của EPROM ngoài để cho phép đọc cái byte của chương trình  Chân 30 (ALE) là tín hiệu điều khiển xuất ra của 8051 cho phép phân kênh bus địa chỉ và bus dữ liệu của cổng P0  Chân 31 (EA) cho phép chọn bộ nhớ ngoài  Chân 18,19 nối với thạch anh  Chân 9 (rst) reset chương trình  32 chân còn lại chia thành 4 cổng vào ra từ P0 đến P3 2. Flip flop D Sở dĩ chọn flip-flop làm hệ thu tin vì flip-flop được đồng bộ bằng sườn. Do đó việc nhận biết tín hiệu xung vào sẽ chính xác hơn. Phương trình hàm ra của flip flop có dạng Q=D. Khi đặt D ở mức 1, nếu có sườn lên ở chân Clk thì Q sẽ được set từ 0 lên 1. Và đây chính là thông tin mà ta cần thu. 3. LCD 16:2
  • 4. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 4 LCD có 16 chân chức năng như sau chân Kí hiệu I/O Mô tả 1 VSS - Đất 2 VCC - Nguồn 3 VEE - Nguồn điều khiển tương phản 4 RS I RS=0 chọn thanh ghi lệnh. RS=1 chọn thanh ghi dữ liệu 5 R/W I R/W = 1 đọc dữ liệu, R/W = 0 ghi dữ liệu 6 E I/O Cho phép đọc ghi 7 DB0 I/O Bit dữ liệu 8 DB1 I/O Nt 9 DB2 I/O Nt 10 DB3 I/O Nt 11 DB4 I/O Nt 12 DB5 I/O Nt 13 DB6 I/O Nt 14 DB7 I/O Nt Nguyên lý hoạt động của LCD:  Chân chọn thanh ghi RS: có 2 thanh ghi trong LCD. Nếu RS=0 thì thanh ghi lệnh được chọn. Cho phép người lập trình gửi 1 lệnh đến LCD như xóa con trỏ, xóa hiển thị..v...v. Nếu RS=1 thì thanh ghi dữ liệu được chọn cho phép người lập trình gửi thông tin cần hiển thị lên LCD  Chân đọc ghi R/Wcho phép người lập trình đọc dữ liệu từ LCD khi R/W=1 và ghi dữ liệu lên LCD khi R/W=0
  • 5. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 5  Chân cho phép E. chân này được dùng để chốt dữ liệu. Khi dữ liệu được gửi đến các chân dữ liệu của LCD thì trên chân E phải có sườn xuống của xung để chốt dữ liệu  Chân DB0-DB7 là các chân dữ liệu. Dùng để gửi thông tin vào LCD hay đọc thông tin từ các thanh ghi bên trong nó  2 chân cuối cùng là 15 và 16 dùng để sáng LED, giúp người điều khiển nhìn thấy thông tin trên LCD trong bóng tối Chú ý: chúng ta sử dụng RS =0 để kiểm tra bit cờ bận BD7. Nếu R/W =1 và BD7=0 thì LCD sẽ bận và không nhận bất cứ thông tin gì từ ngoài vào. Khi nào DB7= 0 thì LCD mới bắt đầu nhận thông tin. Dưới đây là sơ đồ phần cứng cho LCD Sau đây là phần lập trình hiển thị của LCD #include <REGX51.H> #include <string.H> //thu vien xau trong C de hien thi ra LCD sfr LCDdata = 0xA0; //cong 2, 8 bit du lieu sbit RS = P3^5; sbit RW = P3^6; sbit EN = P3^7; sbit BF = 0xA7; //********* KIEM TRA CLD CO BAN HAY KHONG ************* void wait(void) { long n=0; EN=1; //dua chan cho phep len cao RS=0; //chon thanh ghi lenh RW=1; //doc du lieu tu LCD LCDdata=0xFF; //gia tri 0xFF if (BF==1) //kiem tra co ban
  • 6. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 6 { delay(200);// neu co BF=1 thi cho 1 luc roi thoat khoi vong if } EN=0; //dua xung cao xuong thap de chot RW=0; //ghi du lieu tu bus vao thanh ghi ben trong } //*********HAM DIEU KHIEN CLD THUC HIEN 1 LENH********* void LCDcontrol(unsigned char x) { EN=1; //dua chan cho phep len cao RS=0; //chon thanh ghi lenh RW=0; //ghi len LCD LCDdata = x;//gan gia tri hex cho PORT2, khac voi khai bao chon PORT2 lam bus du lieu vao ra EN=0;//xung cao xuong thap de chap nhan cho du lieu ghi vao ben trong wait();//doi LCD san sang } //*******************KHOI TAO LCD********************* void LCDinit(void) { LCDcontrol(0x30); //che do 8 bit LCDcontrol(0x38); //2 dong ma tran 2x7 LCDcontrol(0x01); //xoa man hinh LCDcontrol(0x0C); //tat con tro } //****************LCD HIEN THI 1 KI TU **************** void LCDwrite(unsigned char c) { EN=1;//cho phep RS=1;//ghi du lieu RW=0;//ghi len LCD LCDdata = c; EN=0;//xung cao xuong thap wait(); } //******** CHO LCD HIEN THI 1 DONG CHU **************** void LCDputs(char *s,unsigned char row) //'*s' la con tro tro toi bien s { unsigned char len,k; if (row==1) LCDcontrol(0x80);//ep con tro ve dau dong 1 else LCDcontrol(0xC0); //ep con tro ve dau dong 2 for (k=0;k<16;k++) {LCDcontrol(0x14);} //dich con tro sang tan cung ben phai len=strlen(s); //lay do dai bien duoc tro boi con tro while(len!=0) //khi do do dai van con { LCDwrite(*s); //ghi ra LCD gia tri dc tro boi con tro s++; //tang con tro len--; //giam do dai LCDcontrol(0x1C); } } 4. Bàn phím Nguyên lý quét ma trận phim 3x4 theo hàng là ra sẽ đưa mức thấp đến từng hàng. Bình thường các cột sẽ có mức cao. Nếu 1 nút được nhấn thì cột của nút đấy sẽ có mức thấp. Vậy ta sẽ kiểm tra xem hàng nào và cột nào cùng có mức thấp thì nút giao nhau giữa hàng và cột đó sẽ được nhấn. Sơ đồ phần cứng:
  • 7. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 7 Trong quá trình đọc phím. Xung đặt vào các chân không phải là lý tưởng. Khi nhấn phím, điện áp sẽ phải mất 1 khoảng thời gian để ổn định và sẽ xuất hiện các xung kim. Phần mềm do đó có thể đọc sai phím. Đây được gọi là hiện tương rung cơ học của bàn phím. Để giải quyết vấn đề này, khi đọc phím ta sẽ cách 1 khoảng thời gian đọc 1 lần. Sau đó kiểm tra. Nếu ta lấy được n lần thì bắt đầu đưa ra kết quả nhấn phím. Cụ thể trong bài em đã kiểm tra 50 lần, nếu được 10 lần giống nhau thì phím được nhấn. Chú ý: đối với 80c51, do P0 có cấu trúc đặc biệt nên ta phải nối Port này với điện trở băng và nguồn. Chương trình đọc bàn phím //******************** DOC PHIM *********************** unsigned char doc_phim(void) { unsigned char giatribanphim; unsigned char x; unsigned char y; char dem1=0,dem2=0,dem3=0; for (x=0;x<4;x++) { if (x==0) {P0_0=0;P0_1=1;P0_2=1;P0_3=1;} else { if (x==1) {P0_0=1;P0_1=0;P0_2=1;P0_3=1;} else { if (x==2) {P0_0=1;P0_1=1;P0_2=0;P0_3=1;} else {
  • 8. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 8 if (x==3) {P0_0=1;P0_1=1;P0_2=1;P0_3=0;}}}} for(y=0;y<50;y++) //chong rung phim { if(P0_4==0) {dem1++; if (dem1==10) {giatribanphim = 1+3*x;break;}} if(P0_5==0) {dem2++; if (dem2==10) {giatribanphim = 2+3*x;break;}} if(P0_6==0) {dem3++; if (dem3==10) {giatribanphim = 3+3*x;break;}} } } return(giatribanphim); } III.Lưu đồ thuật toán 1. Sơ đồ bố trí các khối của toàn hệ thống Đưa thông tin vào Reset đầu thu 6 kênh thông tin vào 6 đầu thu tin cho 6 kênh (bẫy xung ) Hệ VXL Onchip 80c51 Màn hình LCD 16:2 Bàn phím
  • 9. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 9 2. Lưu đồ thuật toán a. Thuật toán thu thông tin Tràn bộ đếm Tràn timer N Y N Y  Dừng chạy timer0 TR0=0  Xóa cờ tràn TF0=0 Kiểm tra từ P1.0 đến P1.5. Có xung?  Tăng biến đếm ở kênh đó lên 1  Đưa tín hiệu reset fip-flop ở kênh đó Biến đếm = 5001 ? Đặt lại biến đếm về 0 Reset flip flop tương ứng START:  Cài đặt mode2,8bit auto reload cho timer0  TL0=0,TH0=0  EA=1,ET0=1  TR0=1 (cho timer chạy)
  • 10. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 10 căn cứ vào sơ đồ trên nên ta có sơ đồ thiết kế phần cứng của khối thu tin như sau: Trong đó quy ướn mỗi lần nhấn phím là 1 xung. Tất cả đầu vào D của flip-flop được đưa lên mức 1. Chân reset của mỗi flip-flop được nối với 1 chân của VĐK Chương trình đếm xung bằng timer0 //***************CHUONG TRINH NGAT********************* int ch1=0,ch2=0,ch3=0,ch4=0,ch5=0,ch6=0; /*----- ham khoi tao ------ */ void init_timer0(void) { EA=0;//cam ngat toan cuc TMOD=0x02; //che do 8 bit TL0=0X00;//khoi tao gia tri ban dau cho 2 thanh ghi TL0 va TH0 TH0=0x00; ET0=1; //cho phep ngat timer 0
  • 11. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 11 EA=1; // cho phep ngat toan cuc TR0=1;//cho timer 0 chay, bat dau dem so chu ki may } void demxung(void) interrupt 1 { TR0=0;//dung chay timer0 TF0=0;//xoa co tran //chuong trinh dem if (P1_0==1) {ch1++; P1_6=1;delay(20);P1_6=0;if(ch1==5001) ch1=0;} /*neu co tin hieu thi tang bien dem len 1 va dua 1 xung ra de reset lai*/ if (P1_1==1) {ch2++; P1_7=1;delay(20);P1_7=0;if(ch2==5001) ch2=0;} if (P1_2==1) {ch3++; P3_1=1;delay(20);P3_1=0;if(ch3==5001) ch3=0;} if (P1_3==1) {ch4++; P3_2=1;delay(20);P3_2=0;if(ch4==5001) ch4=0;} if (P1_4==1) {ch5++; P3_3=1;delay(20);P3_3=0;if(ch5==5001) ch5=0;} if (P1_5==1) {ch6++; P3_4=1;delay(20);P3_4=0;if(ch6==5001) ch6=0;} TH0=0x00; TR0=1;//cho chay timer0 } như vậy trong phần thiết kế, ta đã đặt timer 0 ở chế độ 8 bít. Nên sau 255us chương trình đếm xung sẽ được gọi. b. Thuật toán hiển thị kết quả đếm ra LCD Tại sao phải xử lý biến đếm? Đó là do LCD chỉ hiển thị được các kí tự chứ không hiển thị được số. Chính vì vậy ta cần phải xử lý biến đếm, đưa dạng số về dạng kí tự *Hàm xử lý biến đếm /*************** XU LI BIEN DEM ********************** char hangnghin,hangtram,hangchuc,hangdonvi; char digit[10]={'0','1','2','3','4','5','6','7','8','9'}; void xuly(int dem) Biến đếm Xử lý biến đếm, chuyển số thành kí tự Hiển thị lên LCD
  • 12. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 12 { int a,b,c,d; a =(int)(dem/1000);hangnghin=digit[a];//xac dinh chu so hang nghin b =(int)((dem-1000*a)/100);hangtram=digit[b];//chu so hang tram c =(int)((dem-1000*a-100*b)/10);hangchuc=digit[c];//chu so hang chuc d =(int)(dem-1000*a-100*b-10*c);hangdonvi=digit[d];//chu so hang dvi } *Chương trình hiển thị thông tin khi nhấn phím void read_data(unsigned char phim) { if (phim==1) { LCDputs("KENH 1: ",1); //noi dung can hien thi xuly(ch1); LCDcontrol(0x1C);//dich trai LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } if (phim==2) { LCDputs("KENH 2: ",1); //noi dung can hien thi xuly(ch2); .....v....v...... IV. Sơ đồ thiết kế tổng thể và chương trình
  • 13. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 13 Toàn bộ chương trình: #include <REGX51.H> #include <string.H> //thu vien xau trong C de hien thi ra LCD #include <stdio.H> //thu vien chua cac thu tuc vao ra //******************** KHAI BAO *********************** sfr LCDdata = 0xA0; //cong 2, 8 bit du lieu sbit RS = P3^5; sbit RW = P3^6; sbit EN = P3^7; sbit BF = 0xA7; //-----------cac bien toan cuc----------- int ch1=0,ch2=0,ch3=0,ch4=0,ch5=0,ch6=0; char hangnghin,hangtram,hangchuc,hangdonvi; char digit[10]={'0','1','2','3','4','5','6','7','8','9'}; //--------khai bao chuong trinh con---- void delay(int t); void wait(void); void LCDcontrol(unsigned char x); void LCDinit(void); void LCDwrite(unsigned char c); void LCDputs(char *s,unsigned char row); void init_timer0(void);
  • 14. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 14 void xuly(int dem); unsigned char doc_phim(void); void read_data(unsigned char phim); //********* KIEM TRA CLD CO BAN HAY KHONG ************* void wait(void) { long n=0; EN=1; //dua chan cho phep len cao RS=0; //chon thanh ghi lenh RW=1; //doc du lieu tu LCD LCDdata=0xFF; //gia tri 0xFF if (BF==1) //kiem tra co ban { delay(200);// neu co BF=1 thi cho 1 luc roi thoat khoi vong if } EN=0; //dua xung cao xuong thap de chot RW=0; //ghi du lieu tu bus vao thanh ghi ben trong } //*********HAM DIEU KHIEN CLD THUC HIEN 1 LENH********* void LCDcontrol(unsigned char x) { EN=1; //dua chan cho phep len cao RS=0; //chon thanh ghi lenh RW=0; //ghi len LCD LCDdata = x;// EN=0;//xung cao xuong thap de chap nhan cho du lieu ghi vao ben trong wait();//doi LCD san sang } //*******************KHOI TAO LCD********************* void LCDinit(void) { LCDcontrol(0x30); //che do 8 bit LCDcontrol(0x38); //2 dong ma tran 2x7 LCDcontrol(0x01); //xoa man hinh LCDcontrol(0x0C); //tat con tro } //****************LCD HIEN THI 1 KI TU ****************
  • 15. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 15 void LCDwrite(unsigned char c) { EN=1;//cho phep RS=1;//ghi du lieu RW=0;//ghi len LCD LCDdata = c; EN=0;//xung cao xuong thap wait(); } //******** CHO LCD HIEN THI 1 DONG CHU **************** void LCDputs(char *s,unsigned char row) //'*s' la con tro tro toi bien s { unsigned char len,k; if (row==1) LCDcontrol(0x80);//ep con tro ve dau dong 1 else LCDcontrol(0xC0); //ep con tro ve dau dong 2 for (k=0;k<16;k++) {LCDcontrol(0x14);} //dich con tro sang tan cung ben phai len=strlen(s); //lay do dai bien duoc tro boi con tro while(len!=0) //khi do do dai van con { LCDwrite(*s); //ghi ra LCD gia tri dc tro boi con tro s++; //tang con tro len--; //giam do dai LCDcontrol(0x1C); } } //***************CHUONG TRINH NGAT********************* /*----- ham khoi tao ------ */ void init_timer0(void) { EA=0;//cam ngat toan cuc TMOD=0x02; //che do 8 bit TL0=0X00;//khoi tao gia tri ban dau cho 2 thanh ghi TL0 va TH0 TH0=0x00; ET0=1; //cho phep ngat timer 0 EA=1; // cho phep ngat toan cuc TR0=1;//cho timer 0 chay, bat dau dem so chu ki may }
  • 16. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 16 void demxung(void) interrupt 1 { TR0=0;//dung chay timer0 TF0=0;//xoa co tran //chuong trinh dem if (P1_0==1) {ch1++; P1_6=1;delay(20);P1_6=0;if(ch1==5001) ch1=0;} if (P1_1==1) {ch2++; P1_7=1;delay(20);P1_7=0;if(ch2==5001) ch2=0;} if (P1_2==1) {ch3++; P3_1=1;delay(20);P3_1=0;if(ch3==5001) ch3=0;} if (P1_3==1) {ch4++; P3_2=1;delay(20);P3_2=0;if(ch4==5001) ch4=0;} if (P1_4==1) {ch5++; P3_3=1;delay(20);P3_3=0;if(ch5==5001) ch5=0;} if (P1_5==1) {ch6++; P3_4=1;delay(20);P3_4=0;if(ch6==5001) ch6=0;} TH0=0x00; TR0=1;//cho chay timer0 } //*************** XU LI BIEN DEM ********************** void xuly(int dem) { int a,b,c,d; a =(int)(dem/1000);hangnghin=digit[a];//xac dinh chu so hang nghin b =(int)((dem-1000*a)/100);hangtram=digit[b];//xac dinh chu so hang tram c =(int)((dem-1000*a-100*b)/10);hangchuc=digit[c];//xac dinh chu so hang chuc d =(int)(dem-1000*a-100*b-10*c);hangdonvi=digit[d];//xac dinh chu so hang don vi } //********************* HAM TRE *********************** void delay(int t) { int i; for (i=0;i<=t;i++) {;} } //******************** DOC PHIM *********************** unsigned char doc_phim(void) { unsigned char giatribanphim; unsigned char x; unsigned char y; char dem1=0,dem2=0,dem3=0; for (x=0;x<4;x++) {
  • 17. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 17 if (x==0) {P0_0=0;P0_1=1;P0_2=1;P0_3=1;} else { if (x==1) {P0_0=1;P0_1=0;P0_2=1;P0_3=1;} else { if (x==2) {P0_0=1;P0_1=1;P0_2=0;P0_3=1;} else { if (x==3) {P0_0=1;P0_1=1;P0_2=1;P0_3=0;}}}} for(y=0;y<50;y++) //chong rung phim { if(P0_4==0) {dem1++; if (dem1==10) {giatribanphim = 1+3*x;break;}} if(P0_5==0) {dem2++; if (dem2==10) {giatribanphim = 2+3*x;break;}} if(P0_6==0) {dem3++; if (dem3==10) {giatribanphim = 3+3*x;break;}} } } return(giatribanphim); } //******************** CHON KENH ********************** void read_data(unsigned char phim) { if (phim==1) { LCDputs("KENH 1: ",1); //noi dung can hien thi xuly(ch1); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD
  • 18. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 18 } if (phim==2) { LCDputs("KENH 2: ",1); //noi dung can hien thi xuly(ch2); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } if (phim==3) { LCDputs("KENH 3: ",1); //noi dung can hien thi xuly(ch3); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } if (phim==4) { LCDputs("KENH 4: ",1); //noi dung can hien thi xuly(ch4); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc);
  • 19. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 19 LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } if (phim==5) { LCDputs("KENH 5: ",1); //noi dung can hien thi xuly(ch5); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } if (phim==6) { LCDputs("KENH 6: ",1); //noi dung can hien thi xuly(ch6); LCDcontrol(0x1C); LCDwrite(hangnghin); LCDcontrol(0x1C); LCDwrite(hangtram); LCDcontrol(0x1C); LCDwrite(hangchuc); LCDcontrol(0x1C); LCDwrite(hangdonvi); delay(30000); LCDinit();//khoi tao cho LCD } } //*************** CHUONG TRINH CHINH ****************** void main() { unsigned char i;
  • 20. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 20 P1_6=0;P1_7=0;P3_1=0;P3_2=0;P3_3=0;P3_4=0; LCDinit();//khoi tao cho LCD init_timer0(); while(1) { i=doc_phim(); if((((((i==1)||(i==2))||(i==3))||(i==4))||(i==5))||(i==6)) { while(1) { read_data(i); if (P3_0==0) {LCDinit();break;} } } } } V. Tổng kết Trên đây là phần trình bày của em về quá trình xây dựng cũng như cách thực hiện đề tài đồ án vi xử lý. Phần cứng của đề tài được thiết kế và chạy mô phỏng trên phần mềm Proteus ver7.6 SP4. Phần mềm của đề tài được viết bằng ngôn ngữ C, phần mềm Keil C uVision3. Do kiến thức và tầm hiểu biết cũng như kinh nghiệm còn hạn chế nên dù đã rất cố gắng cũng không thể tránh khỏi thiếu sót. Em rất mong được sự đóng góp của thầy để em có thể hoàn thiện sản phẩm này hơn nữa. Em xin chân thành cảm ơn!
  • 21. EBOOKBKMT.COM GVHD:Nguyễn Hải Dương 21 Mục lục Mục Trang I.Phân tích đề tài 2 II.Các linh kiện trong mạch 2 1.Onchip80c51 2 2.Flip Flop D 3 3.LCD 16:2 4 4.bàn phím 6 III.Lưu đồ thuật toán 8 1.Sơ đồ bố trí các khối của toàn hệ thống 8 2.Lưu đồ thuật toán 9 a.Thuật toán thu thông tin 9 b.Thuật toán hiển thị thông tin lên LCD 11 IV.Sơ đồ thiết kế tổng thể và chương trình 12 V.Tổng kết 19