我其实一直都不太理解单片机的软件的操作速度。
找嵌入式软件的兄弟帮忙在这个帖子里面,我初步做了一个方案,现在问题一大堆,根本出不来。在这里,我把我这两天焦头烂额的考虑都整理出来。
按照TCD2901的要求,有好几个信号
SH信号,采集使能信号
时钟信号φ1和φ2为每个小的单元的积分和采集总的时间,按照上面的要求最低150K,最高2.5MHZ,6.6us~0.25us的转换时间
RS:RESET信号
CP:钳位信号
事实证明,靠ARM的软件模拟来产生这个时序是不可能完成的任务。
最严峻的挑战还在于AD的时序,当初打算是采用AD9822
6.6us~0.25us这段时间内,AD9822的由于只有内一个AD,因此,需要在这段时间内完成三个信号的采集,也就是3倍频率,450KHZ~7.5MHZ。
前面的计划有点想当然的,不过后续一定要仔细查找一下资料,总线频率与IO口操作速度的关系。
现在的问题也很尖锐:
典型值的转换速度为500KHz,2us内,ARM需要读取6次并口,我实在是不知道它到底能不能到这样的程度(以ADC的上升沿为标志,需要连续读两次)
总结一下,几乎所有的问题,就是在于速度不够快,而且TCD2901属于那种速度较慢的,而且还是线CCD了。
因此我有两个预案
1.采用EPM7064给CCD和AD做时序
2.采用EPM7064做CCD和AD时序,并使用一个存储器做一个FIFO
注意一般EPM7064(44)可用的IO口只有28个
目前正在思考完善中
用户1834451 2015-11-25 17:34
用户305449 2011-3-17 10:51
用户303918 2011-3-16 11:23
用户1584993 2011-3-16 09:20
用户1515086 2010-5-25 13:03
用户235812 2010-5-17 19:14
用户1021297 2010-5-17 12:11
用户1021297 2010-5-17 12:09
daishangju_162733976 2010-5-17 12:03
用户235812 2010-5-16 11:43