一板网电子技术论坛

admin
发表于: 2015-5-2 20:31:00 | 显示全部楼层

SAM4L-XSTK入门套件 - WDT看门狗例程

@ 一板网


Atmel Studio 6.2官方环境提供了SAM4L-XSTK的入门例程,本文简单介绍了SAM4L-XSTK的WDT部分。


1. 建立WDT例程

打开Atmel Studio 6.2开发环境,选择File->New->Example Project...,弹出New Example Project from ASF or Extensions对话框,在Search for Example Projects编辑框中输入SAM4L Xplained Pro,在列表中就会显示出所有适合该评估板的例程,在列表中选择WDT Example,显示结果如下:

001.jpg

在对话框的下半部分显示新建工程的属性,其中:

— Project Name:新建项目的名称;

— Location:新建项目所在路径。如果需要修改,单击右侧的 002.jpg 按钮,在弹出的对话框选择新的文件夹即可。

— Solution:新建项目所在的方案,可以添加到新的方案或者是已经存在的方案。

— Solution Name:新的方案名称。

— Device:工程使用的芯片型号。

一般情况下,以上参数选择默认即可。点击OK按钮,Atmel Studio就会在Locaiton建立一个新的项目,并且打开,用户可以浏览工程文件。


2. 工程文件简介

WDT工程有三个主要文件:

— wdt_sam4l.c: SAM4L看门狗驱动源文件;

— wdt_sam4l.h: SAM4L看门狗驱动头文件;

— wdt_example_sam4l.c: SAM4L看门狗例程运行实例文件。

重要定义及函数:

struct wdt_config 看门狗配置结构体;


  1. struct wdt_config {
  2.       
  3.         uint32_t clk_src;   /** 看门狗时钟源 */

  4.         uint32_t wdt_mode;   /** 看门狗运行模式 */
  5.       
  6.         enum wdt_period timeout_period;  /** 看门狗溢出的时钟数. */
  7.         
  8.         enum wdt_period window_period;   /** 看门狗复位的时钟数. */
  9.         
  10.         bool disable_flash_cali; /** 禁止看门狗复位后Flash校准重做. */

  11.         bool disable_wdt_after_reset; /**看门狗复位后禁止使能. */

  12.         bool always_on; /**如果为1,看门狗一直使能,并被锁定至当前配置。 */
  13. };
复制代码

bool wdt_init( struct wdt_dev_inst *const dev_inst,  Wdt *const wdt, struct wdt_config *const cfg); 看门狗初始化函数。

void wdt_enable(struct wdt_dev_inst *const dev_inst); 看门狗使能函数。

void wdt_disable(struct wdt_dev_inst *const dev_inst); 看门狗禁止使能函数。

void wdt_clear(struct wdt_dev_inst *const dev_inst);看门狗喂狗函数。


3. 运行看门狗例程

连接SAM4L-XSTK入门套件,编译并下载工程至SAM4L-XSTK入门套件。

004.jpg

打开串口助手,打开串口,选择串口号,设置串口波特率115200,无校验,1位停止位。运行结果如下:

003.jpg






跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



手机版|

GMT+8, 2022-12-7 00:33 , Processed in 0.024370 second(s), 7 queries , Gzip On, MemCache On. Powered by Discuz! X3.4

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表