1.硬件调试
F28335 工作在频率150 MHz 时需要1.9 V 的内核电压和3.3 V 的I/O 电压,因此在调试时需要注意电压的波纹,防止DSP 芯片因电源输出的不稳定造成芯片的烧坏。
对于F28335,如果内核先于I/O 口模块上电,则I/O 不会出现不稳定的未知状态;反之,I/O 口模块先于内核上电则会使输出引脚产生不确定的状态,从而对整个系统造成影响。本设计中采用了电源管理芯片TPS76HD301,该电源芯片可以控制上电顺序。因此直接测量电源管理芯片输出电压来确定上电顺序是否符合要求。
对于ADS8556,其上参考电压对AD 转换结果产生很大影响,因此在系统工作过程中要严格控制51 号引脚电压是否为2.5 V,若误差较大时则需考虑采用软件的方式对AD 采样数据进行校正。
系统中采用MAX660 实现5 V 转-5 V,实现对双电源运放、仪表放大器等的供电。而在实际测试中无论采取何种措施(调整钽电容阻值,并联多个)均无法达到-5 V,因此在放大电路时需要考虑此电压的影响。
对于复位电路的调试主要是观测XRS 引脚、XCLKOUT 等的信号特征是否和依据F28335的复位时序图一致。由于在设计阶段设计了复位按钮,因此复位功能的验证通过触发复位按钮来检验。
本设计中采用了外部晶振,外部晶振在通电后正常起振是整个系统正常工作的第一步。因此在系统上电后,用示波器的探针观看晶振是否起振是必不可少的环节。有时晶振起振,但系统依然无法正常工作,这就需要检查负载电容。
2.软件调试
为便于软硬件联调,采用模块化思想在软件调试阶段编写以下程序:
(1)LED 点灯程序:主要是保证整个系统的最小电路系统正常工作。
(2)PWM 波产生程序:本设计中的ADC 转换基准时钟由F28335 产生的PWM 波提供,因此在调试ADC 时先看F28335 产生的PWM 波是否满足要求。
(3)读取ID 号的程序:为了检验W25Q32(串行FLASH)是否正常工作,最简单的方式是先读取ID 号,看是否与数据手册中的一致。
(4)串口发送数据程序:通过串口发送简单的字符串“Hello ADS8556”,通过观察串口调试助手屏幕显示字符来检验。(www.xing528.com)
(5)SRAM 读写程序:向SRAM 指定区域写入数据,再将数据转移至指定数组中并通过串口发送至弹载数据处理与分析软件,观察现象确定SRAM 读写是否正常。
(6)ADS8556 采样程序:用来测试ADS8556 能否正常启动进行采样。
(7)CD4515 译码器驱动程序:主要用来测试译码器是否正常工作。
(8)X9CXXX 驱动程序:驱动数字电位器从而改变其阻值。
3.软硬件联调
(1)PWM 波:F28335 产生的PWM 波为ADS8556 提供基准转换时钟,当PWM 波频率为20 MHz 时,ADS8556 可达到最高采样率。在调试阶段分别产生了15 MHz、16 MHz、17 MHz、18 MHz、19 MHz 和20 MHz 的波。发现当F28335 最高只能产生18 MHz 的PWM波,即理论上最高采样率可达720 ksps。当F28335 产生20 MHz 的PWM 波时,波形发生畸变。因此为了使ADS8556 达到最高采样率,需要外接20 MHz 的有源晶振。
(2)ADS8556 驱动验证:将编写的ADS8556 测试程序烧写至弹载三轴存储测试装置,通过四通道示波器观察CS、Convst_x、Busy 和RD 引脚的信号。经观察比较,与ADS8556的数据手册中读时序图一致,ADS8556 可以正常工作。
(3)SRAM 读写验证:运用三种方法对SRAM 读写进行验证。
①SRAM 中所有单元写入0x0000;
②SRAM 中单元按地址依次写入0x0001;
③将SRAM 中的数据通过串口读到串口调试助手软件界面进行显示。
(4)FLASH 读取ID 验证:对于选用的串行FLASH 存储器W25Q32,都有一个ID 号(0xEF14),无论进行调试还是使用阶段,都先通过读取ID 号来判断其是否工作正常,绿色标注为读取存储器ID 的结果。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。