周期性间隔定时器(PIT) - 轩辕赤血的日志- 网易博客
周期性间隔定时器(PIT)
2010-05-26 15:16:55
阅读
9
评论
0
字号:
大
中
小
//wang@20070606 周期性间隔定时器(PIT)
/*
PIT_MR模式寄存器
[0-19]PIV: 周期性间隔数值 定义了与周期性间隔寄存器20 位计数器CPIV比较的数值。
[24]PITEN: 使能周期性间隔定时器 只有在CPIV 为0时操作PITEN 才有作用
[25]PITIEN: 使能周期性间隔定时器中断
PIT_SR状态寄存器
[0]PITS: 周期性间隔定时器状态 (1 = 自上次读取PIT_PIVR之后周期性间隔定时器已经计数到PIV)
PIT_PIVR数值寄存器 (通过读PIT_PIVR xx中断)
[0-19]CPIV: 当前周期性间隔数值 返回周期性间隔定时器的当前数值
[20-31]PICNT: 周期性间隔计数器 返回自上一次读取PIT_PIVR 之后发生的周期性间隔次数
PIT有一个可编程的溢出计数器和读后即复位的特性。它基于两个计数器:一个20位的CPIV计
数器和一个12位的PICNT计数器。两个计数器的时钟都是主时钟的1/16。
20位的CPIV计数器从0开始计数,直到模式寄存器 PIT_MR的PIV域定义的溢出数值为止。CPIV
计到这个数值后即复位为0,同时周期性间隔计数器PICNT 加一。然后状态寄存器PIT_SR 的
位PITS置位并触发中断,此时中断是使能的(PIT_MR 的位PITIEN)
通过读取周期性间隔映像寄存器PIT_PIIR 获得CPIV 和PICNT 的数值对计数器的CPIV 和
PICNT,以及PITS没有影响。例如,软件剖析工具可以读取PIT_PIIR而不会xx任何已经发生
但还未处理的中断,而定时器中断通过读PIT_PIVR xx中断。
*/
#include "../Startup/Board.h"
const int led_mask[8]= {LED1, LED2, LED3, LED4};
#define PIV_200_MS 200
void Periodic_handler(void)
{
unsigned int status;
//* Interrupt Acknowledge
status = AT91C_BASE_PITC->PITC_PIVR; //读PIT_PIVRxx中断
status =status;
// AT91C_BASE_DBGU->DBGU_THR = '*';
//* Read the output state
if ((AT91F_PIO_GetInput(AT91C_BASE_PIOA) & LED1 ) == LED1 )
{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOA, LED1 );
}
else
{
AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED1 );
}
}
int main()
{
// First, enable the clock of the PIO
AT91F_PMC_EnablePeriphClock ( AT91C_BASE_PMC, 1 << AT91C_ID_PIOA ) ;
AT91F_PIO_CfgOutput( AT91C_BASE_PIOA, LED_MASK ) ;
// Clear the LED's. On the EB55 we must apply a "1" to turn off LEDs
AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED_MASK ) ;
//配置中断
AT91F_AIC_ConfigureIt ( AT91C_BASE_AIC, AT91C_ID_SYS, 0,AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE, Periodic_handler);
//设置中断模式
//PITEN: 使能周期性间隔定时器
//PITIEN: 使能周期性间隔定时器中断
//PIV: 周期性间隔数值 (((MCK/16)*PIV_200_MS)/1000-1) 范围20位,溢出时取溢出部份
AT91C_BASE_PITC->PITC_PIMR = AT91C_PITC_PITEN | AT91C_PITC_PITIEN | (((MCK/16)*PIV_200_MS)/1000-1) ;
//启用中断
AT91F_AIC_EnableIt (AT91C_BASE_AIC, AT91C_ID_SYS);
for(;;)
{
;
}
}//* End
引文来源
this.p={ m:2, b:2, id:'fks_080068092081080067081083084095082094082066086083095069', blogTitle:'周期性间隔定时器(PIT)', blogUrl:'blog/static/68312596201042631655362', isPublished:1, istop:false, type:1, modifyTime:0, permalink:'blog/static/68312596201042631655362', commentCount:0, mainCommentCount:0, recommendCount:0, friendstatus:'none', followstatus:'unFollow', pubSucc:'' }
{list a as x} {if !!x} {/if} {/list}
{if !!a} {/if}
<#--{zx1}日志-->
{list a as x} {if !!x}
{/if} {/list}
<#--推荐日志-->
推荐过这篇日志的人:
{if !!b&&b.length>0}
他们还推荐了:
{list b as y} {if !!y}
·
{/if} {/list}
{/if}
<#--引用记录-->
引用记录:
{list d as x}
·
{/list}
<#--相关日志-->
{list a as x} {if !!x}
{/if} {/list}
<#--推荐日志-->
{list a as x} {if !!x}
{/if} {/list}
<#--推荐阅读-->
{list a as x} {if !!x}
{/if} {/list}
<#--相关文章 2010.04.29="" by="" yangfan--="">
{list a as x} {if x_index>4}{break}{/if} {if !!x}
${fn2(x.publishTime)}
{/if} {/list}
<#--右边模块结构-->
{zx1}日志
博主推荐
相关日志
推荐阅读
<#--评论模块结构-->
<#--引用模块结构-->
#--引用模块结构-->#--评论模块结构-->#--右边模块结构-->#--相关文章>#--推荐阅读-->#--推荐日志-->#--相关日志-->#--引用记录-->#--推荐日志-->#--{zx1}日志-->
郑重声明:资讯 【周期性间隔定时器(PIT) - 轩辕赤血的日志- 网易博客】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【
在线投诉
】,我们审核后将会尽快处理。
——
相关资讯
——
湘潭波纹管
2018/2/14
老人卧室挂什么画好
2015/11/6
物理知识的生活常见的应用
2010/1/9
为什么说电气石汗蒸房会有疗效?_盐屋、成都盐屋、四川盐屋、盐板浴 ...
2010/3/17
西安美佳纸杯厂,美佳佳纸杯_美佳佳纸杯_百度空间
2010/3/22
宋代天蓝釉褐色堆塑纹笔筒, 高24.5厘米_赏瓷堂_新浪博客
2010/4/2
铁矿石谈判实质已中断三巨头称不接受报价就断货- 伍常捷- 伍常捷- 和讯博客
2010/4/16
你想汇集图片成画册吗?请跟我来吧!_含笑蜡梅_新浪博客
2010/5/5
喜羊羊与灰太狼之虎虎生威[中国动漫2010年最热贺岁动漫]迅雷下载_ ...
2010/5/17
高盛的中国生意- 窥见上帝之子的秘密--金依诺- innoking - 和讯博客
2010/5/19
HD194Z-3S9网络电力仪表阿里巴巴huayi616的博客BLOG
2010/5/22
股市网:探秘成发科技公布增发方案后连续跌停- 股市网-股票行情股票 ...
2010/5/24
Windows 7旗舰版对显卡的要求高吗? – 【Windows7系统之家】
2010/6/9
新型指纹传感器FPC1011C的性能及应用_ctgukuang的空间_百度空间
2010/6/22
【私募早报】刘明康:国内银行资本充足率全部达标- 股天乐- 股天乐博客 ...
2010/6/28
吃什么抗衰老
2015/2/12
男孩子老是掉头发
2015/3/19
哪些食物可以防脱发
2015/3/19
有效去除黄褐斑ぉし
2015/5/12