找回密码
 立即注册
查看: 144|回复: 5

LVD可以设置成几种模式吗? 低于3v运行A,低于2.7V运行B低于2.4运行c

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:351
  • 最近打卡:2025-05-02 00:50:51
已绑定手机

130

主题

1521

回帖

1861

积分

金牌会员

积分
1861
发表于 2025-2-27 22:13:01 | 显示全部楼层 |阅读模式
LVD可以设置成几种模式吗? 低于3v运行A,低于2.7V运行B低于2.4运行c

截图202502272206441883.jpg
现在我就是简单的设置成这个,每次电压低于这个2.7v了.强制复位约等于强行关机

那问题来了.
一,上面写的是禁止低压中断,
1,如果此时我在代码里面开了中断,是不是就不起作用了.
2,如果两个同时都起作用,那我ISP软件上开最低保护,代码里面低于3v执行A

二,如果我关闭ISP软件的这个设置,在代码里面
当 RSTCFG = LVD3V0;     RSTCFG = LVD2V7;     RSTCFG = LVD2V4;        

void Lvd_Isr() interrupt 6
{
    PCON &= ~LVDF;                              //清中断标志
    A();                                   //LVD3V0的时候执行
    B();                                   //LVD2V7的时候执行
    C();                                  //LVD2V4的时候执行
}


回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2025-2-27 23:00:53 | 显示全部楼层
都复位了,还如何运行程序,用ADC来测量
截图202502272300143280.jpg

截图202502272300474863.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:351
  • 最近打卡:2025-05-02 00:50:51
已绑定手机

130

主题

1521

回帖

1861

积分

金牌会员

积分
1861
发表于 2025-2-27 23:27:57 | 显示全部楼层
神*** 发表于 2025-2-27 23:00
都复位了,还如何运行程序,用ADC来测量

我表达错了.
不是运行程序, 应该是到达LVD3V0以后,就限定某个值,不能超过50
我刚看了一下ISP软件里面的范例 (LVD功能检测电压)
好像是可行的..我相应的改一下应该就能实现了

点评

到达LVD3V0以后,就限定某个值,不能超过50 这不还是运行程序吗,硬件又做不了这个 勾选允许低压复位,一旦电压下降到设置的电压就复位,无法运行程序 不勾选就进中断(必须要有中断函数) 可以试试用户程序中动态设置  详情 回复 发表于 2025-2-28 06:32
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:53
  • 最近打卡:2025-05-01 10:41:47

5

主题

62

回帖

168

积分

注册会员

积分
168
发表于 2025-2-27 23:41:45 | 显示全部楼层
你的意思是不是当电压降到3V时产生中断,执行一个操作,如果电压继续降到2.7V再中断一次,执行另外一个操作,同理2.4V也是一样。
那可以不以这样做:上电时默认检测电压为3V,当产生中断后,执行一个操作,同时把检测电压改成2.4V,后面的操作同理。我没用这个中断,纯属猜想,错了别见笑。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:351
  • 最近打卡:2025-05-02 00:50:51
已绑定手机

130

主题

1521

回帖

1861

积分

金牌会员

积分
1861
发表于 2025-2-28 00:26:41 | 显示全部楼层
ys*** 发表于 2025-2-27 23:41
你的意思是不是当电压降到3V时产生中断,执行一个操作,如果电压继续降到2.7V再中断一次,执行另外一个操作 ...

a=100
当电压低于3v的时候,产生一个中断,
if(a>=80) a=80;   //不让A超过80
当电压低于2v7的时候 产生一个中断
if(a>=50) a=50;  //不让A超过50
当电压低于2v4的时候, 强制关机 或者我在ISP软件上设置2v4自动复位也可以
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2025-2-28 06:32:43 | 显示全部楼层
vb2*** 发表于 2025-2-27 23:27
我表达错了.
不是运行程序, 应该是到达LVD3V0以后,就限定某个值,不能超过50
我刚看了一下ISP软件里面的范 ...

到达LVD3V0以后,就限定某个值,不能超过50
这不还是运行程序吗,硬件又做不了这个
勾选允许低压复位,一旦电压下降到设置的电压就复位,无法运行程序
不勾选就进中断(必须要有中断函数)
可以试试用户程序中动态设置LVDS,先设置3V,触发中断后改2.7V
截图202502280630287120.jpg
有ADC的最好用ADC
DebugLab
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 13:21 , Processed in 0.148288 second(s), 79 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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