找回密码
 立即注册
楼主: 17141200320

【已送实验箱】LED点灯学习

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-4 13:03:27 | 显示全部楼层
第9集       数码管静态使用

1、按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管,尾缀A表示共阳,K表示共阴。
   
2、讲解了数码管控制原理
  
3、数码静态使用部分程序(按键加减,数码管显示相应的数)
u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void main()
{  
   u8 num;
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
          P70=0  //开启一个数码管
          P6=SEG_Tab[num];
          if (KEY1==0)   //KEY1按下是按键加数
          {
              delay_ms(10);
              if (KEY1==0)
               {
                  while(KEY1==0);
                  if(num<9)
                  {     
                     num++;  
                   }
                  }
          }   
                       
          if (KEY2==0) //KEY2按键按下减数
          {
              delay_ms(10);
              if (KEY2==0)
               {
                  while(KEY2==0);
                  if(num>0)
                  {     
                     num--;  
                   }
                  }
          }   
     }
}








}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-4 13:03:27 | 显示全部楼层
第9集       数码管静态使用

1、按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管,尾缀A表示共阳,K表示共阴。
   
2、讲解了数码管控制原理
  
3、数码静态使用部分程序(按键加减,数码管显示相应的数)
u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void main()
{  
   u8 num;
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
          P70=0  //开启一个数码管
          P6=SEG_Tab[num];
          if (KEY1==0)   //KEY1按下是按键加数
          {
              delay_ms(10);
              if (KEY1==0)
               {
                  while(KEY1==0);
                  if(num<9)
                  {     
                     num++;  
                   }
                  }
          }   
                       
          if (KEY2==0) //KEY2按键按下减数
          {
              delay_ms(10);
              if (KEY2==0)
               {
                  while(KEY2==0);
                  if(num>0)
                  {     
                     num--;  
                   }
                  }
          }   
     }
}








}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-4 13:03:27 | 显示全部楼层
第9集       数码管静态使用

1、按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管,尾缀A表示共阳,K表示共阴。
    41.jpg
2、讲解了数码管控制原理
42.jpg   
3、数码静态使用部分程序(按键加减,数码管显示相应的数)
u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void main()
{  
   u8 num;
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
          P70=0  //开启一个数码管
          P6=SEG_Tab[num];
          if (KEY1==0)   //KEY1按下是按键加数
          {
              delay_ms(10);
              if (KEY1==0)
               {
                  while(KEY1==0);
                  if(num<9)
                  {     
                     num++;  
                   }
                  }
          }   
                       
          if (KEY2==0) //KEY2按键按下减数
          {
              delay_ms(10);
              if (KEY2==0)
               {
                  while(KEY2==0);
                  if(num>0)
                  {     
                     num--;  
                   }
                  }
          }   
     }
}








}
43.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-5 08:00:52 | 显示全部楼层
第10集  数码管动态显示

1、讲了8位数码管控制原理。写程序时注意要点,数码管刷新8位需要时间不大于20ms,因为人眼的视觉不容易分辨出50HZ以上的动态刷新。
2、在第9集基础上新增调用数组选择位码

数码管从第一位显示1至第8位显示8的动态刷新部分程序
u8 num;

u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码

void main()
{  
   u8 num;
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
          P70=COM_Tab[num];
          P6=SEG_Tab[num+1];
          delay_ms(1);
          num++;
          if(num>7)
            num=0;
        
     }
   }   
                  
简易10秒免单计数器



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-5 08:43:17 | 显示全部楼层
第10集  数码管动态显示

1、讲了8位数码管控制原理。写程序时注意要点,数码管刷新8位需要时间不大于20ms,因为人眼的视觉不容易分辨出50HZ以上的动态刷新。
2、在第9集基础上新增调用数组选择位码

数码管从第一位显示1至第8位显示8的动态刷新部分程序
   u8 num;u8 num;

u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码

void main()
{  
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
          P70=COM_Tab[num];
          P6=SEG_Tab[num+1];
          delay_ms(1);
          num++;
          if(num>7)
            num=0;
        
     }
   }   
                  
简易10秒免单计数器

   u8 num;u8 num;

u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码
u8 Show_Tab[8]={ 0,0,0,0,0,0,0,0 };
u32 TimCount=0;//计数单位1ms
bit   RUN_State=0;//K
void main()
{  
   sys_int();
   usb_init();
   EA=1;
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
        
           Show_Tab[0]=1; //选择1
           Show_Tab[1]=10; //选择0.
           Show_Tab[2]=0; //选择0
           Show_Tab[3]=0;//选择0
           
          P70=COM_Tab[num];
          P6=SEG_Tab[Show_Tab[num]];
          delay_ms(1);
          if( RUN_State ==1 )
          {  
            TimCount++;
             Show_Tab[4]=TimCount/10000%10;
             Show_Tab[5]=TimCount/1000%10+10;//x显示小数点和千位
             Show_Tab[6]=TimCount/100%10;//取百位
             Show_Tab[7]=TimCount/10%10;//取十位

    }

          num++;
          if(num>7)
            num=0;

          if(KEY1==0)
          {
           delay_ms(10);
             if(KEY1==0)
             {
               BEEP=0;
                 delay_ms(10);
                 BEEP=0;
                 while(kEY1==0)
                 {
                      P70=COM_Tab[num];
                      P6=SEG_Tab[Show_Tab[num]];
                     delay_ms(1);  
                     num++;
                     if(num>7)
                     num=0;     
                  }
                 if( RUN_State ==0)
                 TimCount=0;
   
                 RUN_State  = ! RUN_State;
                 
                 }


          }
        
     }
   }   
      



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:549
  • 最近打卡:2025-06-19 07:54:17
已绑定手机

1

主题

838

回帖

1699

积分

金牌会员

积分
1699
发表于 2024-1-5 09:24:03 | 显示全部楼层
又见点灯
靡不有初,鲜克有终
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-6 09:50:23 | 显示全部楼层
第十一集  定时器的使用

1、定时器是定时器和计数器的统称。
    1.1、设置为定时器时,可实现硬件计时,或使程序每隔一固定时间完成一项操作。
    1.2、设置为计数器时候能够对脉冲进行计数。
    1.3、替代长时间的delay,提高CPU的运行效率和处理速度,能及时响应某个事件。
2、stc32G单片机定时器使用原理
    2.1先设置功能为定时器/计数器(本质都是加法计数器)   

    STC32G系列单片机内部设置了5个24位定时器/计数器(8位预分频+16位计数)。5个16位定时TO、TI、T2、T3和T4都具有计数方式和定时方式两种工作方式。

对定时器/计数器TO和TI,用它们在特殊功能寄存器TMOD中相对应的控制位C/T来选择TO或T1为定时器还是计数器。对定时器/计数器T2,用特殊功能寄存器AUXR中的控制位T2 C/T来选择T2为定时器还是计数器。对定时器/计数器T3,用特殊功能寄存器T4T3M中的控制位T3_C/T来选择T3为定时器还是计数器。对定时器/计数器T4,用特殊功能寄存器T4T3M中的控制位T4_C/T来选择T4为定时器还是计数器。定时器/计数器的核心部件是一个加法计数器,其本质是对脉冲进行计数。
只是计数脉冲来源不同:如果计数脉冲来自系统
时钟,则为定时方式,此时定时器/计数器每12个时钟或者每1个时钟得到一个计数脉冲,计数值加1:如果计数脉冲来自单片机外部引脚,则为计数方式,每来一个脉冲加1。
  2.2、如果在定时器模式,设置不分频或者12分频
      当定时器/计数器TO、T1及T2工作在定时模式时,特殊功能寄存器 AUXR中的T0x12、T1x12和T2x12 分别决定是系统时钟/12还是系统时钟/1(不分频)后让TO、TI和T2进行计数。当定时器/计数器 T3和T4 工作在定时模式时,特殊功能寄存器T4T3M中的T3x12和T4x12分别决定是系统时钟/12还是系统时钟/1(不分频)后让T3和T4进行计数。当定时器/计数器工作在计数模式时,对外部脉冲计数不分频。
定时方式◇此时定时器/计数器每12个时钟或者每1个时钟得到一个计数脉冲,计数值加1:



2.3定时器的工作模式
操作特殊功能寄存器TMOD位
32.png

2.4定时器设置
   定时器0/1控制寄存器(TCON)
33.png


2.5中断使能寄存器IE(中断允许位)

34.png

2.6定时器0模式0(16位自动重装载模式)
35.png


[TH0,TL0]=65536-(Sysclk(hz)*定时时间(s))/T*(TM0PS+1)
2.7定时器程序举例应用
  简易10秒免单采用定时方式计数器部分程序

   u8 num;u8 num;

u8 SEG_Tab[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码
u8 Show_Tab[8]={ 0,0,0,0,0,0,0,0 };
u32 TimCount=0;//计数单位1ms
bit   RUN_State=0;//K
void SEG_Fre (void)
{
   P70=COM_Tab[num];
   P6=SEG_Tab[Show_Tab[num]];
  num++;
  if(num>7)
  num=0;     
}


void main()
{  
   sys_int();
   usb_init();
    TMOD=0X00;  //设置定时器0为16位自动重装模式
    TL0=0X30;     //计算出的24Mhz时钟下的1ms的定时时间初值
    TH0=0XF8;
    TR0 = 1;        //启动定时器
    ET0 = 1;        //使能定时器中断
    EA = 1;        //cpu开放中断,打开总中断
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }
        
           Show_Tab[0]=1; //选择1
           Show_Tab[1]=10; //选择0.
           Show_Tab[2]=0; //选择0
           Show_Tab[3]=0;//选择0
           SEG_Fre () ;//数码管刷新
         
          if(KEY1==0)
          {
           delay_ms(10);
             if(KEY1==0)
             {
               BEEP=0;
                 delay_ms(10);
                 BEEP=0;
                 while(kEY1==0);
                if( RUN_State ==0)
                 TimCount=0;
                 RUN_State  = ! RUN_State;
                 
                 }
          }   
     }
   }


void Timer_Isr() interrupt  1       //1ms执行1次
{
  SEG_Fre () ;
  if( RUN_State ==1 )
          {  
            TimCount++;
             Show_Tab[4]=TimCount/10000%10;
             Show_Tab[5]=TimCount/1000%10+10;//x显示小数点和千位
             Show_Tab[6]=TimCount/100%10;//取百位
             Show_Tab[7]=TimCount/10%10;//取十位

            }

}

截图202401060851512735.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-6 15:21:10 | 显示全部楼层

第12集  计数器的应用

1、计数器的用途
    如电机测速、按键检查、流量计频率等
2、计数器的配置




计数器设置
T1_C/T=1;//计数模式
T1_GATE=0;

举例


电机测试部分程序

2.7定时器程序举例应用
#define  MAIN_Fosc    24000000UL  //定义主时钟
char *USER_DEVICEDESC =NULL;
char  *USER_PRODUCTDESC =NULL;
char  *USER_STCISPCMD =" @STCISR# ";

u8 SEG_Tab[21]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x78,0x00,0x10,0xff};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码
u8 Show_Tab[8]={ 20,20,20,20,0,0,0,0 };
u32 TimCount=0;//计数单位1ms

u16 Count_T1 =0;
   u8 num =0;
bit   RUN_State=0;//K
void  sys_init();
void  delay_ms(u16 ms);

void SEG_Fre (void)
{
   P70=COM_Tab[num];
   P6=SEG_Tab[Show_Tab[num]];
  num++;
  if(num>7)
  num=0;     
}
void Timer0_Init(void )//1毫秒@24.000MHZ
{
  AUXR & = 0X7F;
  TMOD & = 0XF0;
  TL0= 0X30;
  TH0 = 0XF8;
  TF0 = 0;
  TR0 = 1;
  ET0 = 1;
}


void main()
{  
   sys_int();
   usb_init();
    TMOD=0X40;  //设置定时器1为16位自动重装模式
    TL1=0X00;     //计算出的24Mhz时钟下的1ms的定时时间初值
    TH1=0X00;
    TF1 = 0;
    TR1 = 1;        //启动定时器
    ET1 = 1;        //使能定时器中断
    P3PU = 0X20;   //打开内部上拉电阻
    Timer0_Init();
    P40 = 0;  //LED的电源控制三级管打开
    EA = 1;        //cpu开放中断,打开总中断
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }  
     }
  }
void Timer1_Isr() interrupt  3  

    P60 = !P60;  //LED取反


void Timer0_Isr() interrupt  1       //1ms执行1次
{
    TimCount++;
     if( TimCount>=2000)
       {
             TimCount = 0;
             Count_t1 = (TH1X256)+TL1;
              TH1=0;
              TL1=0;
             Show_Tab[4]=TimCount/1000%10;
             Show_Tab[5]=TimCount/100%10+10;
             Show_Tab[6]=TimCount/10%10;//取十位
             Show_Tab[7]=TimCount/1%10;//取个位
         }
           SEG_Fre () ;
}

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-6 15:21:10 | 显示全部楼层

第12集  计数器的应用

1、计数器的用途
    如电机测速、按键检查、流量计频率等
2、计数器的配置
15.png

16.png

计数器设置
T1_C/T=1;//计数模式
T1_GATE=0;

举例
17.png

电机测试部分程序

2.7定时器程序举例应用
#define  MAIN_Fosc    24000000UL  //定义主时钟
char *USER_DEVICEDESC =NULL;
char  *USER_PRODUCTDESC =NULL;
char  *USER_STCISPCMD =" @STCISR# ";

u8 SEG_Tab[21]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x78,0x00,0x10,0xff};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码
u8 Show_Tab[8]={ 20,20,20,20,0,0,0,0 };
u32 TimCount=0;//计数单位1ms

u16 Count_T1 =0;
   u8 num =0;
bit   RUN_State=0;//K
void  sys_init();
void  delay_ms(u16 ms);

void SEG_Fre (void)
{
   P70=COM_Tab[num];
   P6=SEG_Tab[Show_Tab[num]];
  num++;
  if(num>7)
  num=0;     
}
void Timer0_Init(void )//1毫秒@24.000MHZ
{
  AUXR & = 0X7F;
  TMOD & = 0XF0;
  TL0= 0X30;
  TH0 = 0XF8;
  TF0 = 0;
  TR0 = 1;
  ET0 = 1;
}


void main()
{  
   sys_int();
   usb_init();
    TMOD=0X40;  //设置定时器1为16位自动重装模式
    TL1=0X00;     //计算出的24Mhz时钟下的1ms的定时时间初值
    TH1=0X00;
    TF1 = 0;
    TR1 = 1;        //启动定时器
    ET1 = 1;        //使能定时器中断
    P3PU = 0X20;   //打开内部上拉电阻
    Timer0_Init();
    P40 = 0;  //LED的电源控制三级管打开
    EA = 1;        //cpu开放中断,打开总中断
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }  
     }
  }
void Timer1_Isr() interrupt  3  

    P60 = !P60;  //LED取反


void Timer0_Isr() interrupt  1       //1ms执行1次
{
    TimCount++;
     if( TimCount>=2000)
       {
             TimCount = 0;
             Count_t1 = (TH1X256)+TL1;
              TH1=0;
              TL1=0;
             Show_Tab[4]=TimCount/1000%10;
             Show_Tab[5]=TimCount/100%10+10;
             Show_Tab[6]=TimCount/10%10;//取十位
             Show_Tab[7]=TimCount/1%10;//取个位
         }
           SEG_Fre () ;
}

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-04-02 20:10:12

21

主题

80

回帖

1343

积分

金牌会员

积分
1343
发表于 2024-1-6 15:22:58 | 显示全部楼层
本帖最后由 17141200320 于 2024-1-6 15:57 编辑

第12集  计数器的应用

1、计数器的用途
    如电机测速、按键检查、流量计频率等
2、计数器的配置
15.png
16.png



计数器设置
T1_C/T=1;//计数模式
T1_GATE=0;

举例


电机测试部分程序
#define  MAIN_Fosc    24000000UL  //定义主时钟
char *USER_DEVICEDESC =NULL;
char  *USER_PRODUCTDESC =NULL;
char  *USER_STCISPCMD =" @STCISR# ";

u8 SEG_Tab[21]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x78,0x00,0x10,0xff};  //段码值
u8 COM_Tab[8]={ 0X7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe  };  //数码管位码
u8 Show_Tab[8]={ 20,20,20,20,0,0,0,0 };
u32 TimCount=0;//计数单位1ms

u16 Count_T1 =0;
   u8 num =0;
bit   RUN_State=0;//K
void  sys_init();
void  delay_ms(u16 ms);

void SEG_Fre (void)
{
   P70=COM_Tab[num];
   P6=SEG_Tab[Show_Tab[num]];
  num++;
  if(num>7)
  num=0;     
}
void Timer0_Init(void )//1毫秒@24.000MHZ
{
  AUXR & = 0X7F;
  TMOD & = 0XF0;
  TL0= 0X30;
  TH0 = 0XF8;
  TF0 = 0;
  TR0 = 1;
  ET0 = 1;
}


void main()
{  
   sys_int();
   usb_init();
    TMOD=0X40;  //设置定时器1为16位自动重装模式
    TL1=0X00;     //计算出的24Mhz时钟下的1ms的定时时间初值
    TH1=0X00;
    TF1 = 0;
    TR1 = 1;        //启动定时器
    ET1 = 1;        //使能定时器中断
    P3PU = 0X20;   //打开内部上拉电阻
    Timer0_Init();
    P40 = 0;  //LED的电源控制三级管打开
    EA = 1;        //cpu开放中断,打开总中断
   while(1)
    {  
        if ( DeviceState != DEVSTATE_CONFIGURED )
          Continue;
        if(bUsboutREADY)
         {
            usb_out_done();
          }  
     }
  }
void Timer1_Isr() interrupt  3  

    P60 = !P60;  //LED取反


void Timer0_Isr() interrupt  1       //1ms执行1次
{
    TimCount++;
     if( TimCount>=2000)
       {
             TimCount = 0;
             Count_t1 = (TH1X256)+TL1;
              TH1=0;
              TL1=0;
             Show_Tab[4]=TimCount/1000%10;
             Show_Tab[5]=TimCount/100%10+10;
             Show_Tab[6]=TimCount/10%10;//取十位
             Show_Tab[7]=TimCount/1%10;//取个位
         }
           SEG_Fre () ;
}


回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-20 00:23 , Processed in 0.156630 second(s), 95 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表