首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]MC9S08QE128 - 定时中断ADC采样

[求助]MC9S08QE128 - 定时中断ADC采样

大家好。我最近在使用Freescale的MC9S08QE128做传感器信号采集的应用,但是遇到一些问题,希望大家能帮忙看看分析一下原因,帮我解决这个问题。先谢谢啦!

使用的MCU是MC9S08QE128,基本应用是采用MCU上的ADC采集9路传感器信号,并存储数据到SD卡上。信号采样频率固定为30Hz,通过定时中断来实现的。程序基本流程如下:

系统初始化以后,等待定时中断。每隔33.3ms(对应30Hz),系统进入定时中断。为了保障一个固定的采样频率,中断不会关闭。在定时中断内,采用查询的方式用ADC采样9路信号,每路信号的数据会暂时保存在一个全局变量的数组里面。在主程序会查询这个全局数组是否存满。如果存满,则将数组中数据存入到SD卡(SD driver的程序是问Freescale要的)。在存储的过程中,定时中断也不会关闭,为了保证恒定的采样率。

问题是大约经过5分钟左右的时间,系统程序会跑飞。在debug模式下查看,发现所有的寄存器控制字都变化。个人感觉是RAM溢出,但是我增加了stack size,也无法解决问题。所以求助大家的帮忙,谢谢!

如果有人有时间来分析我的程序,我可以上载上来。再次感谢!
有人知道怎样解决这个问题吗?多谢啦!
返回列表