项目学习及复盘260929

1. 局部调试和全局调试开关的设置

//假设我现在需要单独调试调用SN613的模块
#include <sc.h>
#define SN613_DEMO_MAIN 0
    //设置值 = 1  编译这段SN613_DEMO_MAIN(),用于独立测试
    //设置值 = 0  不编译这段示例 SN613_DEMO_MAIN (),使用主工程的 main(),可能在另一个文件


//中间是 主程序和本模块通用的代码逻辑


#if SN613_DEMO_MAIN

void main(void)
{
    GIE = 0;
    OSCCON = 0x70;   /* 16 MHz; 4T must ALSO be set in CONFIG */
    PWMCON0 = 0;     /* no PWM may own RB2 */
    SN613_Init();
    _delay(80000);   /* initial 20 ms; not a PIR warm-up guarantee */
    while (1)
    {
        SN613_Read(1);
        _delay(80000); /* 20 ms; line remains INPUT during this wait */
    }
}
#endif

2.关于单片机控制充放电时,关闭充电使能,有可能会造成单片机其余输出引脚的输出电压上升;

因为:

停止充电 → 负载减小 → VDD 上冲并抬高 → LED 电流变化
恢复充电 → 负载增大 → VDD 降低 → LED 亮度恢复

实例充电使能波形图:

可以看到当充电使能EN = 0,黄线LED脚的输出发生电压上升,当 充电使能EN = 1时,黄线LED脚的输出又回到和EN一直的波形。因此做出如下推测,是否是EN关闭,导致负载减小,电流增大,造成的LED亮暗脉冲,所以需要去测试VDD的输入电压波形来验证猜想对不对。

验证结果如下:

VDD引脚波形蓝线与LED引脚波形黄线波形几乎吻合,基本可以判定是负载突然减小造成电源输出上冲,导致的LED亮度具有脉冲现象。

参考:SSZT807 Technical article | TI.com

这里的举例是LOAD增大造成的电压下降。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值