当前位置:首页 > 单片机 > 单片机
[导读]设计了一种CAN-USB转换器,实现了CAN总线与上位机的实时通信,完成了对CAN总线通信的实时信息采集。

摘要: 设计了一种CAN-USB转换器,实现了CAN总线与上位机的实时通信,完成了对CAN总线通信的实时信息采集。
关键词: USB;CAN总线;LPC2119

  引言

  ABS(防抱死刹车系统)ECU(电控单元)在研发过程中,为了实时确定其行车参数和控制参数,通常会使用标定技术,标定技术就是通过一定的命令对ECU上传和读取控制算法参数,以达到对其实时修改以寻求最优的技术。对于车载电控单元来说,其通常只有CAN总线通信接口,为了能实现上位机和ECU能直接进行通信,实现利用标定技术对ABS ECU 进行开发,我们设计了一款能实现CAN到USB的数据转换器。CAN通信协议是一种用于汽车内部测量与执行部件之间的数据通信协议。而USB具有即插即用的优点,并且有较高的通信速率,对于实现上位机和下位机的通信进行标定十分方便。我们设计的数据转换器采用了NXP公司的LPC2119 ARM7处理器,通过它成功地实现上位机和ECU的可靠通信和对下位机的标定。

  系统硬件设计

  LPC2119 ARM7处理器

  LPC2119是基于一个支持实时仿真和跟踪的16/32 ARM7 TDMI-S CPU 的微控制器,并带有128/256kB嵌入的高速Flash 存储器。128 位宽度的存储器接口和独特的加速结构使32 位代码能够在最大时钟速率下运行。

  USB转换芯片CH372

  CH372 是一个USB 总线的通用设备接口芯片,在本地端,CH372 具有8 位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到控制器的系统总线上; CH372 内置了USB 通讯中的底层协议,在内置固件模式下,CH372自动处理默认端点0 的所有事务。

  系统设计

  转换器直接使用USB的5V供电,使用了LM1117将5V电源转换成3.3V和1.8V以供ARM处理器及其外围模块使用,对于CAN控制器输出的逻辑电平用TJA1050转换成差分电平输出CH372的设计十分重要,外接电容用于CH372 内外部电源节点去耦。在LPC2119的各电压引脚分别接了0.01mf的电容进行滤波。在USB转换芯片的设计中,可选4.7kW电阻用于在电源断电后将电解电容中的电能及时释放掉,使VCC 及时下降到0V,确保在下次通电时CH372 能够可靠地上电复位。为使CH372 能够可靠复位,电源电压从0V 上升到5V 的上升时间应该少于100ms,所以电容的容量和电阻的阻值都不能太大。用15pF 的独石或高频瓷片电容作为CH372的时钟振荡电路的起振电容。

  系统硬件设计部分框图如图1。

图1   转换器框图

  系统软件设计

  系统程序主要包括CAN控制器驱动程序,USB控制芯片CH372驱动程序,数据读写缓冲区的设计,以及如何调用CAN和USB的读写函数使数据的通信更好的同步。

  CAN驱动程序

  根据LPC2119微处理器CAN 控制器的特性,将CAN 的驱动程序分为3 个层次:1.硬件抽象层:将CAN 控制器的硬件特性用数据类型进行抽象,并提供CAN 控制器硬件操作的接口。对物理层的寄存器和相应地址影射,定义了CAN 控制器寄存器的数据类型和对寄存器的操作方法。2.功能函数层:CAN 控制器各种功能的实现函数,该层的函数利用硬件抽象层中对寄存器操作的接口来访问CAN 控制器来实现各种CAN 控制器所能提供的功能。3.应用程序接口层:在该层中的主要提供给3 个函数,初始化CAN 控制器CANinit()、发送数据CANSendData()、接收数据CANRecieveData()。

  CH372驱动程序

  CH372 芯片在本地端提供了通用的被动并行接口。CH372 芯片的读写时序主要要求读写使能信号有一个2~10ms的持续时间,并且在a0=1时写入命令,a0=0时读写数据。在本设计中,用LPC2119的IO口来表示CH372的各信号,并需要严格按照其时序要求用软件模拟其读写时序,一个典型的写数据子函数如下:

  USBWriteData(uint32 Data)

  {

  ………………………

  IO0CLR=0x00000010; //a0=0,表示以下

  写入为数据

  IO0PIN=Data; //向数据端口写入数据

  IO0SET=0x00000020; //rd=1,读信号无效

  IO0CLR=0x00000040; //wr=0,写使能

  Delay8us(1); //延时8us,表示写信号

  有效宽度

  IO0SET=0x00000060;

  …………………………

  }

  在以上程序中,对各端口的操作先后代表了CH372的读写时序信号的先后,适当的延时表示有效的写/读选通脉冲WR/RD的宽度,其典型值为90到10000ns,我们选择25ms。同理可得写命令,读数据子函数:USBWriteCMD (uint32 CMD),USBReadData( )。调用以上子函数提供了发送和接收数据的函数: IRQ_CH372(void), UploadUSBData(unint32 Length,uint32 Data[])。

  环形缓冲区

  在本设计中,设计了两个环形缓冲区,分别存放USB及CAN的数据,使其能同步发送,一个典型的缓冲区数据结构如下:

  struct CANRecRinBuf

  {

  Uint32 CANBuf[MAX];

  Uint32 WritePtr;

  Uint32 ReadPtr;

  }

  数据元素是无符号32位整数,MAX为环形缓冲区最大长度,WritePtr为读指针,ReadPtr为写指针。读写指针初始化为WritePtr = ReadPtr =0。通过CAN控制器接受的数据存放在环形缓冲区CANRecRinBuf中,再读出数据从USB端输出,保证了数据通信的可靠性。

  上位机监控界面

  安装CH372的上位机驱动后,基于CH372的USB设备就可以被上位机识别了。调用CH372提供的动态连接库CH372.dll及其相应的LIB文件CH372.Lib和头文件CH372.h,以建立上位机的工序,调用CH372提供的库函数CH375OpenDevice()、CH375CloseDevice(),用于打开和关闭设备,调用CH375WriteData(); CH375ReadData()接收下位机通过CH372发送上来的数据,并根据CAN总线数据的格式将其封装成CAN格式的数据,提供对CAN数据的收发CANDownload(),CANUpload()。用C++设计相应的图形界面以实现和下位机的通信。

  结语

  在ABS ECU的研发项目中,我们使用了此转换器将ECU的CAN数据转换成USB数据和上位机通信,ECU上传需监控参数,上位机下传标定参数。其硬件上使用ARM7内核的LPC2119作为控制器,以及底层软件的设计确保了转换器在实际的ECU开发的CCP标定的工程中,在大量数据进行传输的过程中有较好的可靠性。

  参考文献:

  1. QinHeng Electronics.CH372 Datasheet[EB/OL].http://winchiphead.com/,2006

  2. Philips.LPC2119 Datasheet[EB/OL].http://www.zlgmcu.com/,2006

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭