#include <reg51.h>
sbit key1 = P3^2;
sbit key2 = P3^3;
sbit key3 = P3^4;
unsigned int i;
unsigned char sanjiao_flag=0,zhengxuan_flag=0,fangbo_flag=0;
code unsigned char Sin[128]={
64,67,70,73,76,79,82,85,88,91,94,96,99,102,104,106,
109,111,113,115,117,118,120,121,123,124,125,126,126,
127,127,127,127,127,127,127,126,126,125,124,123,121,
120,118,117,115,113,111,109,106,104,102,99,96,94,91,
88,85,82,79,76,73,70,67,64,60,57,54,51,48,45,42,39,
36,33,31,28,25,23,21,18,16,14,12,10,9,7,6,4,3,2,1,
1,0,0,0,0,0,0,0,1,1,2,3,4,6,7,9,10,12,14,16,18,21,23,
25,28,31,33,36,39,42,45,48,51,54,57,60};
code unsigned char fangbo[128]={
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,128,128,128,
128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,
128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,
128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128};
code unsigned char sanjiao[128]={
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,
57,58,59,60,61,62,63,64,63,62,61,60,59,58,57,56,55,54,53,52,51,50,49,48,47,
46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,20,
19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1};
main()
{
while(1)
{
i++;
if(i==128)
i=0;
if(key1 == 0)
{
sanjiao_flag=1;zhengxuan_flag=0;fangbo_flag=0;
}
if(key2 == 0)
{ sanjiao_flag=0;zhengxuan_flag=1;fangbo_flag=0;
}
if(key3 == 0)
{sanjiao_flag=0;zhengxuan_flag=0;fangbo_flag=1;}
if(sanjiao_flag==1)
P2=sanjiao[i];
if(zhengxuan_flag==1)
P2=Sin[i];
if(fangbo_flag==1)
P2=fangbo[i];
}
}