2724|2

940

帖子

0

TA的资源

纯净的硅(高级)

楼主
 

[原创文章] 【R7F0C809】外部中断来改变LED闪烁频率 [复制链接]

本帖最后由 wgsxsm 于 2015-9-29 22:42 编辑

距离上篇帖子已有一个月了,中间虽说不是一直在研究这个板子,也花费了大量时间。
第一次玩瑞萨的MCU,用户手册看起来还是有点吃力的,自从上次闪烁了LED一直没有什么进展,兴趣骤然消了不少。
还是看了 @强仔00001的OLED文章,接了几根杜邦线把OLED点亮之后,才重拾了一些信心,自己申请的板子,含着泪也要把它弄完。
于是乎,还是需要系统起来,结合自己当时的申请理由,一步步的完成。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
点亮了LED之后,在加入显示之前还是想把人机交互不可或缺的按键功能加入进来。
实验室根据该套件的上板原理图进行的,参照了R01AN2438CC0100--定时器阵列单元(间隔定时器)的例子:http://cn.renesas.com/support/do ... _r7f0c807_timer.zip主要移植了intc.c和intc.h,timer.c和timer.h
例程中LED PIN脚为P10,按键PIN脚为P137,而实验板上的LED PIN脚为P01,按键PIN脚为P11

此实验大致概述:
1.LED和INTP各个PIN的配置,输出的输出,输入的输入
  按键的输入功能被我不小心配置为输出,导致两天才查到原因,一定要细心啊!!!
  另外,值得说一下的是,外部中断引脚中原例程的P137本身是可以配置为INTP0的,而本实验的P11配置为INTP1需要多一步对PIOR寄存器的设置




2. TAU0_Channel0 的间隔定时器与INTP1中断的设置
  定时器部分几乎未做任何修改,采取计数器初始值为2ms间隔的定时中断,计数250次也即是500ms之后,LED状态翻转;外部中断发生后,修改计数器的值来改变间隔定时的时间让LED翻转的快慢发生变化。
  外部中断部分将设置原来的INTP0修改为现在的INTP1,另外需要在此之前配置上文提到的P11为数字输入,以及PIOR2=1,否则得不到相应的实验现象。
3.开启TAU0 的间隔定时器中断与INTP1中断
  中断开启之后,每隔一段时间,TAU0_Channel0中断处进行判断是否LED翻转的条件是否达到,达到则进行闪烁;INTP1中断到来时,先进行10ms的消抖处理,结束之后才做相应的运算。
实验现象如下

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
最后补上自己的代码
E_LOCK_20150929.zip (154.81 KB, 下载次数: 7, 售价: 1 分芯积分)

最新回复

楼主加油  详情 回复 发表于 2015-9-29 23:49
点赞 关注

回复
举报

456

帖子

2

TA的资源

一粒金砂(中级)

沙发
 
支持,加油
 
 

回复

1291

帖子

0

TA的资源

纯净的硅(中级)

板凳
 
楼主加油
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表