=采样速率×(2×厚度×8/超声波速度)

=100×2×0.01×8/5 900

=2 712次

即需要将近3 KB的缓存。该超声波测厚系统最大需测量厚度50 mm的物体,故需要容量15 K×8 B的FIFO。因此FIFO的深度要大于15 KB;宽度大于A/D的位数,即大于8位;最大工作速率100 MHz,与A/D采样速率相一致。该设计选用CY公司的FIFO存储器CY7C4261,其最大采样速率达100 MHz,与AD9283最大采样速率相同;容量为16 KB×9 B,可以满足数据量要求。

2 接口设计

AD9283是8位模/数转换器,CY7C4261是9位FIFO,S3C2410的数据总线是32位。CY7C4261只需接S3C2410的低8位DO~D7。由于FIFO的先入先出结构,系统中不需要任何地址线的参与,大大简化了电路。A/D采样所得数据要实时送入FIFO,两者的写时钟频率必须一样,且AD9283和CY7C4261的最小时钟输入都是10 ns,操作起来统一方便。74ALS08是四-二输入与门,把ARM的脉宽调制波输出口中的TOUTl(GPBl),TOUT2(GPB2)配置为通用输出口,对74ALS08的通断进行控制,从而对A/D和FIFO的写时钟进行控制。S3C2410的CLKOUTO与CY7C4261的RCLK相连为FIFO提供读时钟。CY7C4261的全满标志位FF与S3C2410的外部中断EINTl相连用以触发外部中断。S3C2410的nRSTOUTl与CY7C4261的RS相连用以复位FIFO。接口框图如图1所示。

基于FIFO存储器实现高速AD转换器与ARM处理器的接口设计

3 时序设计

通过两个与门分别对A/D和FIFO的写时钟进行控制。因为AD9283从模拟输入开始到该次转换的数据出现在输出口上需要4个时钟周期,并且在高速度采样时导线的延时效果会非常明显,若把A/D和FIFO的时钟连在一起,很可能过多地采到无效数据。分开控制以后,通过软件延时,可以方便地分别对A/D和FIFO的时钟进行控制。调试起来相当方便,力图把采到无效数据的位数减至最低。AD9283的工作时序如图2所示,CY7C4621写时序图如图3所示。

基于FIFO存储器实现高速AD转换器与ARM处理器的接口设计

采样时。通过程序使能TOUTl,TOUT2输出为1。此时采样时钟脉冲与TOUTl,TOUT2相与后被分别送入AD9283的时钟输入ENCODE和CY7C4621的写时钟输入WCLK。此时A/D开始工作,A/D将转换数据送至自己的输出口D0~D7。当写使能WEN1为低、WEN2为高的时候,A/D输出口上的数据在WCLK的上升沿被依次写入FIFO。A/D和FIFO每来一次脉冲,便完成一次模/数转换并把数据顺序存入FIFO。CY7C4261的数据最大储存容量是16 KB,在完成了1 6 KB次转换之后,CY7C426l将不能再存入新的数据,此时存储器满标志FF输出低电平(在未满时输出高电平)。把此信号接到S3C2410的外部中断EINTl上,利用它由高到低的变化产生中断,以表明一组数据采集完成。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查