Line应用功能解析(line的功能介绍)
本文目录
K- lin和L- line有什么区别
K-Lin和L-Line都是总线的一种,都可以通过这种总线实现单片机与电脑的连接,从而作为烧录程序、debug的方式之一。
1.信号线及信号
CAN总线以CAN一H和CAN一L两条信号线(双绞线)工作,舒适CAN总线两条线的电平分别约为0V和5V(隐性时)。
LIN总线只以一条相当于CAN一忱如的信号线工作,隐性时电平接近电瓶电压,并随之浮动;显性时电平接近地电平。使用0·35mmz导线,颜色为紫底白线。
2.组件
CAN总线工作时,电子单元中除了需要相对复杂的收发器外,通常还需要用专门的协议控制器。
LIN总线单元中的收发器较简单,而且由于协议简单,通常不需要专门的协议控制器。
3.传输速率
CAN总线的位速率较高,在汽车中使用时通常为5OOkb/s,最低的也达到1OOkb/s。
LIN总线的最高位速率为2Okb/s,通常使用1920Ob/s或9600b/s的速率。
4.系统结构
CAN总线为多主机系统,即接人总线的任一电子单元都可通过总线仲裁来获取总线控制权,并向总线系统中发送信息,单元在发出完整的ID时即为主机。
CAN总线使用11位 ID(甚至更多),在一个子系统中可有较多的单元。
LIN总线为单主机多从机系统,每一子系统中有且只有一个主机,所有的信息传送都由主机控制,从机必须等待主机发出了与它对应的ID后才能发送信息。
LIN总线使用6位 ID,在一个子系统中只能有较少的单元。
5.可靠性。
CAN总线采用可靠性很高的CRC校验。
LIN总线采用可靠性相对较差的带进位的和校验。
6.成本
CAN总线能用于各种信息传送的场合,但成本较高,工艺性相对差些。
LIN总线只能用于对速率及可靠性要求不是很高的场合,如舒适系统或某些子系统等,优点是成本低,工艺性好。
扩展资料:
LIN总线协议:
LIN(Local Interconnect Network)总线是基于UART/SCI(通用异步收发器/串行接口)的低成本串行通讯协议。
LIN目标定位于车身网络模块节点间的低端通信,主要用于智能传感器和执行器的串行通信,而这正是CAN总线的带宽和功能所不要求的部分。
LIN总线采用的是单线传输形式,应用了单主机多从机的概念,总线电平一般为12V,传输速率最高限制为20kbps。由于物理层的限制,一个LIN网络最多可以连接16个节点。
LIN报文帧包括帧头(hearder)与应答(response)两部分。主机负责发送至帧头;从机负责接收帧头并作出解析,然后决定是发送应答,还是接收应答或不回复。
LIN总线根据帧ID号的不同,把报文分为信号携带帧、诊断帧、保留帧。
参考资料:百度百科-Lin入门书
Linux addr2line具体应用指南
调试zSeries上的Linux应用程序与调试其他体系结构的Linux程序类似,对于有经验的Linux开发者来说,理解新的系统架构是主要挑战。对于刚接触Linux的大型机开发者,掌握新的调试工具可能令人畏惧。但请放心,本文将提供Linux addr2line的使用指南,帮助您入门。
在进行崩溃程序的调试时,首先通过zSeries Linux内核的内置特性记录基本的调试信息。启用此功能,以root身份执行命令:echo1>>/proc/sys/kernel/userprocess_debug。当程序崩溃时,日志文件(/var/log/messages)将提供故障原因、故障地址以及程序状态字(PSW)、通用寄存器和访问寄存器的简要寄存器转储。
通过UserDebug日志,可以确定程序崩溃的位置。使用工具如readelf来打印程序头信息,确定程序加载的位置和范围。假设日志中PSW值为070dc00080400618,通过将其减去0x80000000,可得到实际的指令指针0x400618。接着使用addr2line定位代码,通过addr2line-esimple0x400618,可获知问题发生在simple.c文件的第34行。
如果可执行文件包含调试符号,可进一步定位问题。通过addr2line对地址和可执行文件使用,例如addr2line-esimple0x400618,将返回确切的文件路径和行号。对于原始程序崩溃,如PSW为070dc000c00ab738,该地址对应于加载libc.so.6的地址。通过ldd命令列出所需的共享对象及其地址,如ldd/usr/bin/perl,可了解程序依赖的库和加载地址。
确定崩溃发生在libc.so.6中的具体位置,通过nm命令转储libc.so.6的符号,使用grep进行精确查找。例如,nm/lib/libc.so.6|sort|grep0008a,可快速定位到memcpy函数中的相关代码。结合寄存器转储信息,通过addr2line进一步确定memcpy调用的位置。
在调试过程中,使用arm-eabi-addr2line命令时,可以利用-f、-C、-e等选项进行更精确的解析。例如,arm-eabi-addr2line-e"D:\*.out.symbols\alps\out\target\product\*\symbols/../../../../../kernel/vmlinux" c0037aa0,用于解析在特定vmlinux中地址c0037aa0对应的代码位置。
对于NE调试方法,首先在日志中查找signal 11(SIGSEGV)信息,找到具体故障地址,如baae8fd1。通过分析确定故障类型,例如deaddead表示heap错误,deadadd0则为heap损坏或使用错误。保存heap信息并下载,使用addr2line将故障地址转换为C库出错的位置。
在NE调试中,解码步骤包括查找日志中的信号和故障地址,通过addr2line解析到正确的C库地址。例如,#01 pc 0001cd4a/system/lib/libc.so,将libc.so路径添加到symbols路径后,使用addr2line解析。
通过以上步骤,可以更直观地定位和理解Linux addr2line在zSeries和NE环境下的应用,从而有效地调试Linux应用程序。
K- Lin和L- Line有什么区别
K-Lin和L-Line都是总线的一种,都可以通过这种总线实现单片机与电脑的连接,从而作为烧录程序、debug的方式之一。
1.信号线及信号
CAN总线以CAN一H和CAN一L两条信号线(双绞线)工作,舒适CAN总线两条线的电平分别约为0V和5V(隐性时)。
LIN总线只以一条相当于CAN一忱如的信号线工作,隐性时电平接近电瓶电压,并随之浮动;显性时电平接近地电平。使用0·35mmz导线,颜色为紫底白线。
2.组件
CAN总线工作时,电子单元中除了需要相对复杂的收发器外,通常还需要用专门的协议控制器。
LIN总线单元中的收发器较简单,而且由于协议简单,通常不需要专门的协议控制器。
3.传输速率
CAN总线的位速率较高,在汽车中使用时通常为5OOkb/s,最低的也达到1OOkb/s。
LIN总线的最高位速率为2Okb/s,通常使用1920Ob/s或9600b/s的速率。
4.系统结构
CAN总线为多主机系统,即接人总线的任一电子单元都可通过总线仲裁来获取总线控制权,并向总线系统中发送信息,单元在发出完整的ID时即为主机。
CAN总线使用11位 ID(甚至更多),在一个子系统中可有较多的单元。
LIN总线为单主机多从机系统,每一子系统中有且只有一个主机,所有的信息传送都由主机控制,从机必须等待主机发出了与它对应的ID后才能发送信息。
LIN总线使用6位 ID,在一个子系统中只能有较少的单元。
5.可靠性。
CAN总线采用可靠性很高的CRC校验。
LIN总线采用可靠性相对较差的带进位的和校验。
6.成本
CAN总线能用于各种信息传送的场合,但成本较高,工艺性相对差些。
LIN总线只能用于对速率及可靠性要求不是很高的场合,如舒适系统或某些子系统等,优点是成本低,工艺性好。
扩展资料:
LIN总线协议:
LIN(Local Interconnect Network)总线是基于UART/SCI(通用异步收发器/串行接口)的低成本串行通讯协议。
LIN目标定位于车身网络模块节点间的低端通信,主要用于智能传感器和执行器的串行通信,而这正是CAN总线的带宽和功能所不要求的部分。
LIN总线采用的是单线传输形式,应用了单主机多从机的概念,总线电平一般为12V,传输速率最高限制为20kbps。由于物理层的限制,一个LIN网络最多可以连接16个节点。
LIN报文帧包括帧头(hearder)与应答(response)两部分。主机负责发送至帧头;从机负责接收帧头并作出解析,然后决定是发送应答,还是接收应答或不回复。
LIN总线根据帧ID号的不同,把报文分为信号携带帧、诊断帧、保留帧。
参考资料:百度百科-Lin入门书

热门问答




