公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

【Aurix读书月】读书笔记

【Aurix读书月】读书笔记

凌风2018_版主_
Level 4

   《英飞凌多核单片机应用技术——AURIX三天入门》书评

   

  (舔着脸说这是我的书评,假装自己是大佬,大家不要戳穿)

   拿到书已经一个月了,说来惭愧,这本书又是在地铁上看完的。。。以前是没时间,现在竟然渐渐养成这种习惯了。下面简单写写读完这本书的感受。(和小说名著不一样,写起来没有感情的流露。。。)

   全书是以一个GDI控制系统的搭建为框架来叙述的。GDI就是这几年为了应对排放法规、提高汽油机燃油效率而出现的新的汽油机缸内直喷技术。本人是做柴油机共轨系统的,所以理解的还深一些。GDI技术和共轨喷油技术是有很大程度的相似性。前一段时间还听说,天津大学的内燃机实验室采用AURIX做的六缸柴油机ECU点火成功,还有点心神往之。哈哈,不过我们也开始设计和研发以AURIX系列为核心的ECU。总之,AURIX系列在汽车电子领域的应用也是越来越广泛了(跳槽前必须掌握,嘿嘿)。

   第二章首先介绍了一个GDI小系统的基本配置(ECU结构图一配,我就明白了,也是做了一年多的ECU开发。。。)。

系统架构.jpg

  图1:基于TC275T的GDI最小系统

   ECU有几大模块:单片机及其配置电路、ADC接口、开关量采集、开关量输出(低边驱动)、位置信号处理(曲轴、凸轮轴)、喷油驱动(喷油器、喷油泵)、通信接口(CAN、lin)、直流无刷电机驱动(节气门、SCR)、供电模块(由12V系统或者24V系统降压产生5V系统供电,3.3VMCU供电、5V传感器电源)等等。由于本书主要讲TC275的应用,所以内容里面没有提到GDI系统各个模块具体怎么设计。(我的好奇真是心痒难耐)。

   接下来每一章的内容就清楚了,就是按照GDI系统的配置来分开讲解。第三章的CPU基本介绍,AURXI内核的基本架构和内存分配。其实这些内容也是根据芯片手册来写的,写的也是比较晦涩,有些地方还是要照着芯片手册来看。(后边几章尤其是,虽说是中文,可读性还是和手册一样很一般)    第四章对应我们的ADC、开关量输入输出模块,讲了ADC、GPIO的基本配置,以及为方便大量数据传输的DMA总线的基本操作。

   第五章是重头戏,讲解GTM模块的使用。不得不感叹,AURXI系列的GTM真的是强大。GTM模块已经相当于一个单独的DSP了,可以想象它的处理能力。作者也是将ECU里面最重要的一部分喷油驱动放在这里。当然也不止喷油驱动,包括电机驱动(输出PWM),位置信号采集(信号频率和脉宽采集),以及一些阀类元件的驱动。在喷油驱动里面要周期性的控制多个开关(MOS管),有些是同步工作、有些是异步,来实现对喷油器的开启、维持和关断,如图2结构。

喷油开关.jpg

图2:喷油驱动电路模型

   实际上就是为了得到Peak-Hold波形(电流),如图3。(ECU里面喷油驱动是最难理解的一块,具体的驱动电路这里也不详细解释了,作者对原理的讲解也挺通俗和透彻,大家可以多琢磨琢磨。)

   喷油波形.jpg

图3:喷油波形以及开关驱动波形

   为了得到Peak-Hold波形,就需要已一定规律控制这三个开关的开启和关闭,如图3的S1、S2、S3波形。这三种波形的实现是要占用很大的CPU运算空间,以前我们都是用单独的近似于DSP的喷油驱动芯片来做(当然会包含MOS管的驱动电路,书中是另加的)。AURIX的优秀之处就在于GTM模块的强大(个人认为),完美的替CPU做了这份工作,不会占用太大的CPU空间。

   第六章是通信接口的介绍,CAN总线和LIN总线。书中介绍了AURIX中CAN总线和LIN总线的基本结构,当然这只是通信底层(物理层的一部分)。汽车电子中CAN总线通讯的应用特别广,包括标定、BOOT、多机通信,甚至车联网等。想要有更深入的了解可以参考专门讲解CAN通信的书籍。

   第七章是和系统相关的内容,包括时钟管理、中断管理两个部分。这里讲的系统是指嵌入式实时系统,实时系统大家应该有了解,像free-RTOS、ucos、华为的RT-tread等。实时系统的主要作用就是任务调度和中断。在很多复杂的发动机管理系统中都需要实时系统来进行任务调度。不过也有一些简单的系统,采用时间片轮调度法,其实已经是实时系统的雏形了。从名字也可以看出,这种调度方法对时钟的要求很高。ECU应用最多的是点火定时、喷油定时等等,以及大多数的任务都是在时间片上进行调度。(大家可以百度搜索时间片轮调度法,自己写个小系统也是很有意思的,下面的帖子也可以参考:https://forum.mianbaoban.cn/topic/60374_1_1.html?from=timeline,我觉得版主讲的很好)。所以作者也是单独用一章来介绍,TC275的时钟系统也是沿用了XC系列的架构:时钟源-时钟倍频(PLL)-时钟分频,其实STM32也是这样。。。不方便的是,TC系列锁相环得从代码上配,以前都是DAVE(用dave的兄弟有没有,哈哈)。具体不作介绍了,大家可以照着时钟部分的代码来看。

   第八章是讲无刷电机的驱动,CCU6模块。这个模块在之前的英飞凌XC系列已经有广泛的应用,就是专门用来做电机驱动的。我们之前用这个模块做系统基本定时和位置信号采集,其实效果也不错。

其实说白了就是定时器、捕获、比较的功能,很多单片机都会有捕获/比较单元,该单元对实现任意占空比的波形都很方便。也就是我们常说的PWM(脉宽调制技术),电机的正反转、加减速都是通过PWM来控制的。(做过小车的同学相信会深有感触)

   第一章和最后一章我放在最后,是因为这两章相当于本书的附赠(在基本架构外)。第一章的AURXI系列单片机的介绍,可能在大家选型时有帮助。最后一章是AURXI开发环境的介绍,包括编译器(Hightec)、编程的基本架构(framework)、简单驱动(illd)等。最后还不忘了推销一下开发板(Open ECU),哈哈。这些资料的获取在生态圈都有介绍,大家可以自行了解。

   书虽然看完了,但是调试的路子还很长。总是觉得资料太少,尤其是在做新的平台时。希望生态圈可以推出更多好的资料,嘿嘿。

   总之,在AURXI中文资料匮乏的时候,这本书的出版简直就犹如一颗明星划过夜空。对AURIX系列单片机的推广很有帮助,预祝AURXI系列单片机和这本书的大卖(想想STM32的盛况,哈哈)。

   以上只是我的个人见解,读者们如果有问题或不同的意见可以多多评论。(重要的事情说三遍,多多评论,。。。,。。。,多交流才能提升,嘿嘿)

(PS:其实想写的内容还很多,写之前还不知道写啥,结果写起来就停下来的节奏,尴尬)

0 点赞
3525 次查看
7 评论