Cổng Kết Nối - Glong Electronic

Xin Chào!

Đây là trang đang thử nghiệm và hoàn thiện nội dung, mong các bạn thông cảm

Mọi thắc mắc và góp ý xin gửi về mail: Nglongbs@gmail.com

Xin chân thành cảm ơn!


 
CLB ĐIỆN TỬ
Công khai group · 94 thành viên
Tham gia nhóm
 

Các bài tập về hiển thị led 7 đoạn

BT2: Hiển thị số trên led 7 đoạn, giao tiếp keyboard 4x4

Sơ đồ mạch điện:

Cinque Terre

Yêu cầu:

- Hiển thị 0 trên led 7 đoạn thứ 1, khi bật nguồn

- Hiển thị các số tương ứng khi bấm các phím số trên keyboard

Mô phỏng yêu cầu:

Cinque Terre

Chương trình lập trình:



#include <REGX52.H>			// khai báo thư viện cho IC 89S52
#include 
void xuatso(unsigned int t)
{ if (t==1)
	{P2_2=1; P2_3=0; P2_4=0; P2_5=0;}	// XUAT SO 1 RA LED 7 DOAN
else if (t==2)
	{P2_2=0; P2_3=1; P2_4=0;P2_5=0;	}	// XUAT SO 2 RA LED 7 DOAN
else if (t==3)
	{P2_2=1; P2_3=1; P2_4=0; P2_5=0;}	// XUAT SO 3 RA LED 7 DOAN
else if (t==4)
	{P2_2=0; P2_3=0; P2_4=1; P2_5=0;}	// XUAT SO 4 RA LED 7 DOAN
else if (t==5)
	{P2_2=1; P2_3=0; P2_4=1; P2_5=0;}	// XUAT SO 5 RA LED 7 DOAN
else if (t==6)
	{P2_2=0; P2_3=1; P2_4=1; P2_5=0;}	// XUAT SO 6 RA LED 7 DOAN
else if (t==7)
	{P2_2=1; P2_3=1; P2_4=1; P2_5=0;}	// XUAT SO 7 RA LED 7 DOAN
else if (t==8)
	{P2_2=0; P2_3=0; P2_4=0; P2_5=1;}	// XUAT SO 8 RA LED 7 DOAN
else if (t==9)
	{P2_2=1; P2_3=0; P2_4=0; P2_5=1;}	// XUAT SO 9 RA LED 7 DOAN
	else if (t==0)
 	{P2_2=0; P2_3=0; P2_4=0; P2_5=0;}	// XUAT SO 0 RA LED 7 DOAN
}

void main()
{
unsigned int dlb1;	//khai bao bien tam cho led 1, led 2
P1=0xff;
while(1)
	{
	P2_0=0;
	P2_1=0;		 // BAT LED 7 ĐOẠN THỨ 1

	xuatso(dlb1);
	P1_7=1;
	P1_4=0;
	if(P1_3==0)	 
		{
		while(P1_3==0){}
		 dlb1=1;
		}
	else if(P1_2==0)
		{
		while(P1_2==0){}
		 dlb1=2;
		}
	else if(P1_1==0)
		{
		while(P1_1==0){}
		 dlb1=3;
		}
	P1_4=1;
	P1_5=0;
	if(P1_3==0)	 
		{
		while(P1_3==0){}
		 dlb1=4;
		}
	else if(P1_2==0)
		{
		while(P1_2==0){}
		 dlb1=5;
		}
	else if(P1_1==0)
		{
		while(P1_1==0){}
		 dlb1=6;
		}
	P1_5=1;
	P1_6=0;
	if(P1_3==0)	 
		{
		while(P1_3==0){}
		 dlb1=7;
		}
	else if(P1_2==0)
		{
		while(P1_2==0){}
		 dlb1=8;
		}
	else if(P1_1==0)
		{
		while(P1_1==0){}
		 dlb1=9;
		}
 	P1_6=1;
	P1_7=0;
	if(P1_2==0)	 
		{
		while(P1_2==0){}
		 dlb1=0;
		}
	}
}
	

Hi vọng sau bài học này các bạn có được chút thu hoạch cho mình.

Cám ơn và hẹn gặp lại!