迅为嵌入式开发平台4418/6818看门狗教程

本文转自迅为论坛:http://www.topeetboard.com


1.进入到内核目录下,以下图所示:




看门狗的驱动位于内核的: drivers/watchdog/nxp_wdt.c, 这个文件, 默认时间
是 10 秒,若是想更改其它时间,经过修改该文件里面的
CONFIG_NXP_WATCHDOG_DEFAULT_TIME 这个宏定义,或者编译内核时经过传递参
数方式。


2.而后输入:export ARCH=arm,以下图所示:




3.内核目录下会有 4418&6818 的对应配置文件, 这里我以” 4418  4G 底板+android 
4.4 系统“的配置文件,来作实验(用户须要根据本身的要去选择对应的配置文
件) ,输入命令:cp config_for_iTOP4418_android_RTL8211 .config,以下图
所示:






4.而后输入:make menuconfig 命令,进入到内核配置界面,以下图所示:




选择“Device Drivers”选项,进入到设备驱动配置界面,以下图所示:




5.在设备驱动配置界面找到“Watchdog Timer Support”选项,以下图所示:




6.而后进入看门狗配置界面,以下图所示:


7.而后配置上 4418&6818 的看门狗驱动,以下图所示:




注意:上图中 4418 看门狗的“do  keepalive  using  watchdog  task  for  cpu  reset 
in  task  hung  state  (NEW)”这个功能是在内核里运行一个定时喂狗的进程,如
果内核异常,会致使看门狗复位, 这里咱们没有配置,咱们使用上层应用程序喂
狗的方式。
8.而后退出并保存内核配置, 返回到 android 源码目录下, 运行编译脚本, 生成
android 系统的几个镜像,使用 OTG 或 TF 卡烧写新生成的镜像到开发板。至此
内核看门狗的配置完成。


9.开发板烧写完成,从新启动,在串口终端下输入:ls  /dev/watchdog,以下图
所示:






能够看到有看门狗的备节点了(默认状态下,看门狗是关闭的)。
10.而后使用 adb 或者手机助手工具上传附件里面的 watchdog 测试工具到开发板
上 (我这里上传到了” /sdcard “目录下) , 而后使用 cp 命令拷贝 watchdog 文件
到“/data”目录下,以下图所示:



 而后使用 cd 命令进入到“/data”目录,以下图所示:




而后使用 chmod 命令设置 watchdog 具备执行权限,以下图所示:


接着能够运行 watchdog 开启看门狗功能了,watchdog 会每隔一秒喂狗一次,如
下图所示:


若是如今咱们使用“Ctrl+c” 中断 watchdog 的运行,过 10 秒钟 (看门狗默认喂
狗时间间隔是 10 秒)后看门狗会致使系统复位,从新启动,以下图所示: 


至此 4418&6818 看门狗的使用介绍完成。 你们若是想使用此功能, 能够在本身的 程序里实现喂狗的代码。