Nhờ các bạn giúp đỡ.
ý tưởng của mình là lập 8 chương trình con quyết 8 phím thuộc P3. nhờ mọi người tìm và sửa sai giúp với.
#include<reg52.h>
#define uint unsigned int
sbit tha=P3^4;
sbit thb=P3^5;
sbit thc=P3^6;
sbit th4=P3^7;
sbit thu=P3^0;
sbit giaitru=P3^1;
sbit chapnhan=P3^2;
sbit im=P3^3;
bit tha0=1,tha1=1,thb0=1,thb1=1,thc0=1,thc1=1,thd0=1,t hd1=1,thu0=1,thu1=1,giaitru0=1,giaitru1=1,chapnhan 0=1,chapnhan1=1,im0=1,im1=1;
void tinhieua()
tha0=tha1; tha1=tha;
if((tha0==1)&&(tha1==0))
{
P0^0=1;
P2^0=1;
P2^1=1;
P1^6=1;
P1^7=1;
}
void tinhieub()
thb0=thb1; thb1=thb;
if((thb0==1)&&(thb1==0))
{
P0^1=1;
P2^2=1;
P2^3=1;
P1^6=1;
P1^7=1;
}
void tinhieuc()
thc0=thc1; thc1=thc;
if((thc0==1)&&(thc1==0))
{
P0^2=1;
P2^4=1;
P2^5=1;
P1^6=1;
P1^7=1;
}
void tinhieud()
thd0=thd1; thd1=thd;
if((thd0==1)&&(thd1==0))
{
P0^3=1;
P2^6=1;
P2^7=1;
P1^6=1;
P1^7=1;
}
void thu()
thu0=thu1; thu1=thu;
if((thu0==1)&&(thu1==0))
{
P0^0=1;
P0^1=1;
P0^2=1;
P0^3=1;
P2=0xff;
}
void chapnhan()
chapnhan0=chapnhan1; chapnhan1=chapnhan;
if((chapnhan0==0)&&(chapnhan1=1))
{
P0^4=1;
}
void im()
im0=im1; im1=im;
if((im0==1)&&(im1=0))
{
P1^6=0;
P1^7=1;
}
void giaitru()
giaitru0=giaitru1; giaitru1=giaitru;
if((giaitru0==1)&&(giaitru1==0))
{
P2^1=1;
P2^3=1;
P2^5=1;
P2^7=1;
}
void main()
{
P0=0x00;
P1=0x00;
P2=0x00;
P3=0x00;
While(1)
{
giaitru();
thu();
chapnhan();
im();
tinhieua();
tinhieub();
tinhieuc();
tinhieud();
}
}
Cảm ơn nhiều nhiều.
ý tưởng của mình là lập 8 chương trình con quyết 8 phím thuộc P3. nhờ mọi người tìm và sửa sai giúp với.
#include<reg52.h>
#define uint unsigned int
sbit tha=P3^4;
sbit thb=P3^5;
sbit thc=P3^6;
sbit th4=P3^7;
sbit thu=P3^0;
sbit giaitru=P3^1;
sbit chapnhan=P3^2;
sbit im=P3^3;
bit tha0=1,tha1=1,thb0=1,thb1=1,thc0=1,thc1=1,thd0=1,t hd1=1,thu0=1,thu1=1,giaitru0=1,giaitru1=1,chapnhan 0=1,chapnhan1=1,im0=1,im1=1;
void tinhieua()
tha0=tha1; tha1=tha;
if((tha0==1)&&(tha1==0))
{
P0^0=1;
P2^0=1;
P2^1=1;
P1^6=1;
P1^7=1;
}
void tinhieub()
thb0=thb1; thb1=thb;
if((thb0==1)&&(thb1==0))
{
P0^1=1;
P2^2=1;
P2^3=1;
P1^6=1;
P1^7=1;
}
void tinhieuc()
thc0=thc1; thc1=thc;
if((thc0==1)&&(thc1==0))
{
P0^2=1;
P2^4=1;
P2^5=1;
P1^6=1;
P1^7=1;
}
void tinhieud()
thd0=thd1; thd1=thd;
if((thd0==1)&&(thd1==0))
{
P0^3=1;
P2^6=1;
P2^7=1;
P1^6=1;
P1^7=1;
}
void thu()
thu0=thu1; thu1=thu;
if((thu0==1)&&(thu1==0))
{
P0^0=1;
P0^1=1;
P0^2=1;
P0^3=1;
P2=0xff;
}
void chapnhan()
chapnhan0=chapnhan1; chapnhan1=chapnhan;
if((chapnhan0==0)&&(chapnhan1=1))
{
P0^4=1;
}
void im()
im0=im1; im1=im;
if((im0==1)&&(im1=0))
{
P1^6=0;
P1^7=1;
}
void giaitru()
giaitru0=giaitru1; giaitru1=giaitru;
if((giaitru0==1)&&(giaitru1==0))
{
P2^1=1;
P2^3=1;
P2^5=1;
P2^7=1;
}
void main()
{
P0=0x00;
P1=0x00;
P2=0x00;
P3=0x00;
While(1)
{
giaitru();
thu();
chapnhan();
im();
tinhieua();
tinhieub();
tinhieuc();
tinhieud();
}
}
Cảm ơn nhiều nhiều.
Comment