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

📄 bao1.c

📁 C51学习书
💻 C
字号:
#include <reg51.h> //传动控制
  
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f, 
                               0x66,0x6d,0x7d,0x07, 
                               0x7f,0x6f,0x77,0x7c, 
                               0x39,0x5e,0x79,0x71,0x00}; 
unsigned char second; 
unsigned char tcount; 

void delay10ms(void)//延时10毫秒(2+2+248*2)*20+2=1002*12/12M=0.01S
{
  for(i=20;i>0;i--)
    for(j=248;j>0;j--)
}
void outsignal(void)//输出控制信号
{
  settime=p_3/16*10+p_3%16;
  p4_0=1;//输出控制信号
  for(k=settime*10;k>0;K--)
  for(i=20;i>0;i--)
  for(j=248;j>0;j--)
  P4_0=0;
}  
void main(void) 
{ 
  while(1)
  {
   setcount=p_0/16*10+p_0%16;

   if p2_0==0//输检测信号
    {
      delay10ms();
      if(p2_0==0)
      {
         curcount++;
         if(curcount==setcount)
         {curcount=0;}
         while(p2_0==0); 
      }
    if p2_0==0
    {
      delay10ms();
      if(p2_0==0)
      {
         curcount++;
         if(curcount==setcount)
         outsignal();
         {curcount=0;}
         while(p2_0==0); 
      }
 

void t0(void) interrupt 1 using 0 
{ 
  tcount++; 
  if(tcount==20) 
    { 
      tcount=0; 
      second++; 
      if(second==60) 
        { 
          second=0; 
        } 
      P0=dispcode[second/10]; //
      P2=dispcode[second%10];              
    } 
  TH0=(65536-50000)/256; 
  TL0=(65536-50000)%256; 
} 

⌨️ 快捷键说明

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