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

定时器问题?

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:50:14 | 显示全部楼层
         if(weight < g_w)
                  {                      //if(B_2ms == 1)        { B_2ms = 0;        zt++;        }       
                                                       // if(zt==5)  
                      delayms(10); P20=1;
                  }
这次P20=1;动作了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:51:33 | 显示全部楼层
是定时器没有打开?
void Timer0_Init(void)                                //2毫秒@24.000MHz
{
        AUXR |= 0x80;                                                                //定时器时钟1T模式
        TMOD &= 0xF0;                                                                //设置定时器模式
        TL0 = 0x80;                                                                        //设置定时初始值
        TH0 = 0x44;                                                                        //设置定时初始值
        TF0 = 0;                                                                                //清除TF0标志
        TR0 = 1;                                                                                //定时器0开始计数
        ET0 = 1;                                                                                //使能定时器0中断
        EA = 1;
  //IP=0X02;
        //IPH=0X02;
}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:52:22 | 显示全部楼层
还是这个写法不好用?
void Timer0_Isr(void) interrupt 1
{
        B_2ms = 1;                                                                       
}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:53:00 | 显示全部楼层
我不想用 delayms(10);
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:53:59 | 显示全部楼层
delayms()超过20ms 595就会闪、
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:56:18 | 显示全部楼层
王*** 发表于 2024-9-24 21:42
编译正确≠逻辑正确
你的初始化看样子是每次都在执行,这样是无法做到定时功能的。
定时器初始化执行一次 ...

谢谢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:57:28 | 显示全部楼层
王*** 发表于 2024-9-24 21:42
编译正确≠逻辑正确
你的初始化看样子是每次都在执行,这样是无法做到定时功能的。
定时器初始化执行一次 ...

定时器中断输出后,怎么关闭定时器?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:422
  • 最近打卡:2025-05-01 09:54:52
已绑定手机

19

主题

3190

回帖

4866

积分

论坛元老

积分
4866
发表于 2024-9-24 21:58:29 | 显示全部楼层
Timer0_Init()在if后就一直开启没有停止,  B_2ms一直为1.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2025-04-04 11:33:11

12

主题

124

回帖

521

积分

高级会员

积分
521
发表于 2024-9-24 21:58:36 | 显示全部楼层
我个人感觉就是定时器没有打开。或者还在上一次定时中,而无法正确定时
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:417
  • 最近打卡:2025-04-30 21:39:09
已绑定手机

34

主题

2096

回帖

2206

积分

荣誉版主

积分
2206
发表于 2024-9-24 22:11:05 | 显示全部楼层
你可以否描述下期望实现的功能,这里有很多人可以给你更好的解决方案,停留在自己的思维世界里拔不出来不利于解决问题,或者看看书,适当的放松一下更好。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 06:34 , Processed in 0.141551 second(s), 97 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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