DSP与CAN总线的测速和远程传送一体化

发布者:RadiantSmile最新更新时间:2006-06-28 来源: 单片机及嵌入式系统应用关键字:寄存器  捕获  控制器 手机看文章 扫描二维码
随时随地手机看文章

  速度测量是控制工程的基本问题之一。在许多情况下,测速信号需要远距离传送。实现这个问题的一个主要方法是使用SoC(片上系统)芯片。它所带的丰富外设改变了关于硬件和软件的观念。搭建硬件系统变为对硬件结构的理解掌握,软件的编程也从算法编制为主变为部件设置为主,具有简捷、完整的特点,体现了芯片的技术优势。SoC类的TMS320LF2407DSP芯片在测速和远程传送应用中的简捷一体化设计也体现了这一点。

  1 相关系统结构

  TMS320LF2407所带有的事件管理器和CAN控制器模块为测速和远程传送提供了便利。 TMS320LF2407有2个事件管理器EVA和EVB,各有3个捕获单元。对应6个捕获输入引脚CAPX(对EVA,X=1,2,3;对EVB,X=4,5,6)。6个捕获输入引脚分别与QEPl/IOPA3、QEP2/IOPA4、IOPA5、QEP3/IOPE37、QEP4/IOPFO和IOPFl 共用。当捕获输入引脚CAPX上检测到所选的跳变时,所选的GP定时器的计数值被捕获并存入到一个2级深的FIFO堆栈中。

  TMS320LF2407的CAN控制器模块包括有邮箱和相应的控制/状态寄存器。共有6个邮箱:2个接收邮箱(MBOX0、1),2个发送邮箱(MBOX4、5),2个可配置为接收或发送邮箱(MBOX2、3)。TM$320LF2407的CAN控制器模块完全支持CAN2.0B协议。

  通常情况下,测速传感器系统输出的是数字测速脉冲信号。因此,可把这个加到TMS320LF2407DSP芯片捕获引脚上。利用TMS320LF2407芯片的捕获单元测量输入脉冲的周期,再由内置的CAN总线控制器单元发出CAN周期信号,实现测速和远程传送一体化。

  2 系统配置

  2.1 捕获单元及相应定时器的配置


  TM$320LF2407捕获单元的工作原理是:以输入脉冲上升沿、下降沿或上升沿下降沿为界,由相应的定时器计数来度量周期,计数值被捕获送入相应的一个2级深的捕获堆栈FIF0中。因此,涉及到捕获和定时器两部分的配置操作。需要配置的捕获操作有:在I/O口复用控制寄存器MCRx(x=A、B或c)中把相应引脚配置为捕获输入;在捕获控制寄存器CAPCONA/B中选择(使能)捕获单元、选择(使能)相应的定时器和边沿选择(上升沿、下降沿或上升沿下降沿);在中断标志寄存器EVA/BIFRX和中断屏蔽寄存器EVA/BIMRX中设置中断控制情况。需要配置定时器的操作有:对单个通用定时器TXCNT清零;在全局通用定时器控制寄存器GPTCONA/B中设置相应定时器的操作及计数方向;在单个通用定时器周期控制寄存器TXPR中设置比较周期;在单个通用定时器控制寄存器TXCON中设置计数操作模式。

  周期控制寄存器TXPR中设置的比较周期应大于输入脉冲信号的周期。在不知道输入脉冲信号周期的情况下,应设置为最大值。当度量周期超过最大捕获时间时,用定时器溢出的方法再加软件计数解决。

  2.2 捕获周期的取出和传送

  存放于捕获堆栈FIFO的捕获周期的取出有中断和查询两种方法。捕获单元所在的事件管理器的中断延时时间为20个CPu周期(典型),或25个CPU周期(最小保护),或8个cPU周期(单个中断),或l6个CPU周期(不考虑存储器空间)。在具体设计中,中断延时时间被设为某一定值。在通常中断处理程序很短的情况下,中断时间主要由中断延时时间决定。为了系统的扩展,即使是单个外设,也还是以采用中断方法为宜,而不是查询方法。

  2.3 CAN控制器模块和位定时器配置

  CAN控制器模块的配置包括初始化邮箱、位定时器设置和数据收发。有关内容参见文献[1]。这里介绍一下位定时器的设置。

  位定时器的设置决定总线传输信号的波特率,是CAN控制器模块的核心配置问题。TMS320LF2407有两个位控制寄存器BCRl和BCR2。它们必须在CAN控制器处于复位模式下(即CCR=1)才能被配置。位控制寄存器BCR2包括波特率预分频位BRP[7-0],用来确定CAN控制器的时间片TQ,作为位控制的基准时间。位控制寄存器BCR2包括同步跳转宽度选择位SJW[1-0]、采样次数选择位SAM[7]、包含传播延时时间段(PROG SEG)和相位延时时间段1(PHASE SEGl)的时间段1 TSEGl[3-0]、决定相位延时时间段2(PHASE SEG2)的时间段2 TSEG2[2-0]。

  3 设计实例

  本例的基本设置是选定捕获单元4(CAP4)对输入脉冲宽度进行捕获,事件管理器EVB的通用定时器3对脉冲进行计数。捕获计数值从FIFO堆栈取出送到临时寄存器CAP4TEMP,以便于扩展。再从CAP4TEMP送到3号邮箱经CANTX/IOPC6和CANRX/IOPC7发送,如图1所示。



  3.1 捕获单元为中断方式而CAN控制器为查询方式

  首先进行系统初始化,包括关中断、清标志位、系统时钟20MHz使能包含有捕获单元的第4级中断INT4,再进行捕获单元初始化和CAN控制器初始化。有关内容前已叙述。由于捕获单元处于中断方式,从捕获堆栈FIFO的取捕获周期值的操作在捕获单元的中断处理程序中进行;而CAN控制器处于查询方式,要在主程序中循环检查捕获标志。确认捕获后,从暂存寄存器CAP4TEMP中取出捕获周期值送到邮箱3。值得一提的是,由于捕获周期值为1 6位数据,故需要传送的数据是2字节。因此发送控制器MSGCTRL3的DL=2。这种情况的程序流程如图2所示。


       


  3.2捕获单元中断处理包括CAN控制器的信息发送

  如前所述,当CAN控制器处于查询方式时,CAN控制器的操作程序很复杂,又位于主程序,不利于主程序的扩展和外设的增加;因此可以把CAN控制器信息发送设置于捕获单元中断处理中,使主程序变得十分简单。在这种情况下,捕获单元中断处理程序同时包括捕获周期取出和CAN信息发送。由于减少了判断和循环,CAN信息发送变得简单。捕获单元中断处理程序如下:

CAP4_ISR
LDP #DP EVB
LACL CAP4FIFO          ;取捕获堆栈值
LDP DP_USER
SACL CAP4TEMP          ;捕获值送入临时寄存器
LDP #DP EVB
SPLK #0,T3CNT         ;清T3计数值,使其重新计数
LDP #DP_CAN
SPLK #0000H,MDER       ;邮箱不使能
SPLK #0100H,MCR        ;CDR=I,数据改变请求
LDP #5
LACL CAP4TEMP         ;取捕获值
LDP #DP_CAN2
SACL MBX3A           ;把捕获值移入到邮箱3
LDP #DP_CAN
SPLK #0880H,MCR        ;DBO=1,CDR=0,ABO=1,STM=0
SPLK #08H,MDER        ;MD3=0,ME3=1,邮箱3发送使能
LDP #DP CAN
SPLK #0020H,TCR       ;邮箱3发送请求
W_TA3 LDP #DP_CAN
BIT TCR,2           ;邮箱3发送应答TA3(位13)=1
BCND W_TA3, NTC       ;等待发送应答
LDP #DP_CAN
SPLK #2000h, TCR        ;发送应答TA3写1复位
CLRC INTM            ;开中断
RET

  4 结论

  分析和设计表明,利用SoC芯片类的TMS320LF407特点,适当配置相应的单元,就会简捷、有效地实现速度更快的控制功能,体现了控制功能,体现了控制实现方法的必然发展趋势。调试应用说明,该方法正确、有效。

关键字:寄存器  捕获  控制器 引用地址:DSP与CAN总线的测速和远程传送一体化

上一篇:由AT89C51/55构成的温湿度自动监测系统
下一篇:基于超声波传感器的测距系统设计

推荐阅读最新更新时间:2024-03-30 22:03

使用DJ803的电机正反转控制器原理与故障维修
  传统的电动机正反转控制电路相当复杂,而功能却相当简单。笔者最近购买的一种多功能电动机正反转控制器,结构非常简单,而控制功能却相当强大。因此,笔者对其实物进行了剖析,并结合产品说明书整理出此文,供读者参考。      图1是专用控制芯片的到位开关、单键控制、保护时间设定的连接电路。      D1803集成电路具有8级保护时间,通过TIM0~TIM2三引脚进行设定。具体设置方法如附表所示。      图2是电机控制最基本的电路图,整个控制电路采用12V直流电源供电。       一、直流电机的正反转控制   图3是控制直流电机的继电器触点与电机的连接方法,适合6V~48V各种电压的直流电机。      1.正转、反转独立控制模式
[电源管理]
使用DJ803的电机正反转<font color='red'>控制器</font>原理与故障维修
移动机器人控制器,可靠稳定的硬件是基石 — 宽温设计
  导航控制器是移动机器人(AGV/AMR)最主要的核心部件,是整个车体的大脑,关系到车体的可靠稳定、性能指标和安全性。在导航控制器的各种性能中,除了硬件层面的防护等级、嵌入式层面、算法层面等基本的指标,还值得关注的是宽温的指标,那么宽温的指标是否是如今移动机器人(AGV/AMR)重要的指标,达到-40~80℃是否必要?   移动机器人(AGV/AMR)应用环境 移动机器人(AGV/AMR)现如今应用非常广泛,既有-40℃及以上的速冻冷库、深冷库场景,也有55~65℃及以上的塑料生产、橡胶、钢铁冶金场景,在这些温度较高或较低的应用环境下,控制器能否长期正常稳定的运行就显得十分的重要了。 中国的地理环境 中国是一个幅员
[机器人]
可编程微波炉控制器的设计
2.4 计数器counter的设计 根据设计要求,counter为减数计数器,其最大计时99:59。因此可以用3个十进制计数器和1个六进制计数器级联构成。计数器的工作与状态机的状态有关,当状态机处在复位状态、测试状态、停止状态、结束状态、档位状态都属于不工作状态,只有在计数状态时,才会工作。计数器如果进入了停止状态,会保留当前计数值,当再次按下开始键时,计数器由当前值开始计数。 4个计数器的计数使能端相连、置数使能端相连,实现同时计数和同时置数。第一个计数器的计数脉冲是从1 kHz输入的,第二个计数器的计数脉冲clk与第一个计数器的进位cn相连,第三个计数器的计数脉冲clk与第二个计数器的进位相连cn,第四个计数器的计
[工业控制]
可编程微波炉<font color='red'>控制器</font>的设计
LPC1788--TIMER匹配中断设置--寄存器操作
简单记录LPC1788定时器匹配中断设置--通过寄存器直接操作 #include timer_lpc1788.h #include uart_lpc1788.h void TIMER0_IRQHandler(void) //TIMER0中断函数 { if(((LPC_TIM0- IR) &(1 0))==(1 0)) //匹配中断发生 { UARTSendStr( CLOS\r\n ); } LPC_TIM0- IR |=(1 0);//清除匹配中断标志位 } void TIMER0_Init(uint32_t clk, uint32_t howtime) { LPC_SC- PCONP|=(1 1);
[单片机]
Diodes公司可调光LED控制器具有可驱动高达150W灯的高功率因数
Diodes 公司推出支持反激式和降压/升压拓扑的AL1663和AL1663R单级可调光LED控制器,通过初级端调节实现精确的恒流输出而无需光耦合器和次级控制电路。这些控制器的运作功率高达150W,并且具有多种调光选项,为LED背光、智能LED照明和通用可调光LED灯提供了高成本效益的通用驱动器产品。 具有谷值开关(valley-switching)控制的临界传导模式(BCM)运作带来了高效率和低EMI,进一步确保AL1663和AL1663R能够在通用输入电压条件下保持高功率因数和低总体谐波失真。使用初级端调节可以简化设计并降低总体BOM元件数目和成本。AL1663 和AL1663R还具有低启动电流和低运作电流特性,并且集
[电源管理]
Diodes公司可调光LED<font color='red'>控制器</font>具有可驱动高达150W灯的高功率因数
索喜科技开发车载远程显示应用的新一代图像显示控制器
先进的视觉影像SoC应用技术领导厂商Socionext Inc.(“索喜科技”或者“公司”)宣布:成功研发了第三代APIX总线系列高性能图像显示控制器产品“SC1701”。SC1701进一步增强图像处理功能,除了为先进的车载显示器提供4K高清图像、深色(Deep Color)处理外,还加入APIX 3技术,使其具有高带宽的数据上行通道,为日趋高涨的高分辨率画面需求及人机交互,如语音、手势、人脸、多点触控等应用提供支持。 SC1701 300bpp(bit per pixel)图形处理器、1路4K或2路Full HD(2K)显示接口,提高车载远端显示性能。SC1701内置TCON (Timing Controller)功能。
[汽车电子]
蔚来搭载国内首个全栈自研智能底盘域控制器ICC
由于传统燃油车的底盘是以满足基础驾驶体验为主,零部件独立控制,各自为政。开发过程中,高度依赖供应商开发支持,开发时间长,制约因素高,造成主机厂缺少底盘深层次功能集成开发能力,导致车辆仅满足实现基础驾驶体验扩展功能少且慢,驾驶体验相对单一。 智能电动汽车时代,底盘不再是纯粹的机械集成,软件的加入,让底盘开发垂直整合能力大幅提升,所有零部件融会贯通,提升整车动态性能边界。而底盘的电子化和智能化也会满足更丰富多样的用户个性化需求 为用户提供更多的交互性,更大的可能性。 智能底盘域控制器ICC,是中国首个全栈自研智能底盘域控制器。率先搭载于 蔚来ET7 ( 参数 | 询价 ) 上,在今年3月开始交付用户。结合自主集成开发的底盘硬件
[汽车电子]
蔚来搭载国内首个全栈自研智能底盘域<font color='red'>控制器</font>ICC
恩智浦半导体推出ARM Cortex-M3微控制器
恩智浦半导体近日推出 基于 ARM® Cortex™-M3 处理器 的业界最快速微控制器 LPC1700 系列。 LPC1700 系列微控制器在运行速度高达 100MHz 时,比目前市场上可供的其他 Cortex-M3 微控制器产品运行速度更快 28%-64% 。 LPC1700 系列的一流性能令其能够毫无瓶颈地同步操作高带宽通讯周边器件,例如 Ethernet 、 USB On-The-Go/Host/Device 以及 CAN 。 LPC1700 基于新的 Cortex-M3 R2 修订版内核, 增加高度集成的功率控制,包含一个独特的唤醒中断控制器( WIC : Wake-up Interrupt Con
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved