日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RK3588 外部硬件看門狗完整實現(xiàn):從原理圖到代碼落地

jf_44130326 ? 來源:Linux1024 ? 作者:Linux1024 ? 2026-05-14 11:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式系統(tǒng)尤其是工業(yè)級應(yīng)用中,系統(tǒng)穩(wěn)定性是第一優(yōu)先級。即使是經(jīng)過嚴(yán)格測試的軟件,也可能在復(fù)雜的現(xiàn)場環(huán)境中出現(xiàn)死鎖、崩潰或跑飛的情況。此時,看門狗(Watchdog)就成為了最后一道防線,能夠在系統(tǒng)異常時自動復(fù)位,確保設(shè)備24小時不間斷運行。

瑞芯微RK3588雖然內(nèi)置了硬件看門狗,但在某些高可靠性場景下,外部獨立看門狗芯片仍然是更優(yōu)選擇。本文將結(jié)合實際原理圖和完整代碼,詳細(xì)講解如何在RK3588平臺上實現(xiàn)基于SGM819/TPV710的外部硬件看門狗。

wKgZO2oFRmqANuDiAADexK4oGWM414.png

一、為什么選擇外部看門狗?

很多開發(fā)者會問:RK3588已經(jīng)有內(nèi)置看門狗了,為什么還要額外加外部芯片?主要有以下三個核心原因:

1.獨立性更強(qiáng):內(nèi)置看門狗與CPU共享時鐘電源,當(dāng)CPU時鐘異?;螂娫床▌訒r,內(nèi)置看門狗可能同時失效;而外部看門狗是獨立的芯片,不受CPU內(nèi)部狀態(tài)影響。

2.可靠性更高:外部看門狗芯片經(jīng)過專門的工業(yè)級設(shè)計,工作溫度范圍更廣,抗干擾能力更強(qiáng),適合惡劣的工業(yè)環(huán)境。

3.復(fù)位更徹底:外部看門狗直接控制系統(tǒng)復(fù)位引腳,能夠?qū)崿F(xiàn)真正的硬件級全系統(tǒng)復(fù)位,包括CPU、內(nèi)存和所有外設(shè),避免部分模塊未復(fù)位導(dǎo)致的殘留問題。

二、硬件原理圖詳解

本次設(shè)計采用的是SGM819S-DBQN5G/TR(兼容TPV710NYQ-S5TRS)看門狗芯片,這是一款低功耗、高精度的硬件看門狗,采用SOT-23-5封裝,非常適合嵌入式系統(tǒng)使用。

2.1芯片引腳功能

引腳號 名稱 功能說明
1 WDO/ 看門狗輸出,低電平有效,超時后輸出復(fù)位信號
2 GND
3 EN/ 使能引腳,低電平有效,拉低時看門狗工作
4 WDI 喂狗輸入引腳,需要定期翻轉(zhuǎn)電平
5 VCC 電源輸入,支持1.6V~5.5V寬電壓范圍

2.2關(guān)鍵電路連接分析

1.電源電路:VCC引腳通過0Ω電阻R91114連接到VCC_1V8_S3電源,同時并聯(lián)10μF濾波電容C10080,確保電源穩(wěn)定。

2.使能電路:EN /引腳通過22Ω電阻R91112連接到RK3588的DWG_EN引腳。在本設(shè)計中,我們將EN /引腳直接使能,看門狗在上電后立即開始工作。

3.喂狗電路:WDI引腳通過22Ω電阻R91113連接到RK3588的WDG_DI引腳(對應(yīng)GPIO8)。CPU需要定期向該引腳輸出高低電平翻轉(zhuǎn)信號,否則看門狗會超時復(fù)位。

4.復(fù)位輸出電路:WDO /引腳通過100Ω電阻R91111連接到系統(tǒng)復(fù)位信號RESET_L,同時與手動復(fù)位按鍵SW11并聯(lián)。當(dāng)看門狗超時或按下復(fù)位按鍵時,都會產(chǎn)生低電平復(fù)位信號。

2.3重要參數(shù)說明

SGM819S-DBQN5G的固定超時時間為1.6秒。這意味著CPU必須在1.6秒內(nèi)至少翻轉(zhuǎn)一次WDI引腳的電平,否則看門狗就會輸出復(fù)位信號。

三、軟件實現(xiàn)方案

根據(jù)硬件設(shè)計,我們需要在Debian 12系統(tǒng)中實現(xiàn)一個后臺服務(wù),定期翻轉(zhuǎn)GPIO8的電平,完成喂狗操作。

3.1喂狗腳本實現(xiàn)

創(chuàng)建/etc/init.d/gpio_watchdog.sh腳本,實現(xiàn)GPIO初始化和無限循環(huán)喂狗功能:

#!/bin/bash# 看門狗喂狗腳本:GPIO8 每4秒高低電平切換# 適用系統(tǒng):Debian 12# 作者:嵌入式技術(shù)筆記# GPIO引腳編號(根據(jù)實際硬件修改)GPIO_PIN=8GPIO_PATH="/sys/class/gpio/gpio$GPIO_PIN"# 1. 初始化GPIO:如果未導(dǎo)出,則導(dǎo)出并設(shè)置為輸出模式if[ ! -d"$GPIO_PATH"];then echo"[$(date '+%Y-%m-%d %H:%M:%S')] 正在導(dǎo)出 GPIO$GPIO_PIN..." echo$GPIO_PIN> /sys/class/gpio/export sleep0.1fi# 設(shè)置GPIO方向為輸出echo"[$(date '+%Y-%m-%d %H:%M:%S')] 設(shè)置 GPIO$GPIO_PIN為輸出模式"echo"out">$GPIO_PATH/direction# 2. 無限循環(huán)喂狗(4秒一個周期,確保在1.6秒超時前完成翻轉(zhuǎn))echo"[$(date '+%Y-%m-%d %H:%M:%S')] GPIO看門狗服務(wù)啟動成功,開始喂狗"whiletrue;do # 拉高電平 echo1 >$GPIO_PATH/value sleep2 # 拉低電平 echo0 >$GPIO_PATH/value sleep2done

關(guān)鍵說明

?我們采用2秒高+ 2秒低的周期,遠(yuǎn)小于1.6秒的超時時間,留有充足的余量

?使用sysfs接口操作GPIO,兼容性好,不需要額外安裝驅(qū)動

?腳本添加了時間戳日志,方便排查問題

3.2 Systemd服務(wù)配置

為了讓喂狗腳本開機(jī)自啟并在異常退出時自動重啟,我們創(chuàng)建一個systemd服務(wù)文件/etc/systemd/system/gpio-watchdog.service:

[Unit]Description=GPIO8 Watchdog Feeding ServiceAfter=basic.target[Service]Type=simpleExecStart=/etc/init.d/gpio_watchdog.shRestart=alwaysRestartSec=1User=rootGroup=root[Install]WantedBy=multi-user.target

服務(wù)參數(shù)說明

?Restart=always:無論腳本因何種原因退出,都會自動重啟

?RestartSec=1:退出后1秒立即重啟,最大限度縮短無喂狗時間

?User=root:必須以root用戶運行,否則無法操作GPIO

3.3根文件系統(tǒng)集成

在構(gòu)建Debian根文件系統(tǒng)時,將上述兩個文件添加到overlay目錄,并在mk-debian-rootfs-patch.sh中添加開機(jī)自啟命令:

# 在chroot環(huán)境中執(zhí)行systemctlenablegpio-watchdog

這樣,在系統(tǒng)燒錄完成后,看門狗服務(wù)會自動啟動。

四、完整工作流程

1.系統(tǒng)上電:外部看門狗芯片SGM819同時上電,EN /引腳使能,看門狗開始計時

2.系統(tǒng)啟動:RK3588啟動Linux內(nèi)核,加載必要的驅(qū)動

3.服務(wù)啟動:系統(tǒng)進(jìn)入多用戶模式后,gpio-watchdog.service自動啟動

4.開始喂狗:腳本初始化GPIO8為輸出模式,開始每4秒一次的電平翻轉(zhuǎn)

5.正常運行:只要系統(tǒng)正常工作,喂狗操作就會持續(xù)進(jìn)行,看門狗不會超時

6.系統(tǒng)異常:如果系統(tǒng)死鎖、崩潰或腳本異常退出,喂狗操作停止

7.超時復(fù)位:1.6秒后,看門狗檢測到WDI引腳沒有電平變化,輸出低電平復(fù)位信號

8.系統(tǒng)重啟:整個系統(tǒng)硬件復(fù)位,重新開始啟動流程

五、看門狗功能測試

為了確??撮T狗正常工作,我們需要進(jìn)行以下測試:

5.1服務(wù)狀態(tài)檢查

# 查看服務(wù)狀態(tài)systemctlstatus gpio-watchdog# 查看服務(wù)日志journalctl -u gpio-watchdog -f

如果服務(wù)正常運行,應(yīng)該能看到"GPIO看門狗服務(wù)啟動成功,開始喂狗"的日志。

5.2手動停止服務(wù)測試

# 停止看門狗服務(wù)systemctlstop gpio-watchdog

正常情況下,1.6秒后系統(tǒng)會自動復(fù)位。如果系統(tǒng)沒有復(fù)位,說明硬件連接或看門狗芯片有問題。

5.3系統(tǒng)死鎖模擬測試

編寫一個簡單的死循環(huán)程序,占用100% CPU,模擬系統(tǒng)死鎖:

#includeintmain(){ while(1); return0;}

編譯并運行:

gcc -o deadlock deadlock.c./deadlock &

觀察系統(tǒng)是否會在一段時間后自動復(fù)位。

六、注意事項與優(yōu)化建議

1.喂狗周期選擇:喂狗周期必須小于看門狗超時時間,建議留至少50%的余量。本設(shè)計中1.6秒超時,使用2秒翻轉(zhuǎn)一次是安全的。

2.GPIO引腳選擇:選擇系統(tǒng)啟動過程中不會被其他外設(shè)占用的GPIO引腳,避免啟動過程中誤觸發(fā)復(fù)位。

3.服務(wù)優(yōu)先級:將看門狗服務(wù)設(shè)置為較高優(yōu)先級,確保在系統(tǒng)負(fù)載較高時也能及時喂狗。

4.電源穩(wěn)定性:看門狗芯片的電源必須穩(wěn)定,建議增加濾波電容,避免電源波動導(dǎo)致誤復(fù)位。

5.雙重看門狗:在極高可靠性要求的場景中,可以同時使用內(nèi)置看門狗和外部看門狗,形成雙重保護(hù)。

七、總結(jié)

本文詳細(xì)介紹了在RK3588平臺上實現(xiàn)外部硬件看門狗的完整方案,從硬件原理圖分析到軟件代碼實現(xiàn),再到功能測試,覆蓋了整個開發(fā)流程。

外部看門狗雖然增加了一點硬件成本,但帶來的可靠性提升是巨大的。對于工業(yè)控制、智能網(wǎng)關(guān)、車載設(shè)備等不能容忍停機(jī)的應(yīng)用場景,外部看門狗是必不可少的組件。

希望本文能夠幫助正在使用RK3588進(jìn)行產(chǎn)品開發(fā)的工程師們,快速實現(xiàn)穩(wěn)定可靠的看門狗功能,提升產(chǎn)品的整體質(zhì)量。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 看門狗
    +關(guān)注

    關(guān)注

    10

    文章

    612

    瀏覽量

    73295
  • RK3588
    +關(guān)注

    關(guān)注

    8

    文章

    600

    瀏覽量

    7641
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    貝啟科技RK3588+RK1828方案機(jī)器人展示

    貝啟科技攜手AutoCore達(dá)成深度合作,聯(lián)合打造RK3588+RK1828國產(chǎn)化機(jī)器人開發(fā)平臺。該方案實現(xiàn)芯片、硬件、軟件全鏈路國產(chǎn)自研,核心技術(shù)具備自主知識產(chǎn)權(quán),支持規(guī)?;焖倭慨a(chǎn),能夠有效幫助
    的頭像 發(fā)表于 04-28 17:12 ?1177次閱讀
    貝啟科技<b class='flag-5'>RK3588+RK</b>1828方案機(jī)器人展示

    RK3588操控終端

    RK3588操控終端全國產(chǎn)化無人裝備手持操控終端,搭載工業(yè)級瑞芯微RK3588J芯片,適配麒麟等自主操作系統(tǒng),硬件核心到軟件應(yīng)用實現(xiàn) 10
    發(fā)表于 02-28 09:42

    深入解析RK3588 U-Boot板級文件:evb_rk3588.c核心邏輯拆解

    在嵌入式開發(fā)領(lǐng)域,瑞芯微RK3588憑借超強(qiáng)的算力、豐富的接口和廣泛的場景適配性,成為高端邊緣計算、消費電子項目的熱門選擇。而U-Boot作為嵌入式系統(tǒng)的“第一道門”,負(fù)責(zé)硬件初始化、引導(dǎo)內(nèi)核啟動,其板級適配代碼直接決定了芯片
    的頭像 發(fā)表于 02-24 15:24 ?1049次閱讀
    深入解析<b class='flag-5'>RK3588</b> U-Boot板級文件:evb_<b class='flag-5'>rk3588</b>.c核心邏輯拆解

    解決RK806+RK3588休眠異常!硬件特性軟件優(yōu)化的完整方案

    在嵌入式開發(fā)中,電源管理的穩(wěn)定性直接決定了設(shè)備的可靠性。近期,RK3588 平臺搭配 RK806 電源管理芯片(PMIC)時,出現(xiàn)了二次休眠異常的問題 —— 第一次休眠喚醒正常,再次休眠后
    的頭像 發(fā)表于 02-09 16:46 ?999次閱讀
    解決<b class='flag-5'>RK806+RK3588</b>休眠異常!<b class='flag-5'>從</b><b class='flag-5'>硬件</b>特性<b class='flag-5'>到</b>軟件優(yōu)化的<b class='flag-5'>完整</b>方案

    RK3588 CPU?隔離:AB/非?AB?系統(tǒng)雙方案適配實戰(zhàn)

    方案 ,兩套方案代碼完整可直接套用,核心差異僅在于 代碼集成路徑與函數(shù)調(diào)用時機(jī) ,且均支持通過vendor_storage動態(tài)配置隔離核心,無需反復(fù)編譯固件,重啟即可生效。下文將從隔離原理、適用場景、雙方案
    的頭像 發(fā)表于 02-09 07:12 ?613次閱讀
    <b class='flag-5'>RK3588</b> CPU?隔離:AB/非?AB?系統(tǒng)雙方案適配實戰(zhàn)

    保姆級教程!RK3588 Linux6.1?固件簽名完整實現(xiàn)方案(不含rootfs)

    內(nèi)核)上實操固件簽名時,踩了不少官方文檔的坑,經(jīng)過反復(fù)調(diào)試終于打通全流程。今天就把這份實戰(zhàn)經(jīng)驗整理成保姆級教程,配置問題排查,一步步帶大家搞定 RK3588 的固件簽名! 一、核心原理速覽 ? ? 固件簽名的核心邏輯是通過
    的頭像 發(fā)表于 01-14 17:21 ?2380次閱讀
    保姆級教程!<b class='flag-5'>RK3588</b> Linux6.1?固件簽名<b class='flag-5'>完整</b><b class='flag-5'>實現(xiàn)</b>方案(不含rootfs)

    【瑞薩RA × Zephyr評測】多線程和看門狗

    本文章旨在評估使用 Zephyr RTOS 在 Renesas FPB-RA6E2 開發(fā)板上實現(xiàn)多線程調(diào)度與硬件看門狗功能的應(yīng)用。評估內(nèi)容包括任務(wù)調(diào)度、看門狗初始化流程、主程序邏輯的詳
    的頭像 發(fā)表于 01-10 10:23 ?2710次閱讀
    【瑞薩RA × Zephyr評測】多線程和<b class='flag-5'>看門狗</b>

    ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開發(fā)板實現(xiàn)GPIO功能復(fù)用

    RK3588】ELF2開發(fā)板的GPIO引腳為例,詳細(xì)闡述硬件查找到軟件配置的完整流程。1.引腳確認(rèn)在開始配置之前,首先需要了解【RK3588
    的頭像 發(fā)表于 12-29 10:37 ?1631次閱讀
    ElfBoard技術(shù)貼|如何在【<b class='flag-5'>RK3588</b>】ELF 2開發(fā)板<b class='flag-5'>實現(xiàn)</b>GPIO功能復(fù)用

    迅為RK3588開發(fā)環(huán)境搭建“三步曲”,一輕松上手!

    迅為RK3588開發(fā)環(huán)境搭建“三步曲”,一輕松上手!
    的頭像 發(fā)表于 12-01 11:51 ?1409次閱讀
    迅為<b class='flag-5'>RK3588</b>開發(fā)環(huán)境搭建“三步曲”,<b class='flag-5'>從</b>零<b class='flag-5'>到</b>一輕松上手!

    基于迅為RK3588開發(fā)板實現(xiàn)高性能機(jī)器主控解決方案-?AI能力實戰(zhàn):YOLOv5目標(biāo)檢測例程

    基于迅為RK3588開發(fā)板實現(xiàn)高性能機(jī)器主控解決方案-?AI能力實戰(zhàn):YOLOv5目標(biāo)檢測例程
    的頭像 發(fā)表于 11-28 11:32 ?1775次閱讀
    基于迅為<b class='flag-5'>RK3588</b>開發(fā)板<b class='flag-5'>實現(xiàn)</b>高性能機(jī)器<b class='flag-5'>狗</b>主控解決方案-?AI能力實戰(zhàn):YOLOv5目標(biāo)檢測例程

    “喂狗”的藝術(shù):看門狗不叫,才是系統(tǒng)好

    看門狗選哪只好呢? 中間那只看起來不錯。 咳咳搞錯了,自動化項目中說的看門狗是PLC的看門狗,那這個有什么用呢?難道真的是看大門的?
    的頭像 發(fā)表于 11-25 10:50 ?485次閱讀
    “喂狗”的藝術(shù):<b class='flag-5'>看門狗</b>不叫,才是系統(tǒng)好

    一文搞懂?RK3588 PCIe:硬件資源拆分配置?+?避坑指南(含腦

    資源解析、 3? 大拆分方案實戰(zhàn)、關(guān)鍵配置步驟及避坑要點,附帶可視化腦,助力開發(fā)者快速落地? PCIe? 相關(guān)項目。 ? ? ? 一、 RK3588 PCIe? 核心硬件資源 ? 1
    的頭像 發(fā)表于 11-20 18:18 ?4999次閱讀
    一文搞懂?<b class='flag-5'>RK3588</b> PCIe:<b class='flag-5'>從</b><b class='flag-5'>硬件</b>資源<b class='flag-5'>到</b>拆分配置?+?避坑指南(含腦<b class='flag-5'>圖</b>)

    RK3588數(shù)據(jù)手冊

    RK3588的資料
    發(fā)表于 08-01 16:08 ?58次下載

    RK這2款旗艦芯片RK3588 PK RK3576,誰是最優(yōu)選

    ,推出了很多智能應(yīng)用處理器芯片,在嵌入式系統(tǒng)領(lǐng)域得到大規(guī)模的應(yīng)用。RK3588RK3576 系列作為瑞芯微(Rockchip)高性能處理器的代表,在性能、價格等方面存在差異。對于硬件產(chǎn)品開發(fā)而言
    發(fā)表于 07-10 18:24

    RK3588參數(shù)與主要特性 RK3588數(shù)據(jù)手冊解讀

    RK3588參數(shù)與主要特性 RK3588數(shù)據(jù)手冊解讀
    的頭像 發(fā)表于 05-19 18:34 ?1.5w次閱讀
    <b class='flag-5'>RK3588</b>參數(shù)與主要特性  <b class='flag-5'>RK3588</b>數(shù)據(jù)手冊解讀
    盘锦市| 闻喜县| 怀仁县| 徐州市| 苏尼特右旗| 盐边县| 闻喜县| 潢川县| 灵璧县| 凤城市| 东宁县| 山东| 辛集市| 友谊县| 五指山市| 兴义市| 永仁县| 乡城县| 泰宁县| 广西| 蒙自县| 阳春市| 安平县| 潢川县| 乌拉特后旗| 府谷县| 商南县| 开封市| 浦东新区| 且末县| 全椒县| 祁阳县| 永胜县| 南安市| 安仁县| 山东省| 阿拉善盟| 霍林郭勒市| 平陆县| 定边县| 安仁县|