2024年5月4日发(作者:)
【WinCE驱动】基于S3C2440A芯片的看门狗驱动
【引子】
小弟日前正在开发一个仪器项目,核心芯片采用三星公司的S3C2440A,操作系统移
植的是微软公司的WinCE5.0。在实际调试中发现,系统由于受到强干扰而经常死机,虽
然后来在硬件上增加了屏蔽等措施,效果已经很好,但这个问题仍引起了我的重视,因此
我打算采用看门狗来增强系统最终的可靠性。然而,现有的开发包(BSP)并没有看门狗
驱动,只能自己动手写了。经过两个白昼的努力,终于搞定,现将这个看门狗驱动整理出
来,以免以后忘记了,毕竟“好记性不如烂笔头”。
【步骤】
WinCE下的驱动,一般分为本机驱动(Native Driver)和流驱动(Stream Driver)
两种。对于我们的应用,大多数都可以归结到流驱动,而我的看门狗驱动正是按照流驱动
格式来编写的。基本思路就是利用S3C2440A的定时器1来产生中断,然后在中断程序中
完成“喂狗”这一动作,从而实现看门狗功能。
首先,在Drivers目录下建立一个子目录watchdog,然后建立4个文件:makefile、
source、、wdg.c。
【makefile】文件内容如下(就一句):
!INCLUDE $(_MAKEENVROOT)
【source】文件内容如下:
RELEASETYPE=PLATFORM
TARGETNAME=wdg
TARGETTYPE=DYNLINK
TARGETLIBS=$(_COMMONSDKROOT)lib$(_CPUINDPATH)
DLLENTRY=DllEntry
DEFFILE=
SOURCES =
wdg.c
【】文件内容如下:
LIBRARY wdg
EXPORTS
wdg_Init
wdg_Deinit
发布评论