⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dzled19.c

📁 此程序是利用15088b点阵块芯片利用74hc595作为列选
💻 C
📖 第 1 页 / 共 2 页
字号:
       p_temp5,p_temp6,p_temp7,p_temp8,p_temp9,p_temp10,p_temp11);
count_byte=temp;
P0=zu_temp1;
break;
}
case 13:
{
  zu_temp1=row_count;
P0=zu_temp1-1;
temp=m_out_dis(count_byte,p_temp0,p_temp1,p_temp2,p_temp3,p_temp4,
       p_temp5,p_temp6,p_temp7,p_temp8,p_temp9,p_temp10,p_temp11);
count_byte=temp;
P0=zu_temp1;
break;
}
case 14:
{
  zu_temp1=row_count;
P0=zu_temp1-1;
temp=m_out_dis(count_byte,p_temp0,p_temp1,p_temp2,p_temp3,p_temp4,
       p_temp5,p_temp6,p_temp7,p_temp8,p_temp9,p_temp10,p_temp11);
count_byte=temp;
P0=zu_temp1;
break;
}
case 15:
{
  zu_temp1=row_count;
P0=zu_temp1-1;
temp=m_out_dis(count_byte,p_temp0,p_temp1,p_temp2,p_temp3,p_temp4,
       p_temp5,p_temp6,p_temp7,p_temp8,p_temp9,p_temp10,p_temp11);
count_byte=temp;
P0=zu_temp1;
break;
}
}//switch
row_count++;
if(row_count>=16)
{
  row_count=0;
}
if(count_byte>=16)
   count_byte=0;
}//for(j)

    move_count++;
    if(move_count>26)
    {
     move_count=0;
     //if (EvRcv) move_num==8;
    // move_num++;
     }
} // dis_led
/************************************************************* */

void t_tx(unsigned char send_temp)
 {
    DE=1;
    ansi1();
    SBUF= send_temp;
    while (TI==0);
    TI=0;
    DE=0;
  }//void t_tx
//=================================================================
//名称:out_disp
//功能:一个字节送显子程序
//=================================================================
/*送出8位串行数据*/
void out_disp(unsigned char led)
{
 unsigned char i,j;
 //P0=zu_temp1-1;
// P0=zu_temp1;
led=0Xff^led;
rclk=0;
 for(j=0;j<8;j++)
  {
  srclk=0;
 // da1=(bit)(led&0x80);//从低位开始取
  if (led&0x01)  da1=1;
  else da1=0;
//  da2=(bit)(led&0x80);//从低位开始取
  led>>=1;

  srclk=1;
  srclk=0;
  }
 //P0=zu_temp1-1;
 //P0=zu_temp1;
 // rclk=1;
// P0=zu_temp1;
}
//=================================================================
unsigned char m_out_dis(      //显示一行的8位字节代码
unsigned char num_byte,
unsigned char *p_led0,
unsigned char *p_led1,
unsigned char *p_led2,
unsigned char *p_led3,
unsigned char *p_led4,
unsigned char *p_led5,
unsigned char *p_led6,
unsigned char *p_led7,
unsigned char *p_led8,
unsigned char *p_led9,
unsigned char *p_led10,
unsigned char *p_led11)
{
  unsigned char temp,sum_byte,temp_byte;
  unsigned char line_temp=0;

     // 0------0------- 0
     if (move_num<=0)
      {
       if (move_num==0)  rclk=0;
       temp_byte=num_byte;
       out_disp(0x00);
       temp_byte++;
       }
       line_temp=line_temp+8;
      //0------0------- 1
       if (move_num<=1)
        {
         if (move_num==1)  rclk=0;
         temp_byte=num_byte;
         out_disp(0x00);
         temp_byte++;
         }
       line_temp=line_temp+8;
      // 0------0------- 2
       if (move_num<=2)
       {
        if (move_num==2)  rclk=0;
        temp_byte=num_byte;
        out_disp(0x00);
        temp_byte++;
        }
       line_temp=line_temp+8;
      // 0------0------- 3
       if (move_num<=3)
       {
        if (move_num==3)  rclk=0;
        temp_byte=num_byte;
        out_disp(0x00);
        temp_byte++;
        }
       line_temp=line_temp+8;
      // 0------0------- 4
       if (move_num<=4)
       {
        if (move_num==4)  rclk=0;
        temp_byte=num_byte;
        out_disp(0x00);
        temp_byte++;
        }
        line_temp=line_temp+8;
      // 0------0------- 5

      if (move_num<=5)
      {
       if (move_num==5)  rclk=0;
       temp_byte=num_byte;
       out_disp(0x00);
       temp_byte++;
       }
      line_temp=line_temp+8;
     // 0------0------- 6
     if (move_num<=6)
     {
      if (move_num==6)  rclk=0;
      temp_byte=num_byte;
      out_disp(0x00);
      temp_byte++;
      }
      line_temp=line_temp+8;
     // 0------0------- 7
     if (move_num<=7)
     {
      if (move_num==7)  rclk=0;
      temp_byte=num_byte;
      out_disp(0x00);
      temp_byte++;
      }
      line_temp=line_temp+8;
     if (move_num==0) goto LL;
   // 1------------- 0
     if (move_num<=8)
      {
       if (move_num==8)  rclk=0;
       temp_byte=num_byte;
       out_disp(*(p_led0+temp_byte));       // num_byte为缓冲代码区的字节号
       temp_byte++;
       }
       line_temp=line_temp+8;
     if (move_num==1) goto LL;
     // 1------------- 1
     if (move_num<=9)
      {
       if (move_num==9)  rclk=0;
       temp_byte=num_byte;
       out_disp(*(p_led0+16+temp_byte));
       temp_byte++;
       }
       line_temp=line_temp+8;
      if (move_num==2) goto LL;
      // 1------------- 2
      if (move_num<=10)
       {
        if (move_num==10)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led1+temp_byte));
        temp_byte++;
        }
       line_temp=line_temp+8;
       if (move_num==3) goto LL;
       // 1------------- 3
       if (move_num<=11)
       {
         if (move_num==11)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led2+temp_byte));
         temp_byte++;
         }
        line_temp=line_temp+8;
       if (move_num==4)  goto LL;
       // 1------------- 4
       if (move_num<=12)
         {
         if (move_num==12)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led3+temp_byte));
         temp_byte++;
         }
         line_temp=line_temp+8;
       if (move_num==5)  goto LL;
      // 1------------- 5
       if (move_num<=13)
         {
          if (move_num==13)  rclk=0;
          temp_byte=num_byte;
          out_disp(*(p_led4+temp_byte));
          temp_byte++;
          }
          line_temp=line_temp+8;
       if (move_num==6)  goto LL;
      // 1------------- 6
       if (move_num<=14)
         {
         if (move_num==14)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led5+temp_byte));
         temp_byte++;
         }
         line_temp=line_temp+8;
       if (move_num==7)  goto LL;
      // 1------------- 7
       if (move_num<=15)
        {
         if (move_num==15)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led5+16+temp_byte));
         temp_byte++;
        }
        line_temp=line_temp+8;
       if (move_num==8)  goto LL;
     //
     // 2------0------- 0
      if (move_num<=16)
       {
        if (move_num==16)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led6+temp_byte));
        temp_byte++;
        }
        line_temp=line_temp+8;
     if (move_num==9)  goto LL;
      // 2------0------- 1
     if (move_num<=17)
       {
        if (move_num==17)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led6+16+temp_byte));
        temp_byte++;
       }
       line_temp=line_temp+8;
       if (move_num==10)  goto LL;
      // 2------0------- 2
     if (move_num<=18)
       {
        if (move_num==18)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led7+temp_byte));
        temp_byte++;
        }
        line_temp=line_temp+8;
     if (move_num==11)  goto LL;
      // 2------0------- 3
      if (move_num<=19)
       {
        if (move_num==19)  rclk=0;
       temp_byte=num_byte;
       out_disp(*(p_led7+16+temp_byte));
       temp_byte++;
       }
       line_temp=line_temp+8;
      if (move_num==12)  goto LL;
      // 2------0-------  4
      if (move_num<=20)
       {
        if (move_num==20)  rclk=0;
       temp_byte=num_byte;
       out_disp(*(p_led8+temp_byte));
       temp_byte++;
       }
       line_temp=line_temp+8;
      if (move_num==13)  goto LL;
      // 2------0------- 5
      if (move_num<=21)
       {
        if (move_num==21)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led8+16+temp_byte));
        //}
        temp_byte++;
        }
       line_temp=line_temp+8;
       if (move_num==14)  goto LL;
      // 2------0------- 6
      if (move_num<=22)
        {
         if (move_num==22)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led9+temp_byte));
         // }
         temp_byte++;
        }
        line_temp=line_temp+8;
       if (move_num==15)  goto LL;
      // 2------0------- 7
       if (move_num<=23)
        {
         if (move_num==23)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led9+16+temp_byte));
         //}
         temp_byte++;
         }
         line_temp=line_temp+8;
        if (move_num==16)  goto LL;
        // 3------0------- 0
     if (move_num<=24)
      {
       if (move_num==24)  rclk=0;
       temp_byte=num_byte;
       out_disp(*(p_led10+temp_byte));
       //}
       temp_byte++;
       }
       line_temp=line_temp+8;
       if (move_num==17)  goto LL;
      // 3-----0------- 1
       if (move_num<=25)
        {
         if (move_num==25)  rclk=0;
         temp_byte=num_byte;
         out_disp(*(p_led10+16+temp_byte));
         //}
         temp_byte++;
         }
       line_temp=line_temp+8;
       if (move_num==18)  goto LL;
      // 3------0------- 2
       if (move_num<=26)
       {
        if (move_num==26)  rclk=0;
        temp_byte=num_byte;
        out_disp(*(p_led11+temp_byte));
        //}
        temp_byte++;
        }
       line_temp=line_temp+8;
       if (move_num==19)  goto LL;
      // 3------0------- 3
       if (move_num<=27)
       {
        temp_byte=num_byte;
        out_disp(*(p_led11+16+temp_byte));
        //}
        temp_byte++;
        }
       line_temp=line_temp+8;
       if (move_num==20)  goto LL;
      // 3------0------- 4
       if (move_num<=28)
       {
        temp_byte=num_byte;
        out_disp(0x00);
        temp_byte++;
        }
        line_temp=line_temp+8;
        if (move_num==21)  goto LL;
      // 3------0------- 5

      if (move_num<=29)
      {
       temp_byte=num_byte;
       out_disp(0x00);
       //}
       temp_byte++;
       }
      line_temp=line_temp+8;
      if (move_num==22)  goto LL;
     // 3------0------- 6
     if (move_num<=30)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==23)  goto LL;
     //3------0------- 7
     if (move_num<=31)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==24)  goto LL;
      if (move_num<=32)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==25)  goto LL;
     //3------0------- 7
     if (move_num<=33)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==26)  goto LL;
      if (move_num<=34)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==27)  goto LL;
     //3------0------- 7
     if (move_num<=35)
     {
      temp_byte=num_byte;
      out_disp(0x00);
      //}
      temp_byte++;
      }
      line_temp=line_temp+8;
      if (move_num==28)
        {

         goto LL;
        }
 LL:   rclk=1;
       num_byte=temp_byte;
       sum_byte=num_byte;                //取出的代码顺序号
       return (sum_byte);
  }    // m_out_dis()
//
void data_pro(unsigned char temp1,unsigned char temp2)
  {
   unsigned int i,num0,num1,num2,num3;
   for (i=0;i<4;i++)
       datacomm2[i]=0;
   if (temp1==0)
      {
      if (temp2>=0&&temp2<=0x09)
       datacomm2[3]=temp2;            //0-9
      if (temp2>0x09&&temp2<=0x63)    //10-99
          {
           datacomm2[2]=temp2/10;
           datacomm2[3]=temp2%10;
          }
      if (temp2>0x63&&temp2<=0xff)    //99-255
        {
        datacomm2[1]=temp2/100;
        datacomm2[2]=(temp2%100)/10;
        datacomm2[3]=(temp2%100)%10;
        }
      }    //if (data_temp1==0)
  if (temp1>0&&temp1<=0x27)
    {
        num0=(unsigned int )((temp1*256)+temp2)/1000;
        num1=(unsigned int )(((temp1*256)+temp2)%1000)/100;
        num2=(unsigned int )(((temp1*256)+temp2)%1000)%100;


        datacomm2[0]=num0;
        datacomm2[1]=num1;
       if (num2>=0&&num2<=0x09)
         datacomm2[3]=num2;            //0-9
       if (num2>0x09&&num2<=0x63)    //10-99
          {
           datacomm2[2]=num2/10;
           datacomm2[3]=num2%10;
          }
    }  //if (temp1>0&&temp1<=3)
  }   // void data_pro
/*unsigned char HexToDec (unsigned char tt)
  {
    unsigned char i,temp;
	i=(tt>>4)*16+(tt&0x0f);
	temp=i/10;
	temp=temp<<4;
	temp=temp+i%10;
	return temp;
  }   */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -