zoukankan      html  css  js  c++  java
  • 2812需要注意的几点

    如何提高F2812 AD的转换精度
    采用软件补偿,参考文档spra989a。

    程序经常跑飞
    程序没有结尾或不是循环的程序。
    nmi管脚没有上拉。
    在看门狗动作的时候程序会经常跑飞。
    程序编制不当也会引起程序跑飞。
    硬件系统有问题。
    程序访问了非法的地址。

    用示波器观测的时候程序跑飞
    示波器的探头接地不好,探头上的电位可能会比较高,接到信号线上产生干扰会跑飞。

    大程序有时运行异常,但加一两条空指令就正常,是何原因
    由于TMS320C采用了多级的流水线操作,因此流水线冲突是不可避免的,解决办法为在适合的问题插入1到多条NOP指令。
    参考Ti的相关文档了解详细信息

    C语言中如何从指定的地址读写数据
    #define ADDR1 (unsigned int *)0x300000
    #define ADDR2 (unsigned int *)0x300004
    *ADDR1 = 0x05;//write
    x = *ADDR2;//read

    调试TMS320C2000系列的常见问题?

    1)单步可以运行,连续运行时总回0地址: Watchdog没有关,连续运行复位DSP回到0地址。
    2)OUT文件不能load到片内flash中: Flash不是RAM,不能用简单的写指令写入,需要专门的程序写入。CCS和C Source Debugger中的load命令,不能对flash写入。 OUT文件只能load到片内RAM,或片外RAM中。
    3)在flash中如何加入断点: 在flash中可以用单步调试,也可以用硬件断点的方法在flash中加入断点,软件断点是不能加在ROM中的。硬件断点,设置存储器的地址,当访问该地址时产生中断。
    4)中断向量: C2000的中断向量不可重定位,因此中断向量必须放在0地址开始的flash内。在调试系统时,代码放在RAM中,中断向量也必须放在flash内


    DSP系统构成的常用芯片有哪些?

    1)电源: TPS73HD3xx,TPS7333,TPS56100,PT64xx...
    2)Flash: AM29F400,AM29LV400...
    3)SRAM: CY7C1021,CY7C1009,CY7C1049...
    4)FIFO: CY7C425,CY7C42x5...
    5)Dual port: CY7C136,CY7C133,CY7C1342...
    6)SBSRAM: CY7C1329,CY7C1339...
    7)SDRAM: HY57V651620BTC...
    8)CPLD: CY37000系列,CY38000系列,CY39000系列... 9)PCI: PCI2040,CY7C09449...
    10)USB: AN21xx,CY7C68xxx...

    DSP为什么要初始化?

    DSP在RESET后,许多的寄存器的初值一般同用户的要求不一致,例如:等待寄存器,SP,中断定位寄存器等,需要通过初始化程序设置为用户要求的数值。 初始化程序的主要作用:
    1)设置寄存器初值。
    2)建立中断向量表。
    3)外围部件初始化

    如何判断DSP能正常的工作。

    最简单的办法是测量它的clkout脚输出是否正常。


    有源晶振与晶体的区别,应用范围及用法

    1)晶体需要用DSP片内的振荡器,在datasheet上有建议的连接方法。晶体没有电压的问题,可以适应于任何DSP,建议用晶体。
    2)有源晶振不需要DSP的内部振荡器,信号比较稳定。有源晶振用法:一脚悬空,二脚接地,三脚接输出,四脚接电压。

    DSP系统中实现UART功能

    1,C2000系列DSP片内已集成有UART功能;
    2,用McBSP模拟实现UART功能
    3,外部扩展UART器件1)通过SPI总线扩展:MAX3100(Maxim公司)通过8位异步存储器接口扩展PC UART: 单通道;TL16C450/550/750(TI公司); 双通道:TL16C452/552/752(TI公司); 四通道:TL16C454/554/754(TI公司)


    为什么需要电平变换?

    1)DSP系统中难免存在5V/3.3V混合供电现象;
    2)I/O为3.3V供电的DSP,其输入信号电平不允许超过电源电压3.3V;
    3)5V器件输出信号高电平可达4.4V;
    4)长时间超常工作会损坏DSP器件;
    5)输出信号电平一般无需变换

    电平变换的方法

    1,总线收发器(Bus Transceiver):
    常用器件: SN74LVTH245A(8位)、SN74LVTH16245A(16位)
    特点:3.3V供电,需进行方向控制,延迟:3.5ns,驱动:-32/64mA,输入容限:5V
    应用:数据、地址和控制总线的驱动
    2,总线开关(Bus Switch)
    常用器件:SN74CBTD3384(10位)、SN74CBTD16210(20位)
    特点:5V供电,无需方向控制,延迟:0.25ns,驱动能力不增加
    应用:适用于信号方向灵活、且负载单一的应用,如McBSP等外设信号的电平变换
    3,2选1切换器(1 of 2 Multiplexer)
    常用器件:SN74CBT3257(4位)、SN74CBT16292(12位)
    特点:实现2选1,5V供电,无需方向控制,延迟:0.25ns,驱动能力不增加
    应用:适用于多路切换信号、且要进行电平变换的应用,如双路复用的McBSP
    4,CPLD
    3.3V供电,但输入容限为5V,并且延迟较大:>7ns,适用于少量的对延迟要求不高的输入信号
    5,电阻分压
    10KΩ和20KΩ串联分压,5V×20÷(10+20)≈3.3V


    时钟电路选择原则

    1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片;
    2,单一时钟信号时,选择晶体时钟电路;
    3,多个同频时钟信号时,选择晶振;
    4,尽量使用DSP片内的PLL,降低片外时钟频率,提高系统的稳定性;
    5,C6000、C5510、C5409A、C5416、C5420、C5421和C5441等DSP片内无振荡电路,不能用晶体时钟电路;
    6,VC5401、VC5402、VC5409和F281x等DSP时钟信号的电平为1.8V,建议采用晶体时钟电路

    一个完整的单DSP应用系统包括那些方面
    DSP芯片:DSPs的核心运算单元
    电源模块:给DSP以及外围元件提供电压和监控的功能模块
    时钟电路:给DSP提供CLK输入;驱动其他需要时钟的元件
    存储器:存储数据和程序(SRAM/SDRAM/SBSRAM/ZBTRAM/FLASH)
    输入输出模块:执行数据的传输(串口/USB/CAN/Ethernet/AD/DA)
    多处理器接口:多CPU协同工作的接口(HPI/PCI/双口RAM)

    如何开始调试一个DSP系统
    先不焊接器件,用万用表量电源和地看是否短路
    先焊电源部分,看电源输出是否正常
    焊晶振和复位电路、调试。焊接DSP并对其进行调试
    加RAM,调试
    加FLASH,调试

    DSPs的异步串口扩展
    LF2407/F2812:片内集成SCI通信接口
    SPI总线扩展:MAX3100
    MCBSP模拟扩展UART接口
    DSP端接口:EMIF(存储扩展接口)
    UART扩展芯片:TL16C750、TL16C752、TL16C754、SC28L91、SC28L92

    DSPs常见音视频扩展
    音频:
      DSP端接口:MCBSP(多通道缓冲串口)MCASP(多通道音频串口)
      编解码芯片:AIC23、AIC13、PCM180X、PCM1851…
    视频:
      DSP端接口:VideoPort(DM64X、Davinci),利用CPLD做扩展视频物理连接口(其他)
      编解码芯片:TVP5150、TVP5154、SAA7111、SAA7113、SAA7121、SAA7105

    DSP系统如何消除信号干扰、静电干扰等问题
    消除干扰:模拟和数字分开,多层板,电容滤波。
    静电干扰:一般情况下,机壳接大地,即能满足要求。特殊情况下,电源输入、数字量输入串接专用的防静电器件。

    如何降低和克服PCB布线对模拟信号失真和串音的影响
    1)模拟信号与模拟信号之间的干扰:布线时模拟信号尽量走粗一些,如果有条件,2个模拟信号之间用地线间隔。(啥意思?)
    2)数字信号对模拟信号的干扰:数字信号尽量远离模拟信号,数字信号不能穿越模拟地。

    JTAG接头的设计
    DSP内部有EMU0/EMU1有弱上拉,如果走线过远则需要额外接10K~30K的电阻进行上拉。

  • 相关阅读:
    解决虚拟机中使用ntpdate报错:ntpdate[46700]: no server suitable for synchronization found
    Hive的三种安装方式(内嵌模式,本地模式远程模式)
    攻城狮在路上(陆)-- 提交运行MapReduce程序到hadoop集群运行
    攻城狮在路上(陆)-- 配置hadoop本地windows运行MapReduce程序环境
    攻城狮在路上(陆)-- hadoop分布式环境搭建(HA模式)
    攻城狮在路上(陆)-- hadoop单机环境搭建(一)
    Linux下Keepalived+LVS-DR模式配置高可用负载均衡集群
    Git版本控制管理学习笔记5-提交
    Git版本控制管理学习笔记4-文件管理和索引
    Git版本控制管理学习笔记3-基本的Git概念
  • 原文地址:https://www.cnblogs.com/fpga/p/1619455.html
Copyright © 2011-2022 走看看