本帖最后由 hejunpeng 于 2015-10-9 11:58 编辑
Atmel SAM L22 定时器TC 快速上手指南 ——基于Atmel Studio 和Atmel软件框架(ASF)
在MCU软件开发中,延时用的非常多,有的是硬件延时,采用MCU内部定时器,有的是软件延时,采用循环等待,不管是采用什么样的方式,最终达到的目的都是一样,为系统功能、时序做铺垫。下面结合Atmel Studio 和ASF对Atmel SAM L22 定时器操作进行说明,文本实现的功能是 间隔500ms 让LED不停闪烁。
①关于Atmel Studio 的使用说明,工程建立,ASF软件库添加,请参考:
https://www.cirmall.com/bbs/thread-44305-1-1.html
②添加TC - Timer Counter(driver) ASF库,这里使用的是 callback
③编写代码,此例程为LED间隔500ms闪烁,示例代码如下:
1、定时器采用TC3、工作模式8位
2、定时器时钟源:外部32.768KHz高精度晶振
3、定时器时钟分频因子:1024分频
计算: 32.768KHz = 32768Hz,32768个时钟为1s,进行1024分频:32768/1024 = 32,即32时钟为1s,500ms即为16个时钟,TC计数器周期值:16。
程序源码:
效果如下:
|