📄 基于can总线技术的汽车ecu设计.htm
字号:
face="Times New Roman"> <SPAN lang=EN-US><O:P></O:P></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center"><SPAN
lang=EN-US><FONT face="Times New Roman" size=3><IMG alt=""
src="基于CAN总线技术的汽车ECU设计.files/2(2).bmp"></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"> </P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> 从图</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">2</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中可以看出,电路主要由</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">3</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">部分组成:单片机</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">AT90CAN128</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、高速光耦</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">6N137</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和高速</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">总线收发器。单片机</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">AT90CAN128</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">主要负责传感器信息的采集、内部</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制器的初始化并实现数据的接收和发送等通信任务。在</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">ATA6660</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">与</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">总线的接口部分也采用了抗干扰和安全措施,</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">ATA6660</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANH</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANL</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">引脚各自通过</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">5</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Ω的电阻与</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">总线相连,电阻可起到一定的限流作用,保护</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">ATA6660</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">免受过流冲击。</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANH</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANL</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">与地之间并联两个</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">30pF</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的小电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力。另外,在两根</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">总线与地之间分别接了一个防雷击管,当两输入端与地之间出现瞬变干扰时,通过防雷击管的放电可以起到一定的保护作用。</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN lang=EN-US><FONT face="Times New Roman">3.2 </FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">软件设计</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> 系统软件设计主要包括信号采集和</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接口通信程序。利用</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">A T90CAN128</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">片上集成的</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">ADC</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模块可以采集一些常规传感器的模拟信号,如油压、水温、气压等信号;利用定时器</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">/</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">计数器模块采集传感器脉冲信号,如转速、行驶里程信号等。对于模拟量信号,在经过放大器处理之后,可以直接控制单片机的</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">ADC</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模块对其进行采集;对于脉冲信号,在对其进行采集时需要进行整形处理,如转速传感器获取发动机飞轮旋转时轮齿的信号,是正弦交流信号,将其整形为方波信号,利用定时器</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">/</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">计数器模块采集方波的频率来完成速度采集。为提高转速采集的实时性,通常采集脉冲信号的周期(两个脉冲信号上升沿或下降沿之间的时间)来计算其频率,并计算发动机转速,计算公式如如式(</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">)所示。</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> </SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><IMG
height=63 alt="" src="基于CAN总线技术的汽车ECU设计.files/3.bmp"
width=239></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> </SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> 式(</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">)中</SPAN><FONT
face="Times New Roman"> </FONT><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">为系统时钟周期,为分频系数,为发动机飞轮齿圈齿数(对于康明斯发动机为为轮齿脉冲两次上升(或下降)沿的计数器值。</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> </SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接口通信程序主要包括</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制器的初始化、数据接收和数据发送程序。主程序通过调用函数来实现数据的接收和发送,流程图如图</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">3</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示,在数据接收程序中,通过查询方式读取相应消息对象中的数据。</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center"><SPAN
lang=EN-US><FONT face="Times New Roman" size=3><IMG height=379 alt=""
src="基于CAN总线技术的汽车ECU设计.files/4.bmp" width=342></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> </SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制器初始化工作主要包括波特率参数设置、接收屏蔽寄存器及接收代码寄存器的设置、使能允许寄存器的设置等。通过总线定时器寄存器</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANBT1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANBT2</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANBT3</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">来设置波特率参数。</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">AT90CAN128</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中提供了一组由</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">4</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">个验收码寄存器(</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANIDT1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">~</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANIDT4</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">)和</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">4</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">个验收屏蔽寄存器(</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANIDM1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">~</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CANIDM4</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">)组成的验收滤波器,信息只有通过它的验收滤波才能被接收;所有验收屏蔽寄存器为</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">0</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的位,验收码寄存器和</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">CAN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">信息帧的对应位必须相同才能验收通过,而所有验收屏蔽寄存器中为</SPAN><SPAN
lang=EN-US><FONT face="Times New Roman">1</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的位,验收码寄存器对应位的验收滤波功能则被屏蔽。通过设置验收滤波器,既可以实现节点与节点之间的点对点通信,也可以实现一点对多点的广播式通信,使整个数据通信网络更加灵活。</SPAN><SPAN
lang=EN-US><O:P></O:P></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><SPAN
lang=EN-US><O:P><FONT face="Times New Roman" size=3></FONT></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left"><FONT
size=3><SPAN lang=EN-US><FONT face="Times New Roman">4</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、实
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -