查看: 7592|回复: 17

PSoC4实验:利用中断ISR计数

  [复制链接]

该用户从未签到

发表于 2013-9-26 00:27:13 | 显示全部楼层 |阅读模式
分享到:
本程序是对旋转编码器编码的基本思路,与大家分享,兼作ISR的实验交流。
在压缩工程里有演示的视频,由于上传图片的大小限制,就没办法直接贴在这里了。

top-design:
count-top.jpg

Pin2和Pin3的是用作电源和地点亮LCD1602的,Pin4是高电平,要求串联10k欧的电阻与Pin1相连,也就是用10k欧的电阻串联pin0.4和pin0.7,逻辑关系如蓝色连线。
Pin1与p0.7相连,在PSoC4的右下角有一个开关SW2,本实验就用这个开关产生脉冲,用作计数的信号源。
主代码:
由于cortex-m0有独立的中断存储与组织能力,用isr对脉冲计数是非常容易实现的,而且不会遗漏任何的脉冲信号。相关资料请参考Cypress官网的PSoC4100/4200系列 PSoC4架构计数参考手册,文档编号No.001-86886
有不少人问我要LCD1602的文件,请下载此工程作为参考。

#include <device.h>
#define COMP 0x01
#define HOLD 0xff
CY_ISR_PROTO(Count);            //指定中断向量入口
int32 count=0;
void main()
{
  CyGlobalIntEnable;

  isr_Start();                   //isr使能,上升沿触发
  isr_SetVector(Count);          //指定中断向量
  LCD_Start();
  LCD_Position(0,0);
  LCD_PrintString("Count");
  while(1)
  {
    CySysPmSleep();              //PSoC进入睡眠模式
  }
}

CY_ISR(Count)                     //中断子程序
{
    count++;
    LCD_Position(1,0);
    LCD_PrintNumber(count);
}

工程与演示视频:
timer-test.zip (1.12 MB, 下载次数: 171)
回复

使用道具 举报

  • TA的每日心情
    奋斗
    2023-12-3 18:51
  • 签到天数: 772 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2013-9-26 08:04:55 | 显示全部楼层
    好东东顶一下

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-7-11 11:26
  • 签到天数: 1982 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2013-9-26 08:06:15 | 显示全部楼层
    留着以后学习学习
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-12 10:32
  • 签到天数: 295 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-9-26 08:46:38 | 显示全部楼层
    顶一个~~~~~~~~~~~~~~~·
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-9-25 20:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-9-26 10:27:15 | 显示全部楼层
    我试了还是不行,我不知道是不是板子连线出错了,你能给我发下你连线图,3q
    回复 支持 反对

    使用道具 举报

    该用户从未签到

     楼主| 发表于 2013-9-26 11:37:58 | 显示全部楼层
    本帖最后由 leonard 于 2013-9-26 11:48 编辑
    新蓉 发表于 2013-9-26 10:27
    我试了还是不行,我不知道是不是板子连线出错了,你能给我发下你连线图,3q ...

    是硬件的连接吗?我直接贴照片可以吗?
    IMG_20130926_114135.jpg
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-11-19 16:39
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-9-26 14:52:56 | 显示全部楼层
    不错不错,顶一个喽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-9-25 20:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-9-26 17:05:37 | 显示全部楼层
    我把线连好了,不过还是不行,就是现在最简单的显示显示不出来。就是显示: Count  显示不出来。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

     楼主| 发表于 2013-9-26 18:07:18 | 显示全部楼层
    新蓉 发表于 2013-9-26 17:05
    我把线连好了,不过还是不行,就是现在最简单的显示显示不出来。就是显示: Count  显示不出来。 ...

    背光亮吗?有对比度吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-9-25 20:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-9-27 10:11:15 | 显示全部楼层
    leonard 发表于 2013-9-26 18:07
    背光亮吗?有对比度吗?

    解决了,是对比度的原因,不过产生“鬼影”了,我是不是需要接一个10K的电位器???
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-5-25 05:47 , Processed in 0.200747 second(s), 34 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.