打印

单片机问题

[复制链接]
815|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sinadz|  楼主 | 2012-2-12 17:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题描述:

一个数字信号通过8个独立的信道向单片机传输。

单片机内有个一个独立运行的分辨率很高的定时器可以利用。

当每个信号改变时,系统都会记下当前的时间。

每个输入信号的改变时,都会触发中断

8个输入信号的状态可以通过一个寄存器读取出来

在中断中,需要记录输入信号的状态以及当前的时刻到一个数据中。 这个数据的赋予通过一个任务来给出。

在这个任务中,每个输入的信号都应该保持成一个队列。 由数据可得知的状态改变和改变时间信息可以记录到这个队列当中。记录所花费的时间应该保持常数。


以上是问题的描述,需要一个解决的办法。 我的目前理解是否是这个信号接着8个I/O口,当有信号从0变成1或者从1变成0的时候,就触发I/O中断,记下定时器当前的时间和当前I/O口的状态。然后把它储存在一个数据结构中。  
中断任务中的队列应该怎么处理?压栈还是? 后面一句记录所花费的时间保持常数是什么意思?

相关帖子

沙发
hsbjb| | 2012-2-12 17:36 | 只看该作者
记录所花费的时间为常数即为中断开始的时间与中断功能程序执行结束时的系统时间之差应该为一个人常数,具体这样要求有什么用,还得看具体要求了

使用特权

评论回复
板凳
火箭球迷| | 2012-2-12 20:48 | 只看该作者
应该要用计数器和串口通信

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

304

主题

2313

帖子

0

粉丝