论文部分内容阅读
[摘 要]本文介绍了一种基于定点DSP芯片TMS320VC5509A、CPLD(EPM240T100C5)及线阵CCD图像传感器TCD1501D的物体外形尺寸测量系统,详细描述了系统的原理框图、硬件选型、硬件设计,软件设计,调试方法等,最后给出了几组测量数据来说明系统的精度。
[关键词]DSP;CCD;CPLD;尺寸测量
中图分类号:TP274.2 文献标识码:A 文章编号:1009-914X(2017)31-0367-01
1、引言
常见的尺寸测量系统多采用PC机、线阵CCD相机、数据采集卡以及基于PC机的软件平台来实现,但很难满足当前对系统体积、功耗等方面的要求。因此本文提出了一种基于DSP和CPLD平台的测量系统,充分发挥CPLD的时序性好、灵活性强和DSP运算速度快、寻址方式灵活的优点。
1.1 技术参数
①CCD像元尺寸:7um;②CCD像元个数:5000;③AD精度:8位;④工作电压:~220V±15% 50--60Hz;⑤工作温度:-10~40℃;⑥环境湿度:<85%RH;⑦工作方式:连续
1.2 原理
远心照明光源以透射的方式将被测物的像投到CCD的靶面上,而CPLD则将CCD的模拟信号经A/D转换后送入DSP的内存,由DSP进行数据处理并将结果通过液晶显示和串口进行输出另外DSP还外接一块4*4矩阵键盘来响应用户输入的参数如设置CCD的积分时间、驱动频率、修正结果等并能将参数保存到外接的EEPROM内供下次运行时使用。
2、硬件选型与设计
2.1 器件选型
DSP选用TI公司的TMS320VC5509A,它是TI公司一款16位定点低功耗的DSP芯片,主频最高可达200 MHz,片上资源丰富,带有128 K×16 bit RAM和32 K×16 bit ROM,1个I2C接口,其外部存储器接口(EMIF)能与SRAM无缝连接,被广泛用于嵌入式手持设备、通信、数据采集等领域。
CPLD选用Altera公司MAX Ⅱ器件系列核心器件EPM240T100C5,采用新的查表(LUT)体系,采用TSMC的0.18μm嵌入Flash工艺,使其裸片尺寸仅为同样工艺器件的1/4。
在系统中CPLD负责时钟脉冲的产生、地址的生成功能,通过它可以扩展出更多的IO口以控制液晶和矩阵键盘,还可以控制SC16C550芯片完成串口传输功能。
传感器选用东芝公司的TCD1501D,它是一种高灵敏度、低暗电流、5000像元的线阵CCD图像传感器,每个像敏单元是0.7um保证了系统的测量精度,5000像元满足了系统的测量范围。
液晶选用JHD162A,它是一款16*2字符型液晶显示器。通过CPLD扩展DSP的总线来完成对其的控制,DSP首先将指令代码写入指令缓冲器,随后将该指令所需参数按顺序通过数据线输入缓冲器并最终写入相应的功能寄存器。
矩阵键盘控制器选用CH452DS1,其高速的4線串行接口可与DSP的IO口进行快速的数据交换,通过按键可以产生DSP中断,在中断程序里可读取相应的按键代码,其内置去抖电路保证了对按键的正确响应。
2.2 采集控制原理详解
数据采集和控制部分主要由DSP,SRAM,CPLD等器件组成,其中SRAM是DSP通过EMIF接口扩展的一片外部存储器,线阵CCD输出的模拟信号经过AD转换后被送入SRAM里存储,在这过程中由CPLD产生AD转换的时钟和SRAM的地址信号。整个系统的核心处理器是DSP它负责控制整个系统的流程,在进行数据采集前它先发出启动AD转换的信号,然后就查询一行数据存满的状态,如果存满就读取一行的数据并进行相应的数据处理、结果显示等功能,在这一过程中DSP的CE、RD信号与CPLD的IO口连接,由CPLD产生DSP读SRAM数据的地址信号。另外DSP的IO口、外部中断输入端口分别和CH452对应的输入和输出信号相连,通过中断的方式来及时响应键盘的输入以接收阈值的设置、测量结果的调整等值输入。DSP还通过IIC接口连接了一片EEPROM来保存键盘输入的各种参数值。
3、软件设计
软件的开发使用TI公司高效的集成开发工具Code Composer Studio3.3,采用C语言设计代码,硬件仿真器使用Study 2.0 USB增强版仿真器。软件流程图如图1所示,程序先对DSP进行初始化,配置DSP的锁相环、堆栈寄存器、中断寄存器和DSP状态寄存器,键盘控制和液晶显示控制的初始化代码。由于在硬件设计中SRAM被接到了CE2空间,其字地址是从0x400000开始,所以在程序中定义了一个指针指向CE2空间的首地址,在DSP和CPLD的共同作用下对CE2空间的读取就对应是SRAM空间的数据。在变量定义及初始化完成后,DSP首先通过一个IO口发送启动AD转换的命令,然后就查询另一个IO口的状态等待AD转换完成,如果转换完成就读取SRAM中的数据并进行二值化处理。
在调试阶段,通过在下面的数据读取代码处设置断点来观察CE2空间的内存情况,还有一种方法就是将DSP采集的数据通过RS232串口输出,在上位机中用VC开发串口数据接收然后显示曲线的程序,这样可以更直观地观察DSP采集CCD数据的正确性,通过观察曲线还可方便调节镜头的焦距(图1)。
GPIO_FSET(IODATA,IO3D,1); //IO口设置
souraddr = (int *)0x400000; //数据读取
for(i=0;i<5000;i++)
databuffer[i] = *souraddr&0xFF;
I2C_Setup I2Cinit = {0x0, 0x0000, 144, 100, 0, 1, 1 }; //设置IIC
4、测量结果(表1)
5、 结论
本文所提出的基于DSP和CPLD的线阵CCD尺寸测量系统的设计方案是可行的,通过实际测量能实现DSP对CCD数据的采集以及相应的数据处理、结果输出等功能。
参考文献
[1] 张雄伟,陈亮,徐光辉. DSP芯片的原理与开发应用. 电子工业出版社,2003
[2] 邹彦,唐冬,宁志刚. DSP原理与应用. 电子工业出版社,2005
[3] 黄霞,鲍慧,赵伟,田新成. 基于TMS320VC5509A的多路同步数据采集与存储系统. 继电器,2007
[4] TMS320C55x Chip Support Library API Reference Guide (Rev. J). Texas Instrument Incorporated,2001.
[关键词]DSP;CCD;CPLD;尺寸测量
中图分类号:TP274.2 文献标识码:A 文章编号:1009-914X(2017)31-0367-01
1、引言
常见的尺寸测量系统多采用PC机、线阵CCD相机、数据采集卡以及基于PC机的软件平台来实现,但很难满足当前对系统体积、功耗等方面的要求。因此本文提出了一种基于DSP和CPLD平台的测量系统,充分发挥CPLD的时序性好、灵活性强和DSP运算速度快、寻址方式灵活的优点。
1.1 技术参数
①CCD像元尺寸:7um;②CCD像元个数:5000;③AD精度:8位;④工作电压:~220V±15% 50--60Hz;⑤工作温度:-10~40℃;⑥环境湿度:<85%RH;⑦工作方式:连续
1.2 原理
远心照明光源以透射的方式将被测物的像投到CCD的靶面上,而CPLD则将CCD的模拟信号经A/D转换后送入DSP的内存,由DSP进行数据处理并将结果通过液晶显示和串口进行输出另外DSP还外接一块4*4矩阵键盘来响应用户输入的参数如设置CCD的积分时间、驱动频率、修正结果等并能将参数保存到外接的EEPROM内供下次运行时使用。
2、硬件选型与设计
2.1 器件选型
DSP选用TI公司的TMS320VC5509A,它是TI公司一款16位定点低功耗的DSP芯片,主频最高可达200 MHz,片上资源丰富,带有128 K×16 bit RAM和32 K×16 bit ROM,1个I2C接口,其外部存储器接口(EMIF)能与SRAM无缝连接,被广泛用于嵌入式手持设备、通信、数据采集等领域。
CPLD选用Altera公司MAX Ⅱ器件系列核心器件EPM240T100C5,采用新的查表(LUT)体系,采用TSMC的0.18μm嵌入Flash工艺,使其裸片尺寸仅为同样工艺器件的1/4。
在系统中CPLD负责时钟脉冲的产生、地址的生成功能,通过它可以扩展出更多的IO口以控制液晶和矩阵键盘,还可以控制SC16C550芯片完成串口传输功能。
传感器选用东芝公司的TCD1501D,它是一种高灵敏度、低暗电流、5000像元的线阵CCD图像传感器,每个像敏单元是0.7um保证了系统的测量精度,5000像元满足了系统的测量范围。
液晶选用JHD162A,它是一款16*2字符型液晶显示器。通过CPLD扩展DSP的总线来完成对其的控制,DSP首先将指令代码写入指令缓冲器,随后将该指令所需参数按顺序通过数据线输入缓冲器并最终写入相应的功能寄存器。
矩阵键盘控制器选用CH452DS1,其高速的4線串行接口可与DSP的IO口进行快速的数据交换,通过按键可以产生DSP中断,在中断程序里可读取相应的按键代码,其内置去抖电路保证了对按键的正确响应。
2.2 采集控制原理详解
数据采集和控制部分主要由DSP,SRAM,CPLD等器件组成,其中SRAM是DSP通过EMIF接口扩展的一片外部存储器,线阵CCD输出的模拟信号经过AD转换后被送入SRAM里存储,在这过程中由CPLD产生AD转换的时钟和SRAM的地址信号。整个系统的核心处理器是DSP它负责控制整个系统的流程,在进行数据采集前它先发出启动AD转换的信号,然后就查询一行数据存满的状态,如果存满就读取一行的数据并进行相应的数据处理、结果显示等功能,在这一过程中DSP的CE、RD信号与CPLD的IO口连接,由CPLD产生DSP读SRAM数据的地址信号。另外DSP的IO口、外部中断输入端口分别和CH452对应的输入和输出信号相连,通过中断的方式来及时响应键盘的输入以接收阈值的设置、测量结果的调整等值输入。DSP还通过IIC接口连接了一片EEPROM来保存键盘输入的各种参数值。
3、软件设计
软件的开发使用TI公司高效的集成开发工具Code Composer Studio3.3,采用C语言设计代码,硬件仿真器使用Study 2.0 USB增强版仿真器。软件流程图如图1所示,程序先对DSP进行初始化,配置DSP的锁相环、堆栈寄存器、中断寄存器和DSP状态寄存器,键盘控制和液晶显示控制的初始化代码。由于在硬件设计中SRAM被接到了CE2空间,其字地址是从0x400000开始,所以在程序中定义了一个指针指向CE2空间的首地址,在DSP和CPLD的共同作用下对CE2空间的读取就对应是SRAM空间的数据。在变量定义及初始化完成后,DSP首先通过一个IO口发送启动AD转换的命令,然后就查询另一个IO口的状态等待AD转换完成,如果转换完成就读取SRAM中的数据并进行二值化处理。
在调试阶段,通过在下面的数据读取代码处设置断点来观察CE2空间的内存情况,还有一种方法就是将DSP采集的数据通过RS232串口输出,在上位机中用VC开发串口数据接收然后显示曲线的程序,这样可以更直观地观察DSP采集CCD数据的正确性,通过观察曲线还可方便调节镜头的焦距(图1)。
GPIO_FSET(IODATA,IO3D,1); //IO口设置
souraddr = (int *)0x400000; //数据读取
for(i=0;i<5000;i++)
databuffer[i] = *souraddr&0xFF;
I2C_Setup I2Cinit = {0x0, 0x0000, 144, 100, 0, 1, 1 }; //设置IIC
4、测量结果(表1)
5、 结论
本文所提出的基于DSP和CPLD的线阵CCD尺寸测量系统的设计方案是可行的,通过实际测量能实现DSP对CCD数据的采集以及相应的数据处理、结果输出等功能。
参考文献
[1] 张雄伟,陈亮,徐光辉. DSP芯片的原理与开发应用. 电子工业出版社,2003
[2] 邹彦,唐冬,宁志刚. DSP原理与应用. 电子工业出版社,2005
[3] 黄霞,鲍慧,赵伟,田新成. 基于TMS320VC5509A的多路同步数据采集与存储系统. 继电器,2007
[4] TMS320C55x Chip Support Library API Reference Guide (Rev. J). Texas Instrument Incorporated,2001.