打印
[经验分享]

单片机系统的复位(初始化)、抗干扰与防“走飞”

[复制链接]
楼主: lzbf
手机看帖
扫描二维码
随时随地手机跟帖
21
zerorobert| | 2024-10-5 13:54 | 只看该作者 回帖奖励 |倒序浏览
使用滤波算法来处理传感器数据。
在软件中加入去抖动逻辑。

使用特权

评论回复
22
louliana| | 2024-10-5 15:34 | 只看该作者
除了硬件措施外,还可以通过软件方法来提高系统的抗干扰能力。例如,采用数字滤波算法来消除随机误差和噪声信号;通过软件陷阱和看门狗技术来防止程序因干扰而失控等。

使用特权

评论回复
23
juliestephen| | 2024-10-5 17:39 | 只看该作者
在复位后,需要对单片机的各个部分进行初始化设置,包括配置I/O端口、设置中断向量、初始化定时器和计数器等。这些设置确保了单片机能够按照预期的方式工作。

使用特权

评论回复
24
sheflynn| | 2024-10-5 18:00 | 只看该作者
在未使用的内存区域设置软件陷阱,一旦程序跑飞进入这些区域,可以捕获并采取相应措施。

使用特权

评论回复
25
updownq| | 2024-10-5 18:58 | 只看该作者
使用看门狗定时器、进行程序校验、设置软件陷阱等。

使用特权

评论回复
26
uiint| | 2024-10-5 19:20 | 只看该作者
在PCB布线时,尽量缩短信号线路并使用较宽的地线,以减少信号干扰和回路面积。多层PCB设计可以更好地控制阻抗,优化信号的传输质量。

使用特权

评论回复
27
pmp| | 2024-10-5 19:40 | 只看该作者
在某些情况下,可能需要手动触发复位操作,例如当系统出现异常或需要重新启动时。这可以通过按下复位按钮或使用其他外部信号来实现。

使用特权

评论回复
28
uptown| | 2024-10-5 21:37 | 只看该作者
看门狗复位电路可以自动避免程序运行异常时“走飞”并陷入死循环。当系统正常运行时,CPU会定时复位某个计数器CTC,使得该计数器的值不超过某一规定值t0。当系统异常时,CPU不能正常工作,造成计数器CTC不能被复位,其计数会超过t0,进而产生复位脉冲送给看门狗电路,使CPU恢复正常工作状态。

使用特权

评论回复
29
bartonalfred| | 2024-10-7 14:01 | 只看该作者
电源滤波可以通过在电源输入端添加滤波器、稳压器等元件,来减少电源干扰对单片机系统的影响。接地设计应该合理布局地线,确保系统的各个部分都有良好的接地连接,以减少电磁干扰和静电干扰。屏蔽措施可以通过使用金属屏蔽罩、屏蔽电缆等,来减少射频干扰和电磁干扰。软件抗干扰可以通过在程序中添加错误检测和纠正代码、使用看门狗定时器、进行数据校验等方式,来提高系统的可靠性和稳定性。

使用特权

评论回复
30
jonas222| | 2024-10-7 17:17 | 只看该作者
在软件中实现自复位功能,当检测到异常时,可以主动复位单片机。

使用特权

评论回复
31
jackcat| | 2024-10-7 20:26 | 只看该作者
上电复位是在系统上电时自动产生的复位信号,通常由电源管理芯片或复位电路提供。手动复位是通过按下复位按钮或其他外部触发信号来实现的复位操作。软件复位是通过在程序中执行特定的指令来触发复位操作,例如调用复位函数或设置特定的寄存器位。看门狗复位是由看门狗定时器超时产生的复位信号,用于检测系统是否出现故障或死机,并在必要时自动复位系统。

使用特权

评论回复
32
earlmax| | 2024-10-7 21:23 | 只看该作者
当系统电源接通时,单片机进行初始化,振荡器开始工作,提供系统时钟,使系统进入正常工作状态。这种复位方式简单直接,适用于大多数单片机系统。

使用特权

评论回复
33
usysm| | 2024-10-8 09:37 | 只看该作者
干扰主要来自外部电源、内部电源、印制板排版走线的互相干扰、周围电磁场干扰以及外部干扰通过IO口输入等。

使用特权

评论回复
34
uiint| | 2024-10-8 10:58 | 只看该作者
电源是引入干扰的主要途径之一。为了减少电源干扰,可以采用稳压电源、滤波电容等措施来稳定电源电压,并抑制高频噪声。

使用特权

评论回复
35
primojones| | 2024-10-8 13:54 | 只看该作者
在关键信号线上添加限幅电路或钳位二极管,以防止过高的电压损坏单片机。

使用特权

评论回复
36
wengh2016| | 2024-10-8 14:16 | 只看该作者
在软件中实现滤波算法,以减少模拟输入信号的噪声。

使用特权

评论回复
37
lzbf|  楼主 | 2024-10-8 14:55 | 只看该作者
除了硬件复位外,还可以通过软件指令来触发复位操作。这通常用于在程序运行过程中检测到错误或需要重新初始化系统时。

使用特权

评论回复
38
phoenixwhite| | 2024-10-8 20:10 | 只看该作者
在关键代码段前后加入校验和或CRC校验。
实现错误检测逻辑,当检测到错误时尝试恢复或重启。

使用特权

评论回复
39
belindagraham| | 2024-10-8 21:32 | 只看该作者
通过电容充电和电阻分压的方式,在电源上电时产生一个复位信号。

使用特权

评论回复
40
hilahope| | 2024-10-8 22:15 | 只看该作者
定期喂狗(更新看门狗定时器),防止程序运行超时。
当看门狗定时器溢出时,产生复位信号。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则