智能车制作
标题: 真香警告:逐飞英飞凌TC264智能车开源库来啦 [打印本页]
作者: fbhsy 时间: 2020-4-13 11:13
标题: 真香警告:逐飞英飞凌TC264智能车开源库来啦
本帖最后由 fbhsy 于 2020-4-13 11:35 编辑
真香警告:逐飞英飞凌TC264智能车开源库来啦
[attach]94927[/attach]
还是原来的配方,还是熟悉的味道……针对第十五届智能汽车竞赛“双车之一”+“信标组”指定英飞凌单片机,并且只允许使用AURIX TriCore系列单片机,具体参考下图卓老师公众号里的回复:
[attach]94923[/attach]
同时英飞凌为大家提供了一定数量的SAK-TC264D-40F200NBC免费样片供参赛学生申请和35元低价样片供参赛选手购买。
这个前提之下,作为支持智能车竞赛的第三方硬件模块供应商,被无数次催问是否会做TC264核心板?是否会做英飞凌下载器?是否会和以前一样出开源库?什么时候能做好?这几个问题催得我和我的小伙伴们头发掉了好多……
所以,我们针对TC264这个型号所做的一些微小的工作也陆续在和大家见面了,比如TC264核心板(同时还开放了低至79元的TC264众筹活动,活动还在继续,有申请到样片或买到低价芯片的可以继续参与:
http://seekfree.mikecrm.com/Qp0r13I),再比如价格美丽的英飞凌下载器,以及即将配套发售的TC264主板学习板,当然,为了更好的让初学者入门,更轻松的用TC264做开发学习工作,逐飞开发了基于智能车应用的底层驱动库,虽然晚了点,但以逐飞的个性,必须得做的像模像样一点再开源的,同时在上周也已经发给了部分用户做内测,一切就绪后,还是赶在了大家预定的核心板、下载器可以陆续发货的神奇“周一”的这个特殊日子发布--
“逐飞TC264智能车开源库”&“逐飞科技Tasking环境使用说明”。
PS:这是逐飞继“KEA128开源库”、“LPC54606开源库”、“i.MXRT1021开源库”、“i.MX RT1064开源库”之后,逐飞制作的又一个开源库--“逐飞TC264智能车开源库”,本次开源库中也有IO分配建议文档,为大家做智能车资源规划,引脚分配提供参考,另外,想了解以上开源库的同学可以搜索逐飞以前在“智能车制作论坛”上发的帖子查看。
前言叙尽,以下是今天的主角,“逐飞TC264智能车开源库”的简要介绍:
版权声明:该开源库版权归成都逐飞科技有限公司所有,欢迎各位使用并传播该库程序,修改内容时务必保留逐飞科技的版权声明。未经允许不得用于商业用途或变相获利。
还是直接上图,一目了然!
目录结构图:
[attach]94924[/attach]
BaseSw文件夹下放置的是英飞凌官方提供的ILLD底层驱动。
seekfree_libraries文件夹下放置的是逐飞科技精心编写的底层驱动,底层驱动是用英飞凌官方的ILLD进行二次封装,以简化各个模块的使用步骤,使用更加方便。如果不是参加竞赛的用户可以使用这一层的驱动来实现TC系列的快速上手,也可以通过查看我们的代码用于学习ILLD如何使用。目前支持ADC、Eru_Dma(IO中断触发DMA)、片内eeprom读写操作、GPIO、PIT、PWM、GPT12(编码器采集)、SPI、SYSTICK、UART、ERU。如果有需要其他功能亦可直接调用ILLD来实现其他功能。
seekfree_peripheral文件夹下放置的是各类常用的模块驱动,当使用到这些模块时只需要调用函数即可实现相应的功能,非常的简单方便。目前实现1.8寸TFT、ICM20602六轴陀螺仪、IIC通讯协议(模拟IO)、1.14寸IPS液晶屏、2.0寸8位并口屏幕、L3G4200D三轴陀螺仪、MMA8451三轴加速度计、MPU6050六轴陀螺仪、总钻风摄像头(灰度)、OLED显示屏、虚拟示波器通讯协议、无线转串口模块。
CODE文件夹下放置的是用户自己添加的代码文件,当用户自己添加文件的时候我们建议全部添加在这个文件夹内。
USER文件夹下放置的是Cpu0_Main.c、Cpu1_Main.c、isr.c、isr_config文件,其中isr_config比较重要,用于配置各个中断的服务者以及中断优先级。需要特别注意:所有中断的优先级都不能一样。
DOC文件夹下放置的是库版本文件,表示当前库版本号是多少,以及版本主要的更新内容。
目前库里面没有硬件IIC以及小钻风的驱动,会在后期进行添加。
本次TC264开源库使用tasking进行编写的,调试时使用的是逐飞制作的英飞凌专用下载器。
各个模块的库例程也都为大家准备好了,如下图截图所示,图中所示各模块为逐飞为大家编写的库例程,目的是让新手朋友或者没有使用过我们库的小伙伴能够快速上手,大家可以看到目录全部采用英文,这样避免出现各种奇怪的问题,所以建议写代码的小伙伴都用全英文的路径避免出问题,下面的excel中有讲解所有例程是干啥的(中文写的哦)。
[attach]94925[/attach]
接下来我们简单举例库如何使用。
示例一:输出PWM
查找seekfree_libraries文件夹下,我们可以看到有zf_gtm_pwm的文件,这个就是用于输出PWM的。
[attach]94928[/attach]
gtm_pwm_init(ATOM0_CH4_P02_4, 50, 0); PWM初始化函数第一个参数表示所选择使用的引脚,可选引脚可以查看zf_gtm_pwm.h中关于引脚的枚举,第二个参数表示PWM的频率,第三个参数表示PWM的占空比。
pwm_duty(ATOM0_CH4_P02_4,5000); 占空比设置函数,第一个参数表示选择的引脚,第二个参数表示设置的占空比,其中占空比等于百分之0/GTM_ATOM0_PWM_DUTY_MAX*100。
示例二:采集总钻风图像并在TFT屏幕上显示
根据任务需要我们查找seekfree_peripheral文件夹下,可以找到SEEKFREE_MT9V03X与SEEKFREE_18TFT文件,我们只需要调用相关的函数即可实现任务需求。
[attach]94929[/attach]
因为TC264应该大多数同学都是刚刚接触,加上今年各种复杂的情况导致参赛难度增加,因此我们也特意做了IO分配供大家参考,结合以上示例的操作和库里面的IO分配建议,便可以更加节省时间,快速搭建你的小车了。
总钻风摄像头: 8个数据口、一个串口、两eru中断
数据口:00_0 00_1 00_200_3 00_4 00_5 00_6 00_7
配置串口:摄像头RX:02_2 摄像头TX:02_3
VSY:02_0
PCLK:02_1
四路OPA4377运放:A0 A1 A2 A3 等
四个逐飞迷你编码器:
LSB:33_7 DIR:33_6
LSB:02_8 DIR:00_9
LSB:10_3 DIR:10_1
LSB:20_3 DIR:20_0
8路pwm输出: 21_2 21_3 21_4 21_5 02_4 02_5 02_6 02_7
逐飞ICM20602六轴陀螺仪:
CLK: P20_11
MOSI: P20_14
MISO: P20_12
CS: P20_13
SPI0
TFT屏幕:
CLK 15_3
MOSI 15_5
MISO 15_4
CS0 15_2
BL 15_4
REST 15_1
DC 15_0
SPI2
舵机:P33_9
以上是库的内容简介、使用示例和IO规划建议,但要真正用起来,还需要熟悉一个东西—Tasking:
使用过逐飞库的同学看完上面的介绍一定很熟悉啦,没使用过小白也完全不用担心,使用库来进行开发的底层工作变得非常简单,但因为开发环境不再是大家熟悉的IAR或者MDK,而是陌生的Tasking,基于这个因素,逐飞又贴心的为大家准备了“逐飞科技Tasking环境使用说明”这份专门的教程,就问你感动不感动吧。拿着这两个神器,从此不再为英飞凌TC264发愁。其实我们做开源库以及做Tasking教程的目的是为了让前期比较盲目的初学者能通过我们开源库快速上手,不被门槛拦在外面,结合今年异常复杂的情况,还是好难,对小白来说更困难的,想尽快入门,想尽快的把全新单片机使用起来,的确需要多查阅一些资料,去学习怎么使用这些单片机的资源,我们做的工作也仅限于方便初学者能多一条路子把单片机用起来。同时,我们鼓励学有余力的车友们自己开发底层,这个过程会让你积累很多嵌入式开发的技能和知识。
“逐飞TC264智能车开源库”&“逐飞科技Tasking环境使用说明”讲完了,是时候该告诉大家在哪里能下载到这两个东西了,按老规矩,逐飞还是将这个开源项目放在了git进行开源,相较于使用百度网盘具有下载速度更快(不用开会员哦),方便用户随时进行同步。同时也方便我们更新和管理,以后的开源都会放在码云上。大家也可以在上面找到很多有意思的开源项目供自己学习。
开源文件里面包含入门教程,便于大家快速上手。
本期的库介绍就到这里了,大家在使用库的过程中如果遇到什么BUG,请及时联系我们!我们将尽快修复。PS:通过QQ群联系我们更方便,也方便大家讨论交流,QQ群技术交流平台(逐飞科技__智能车③部:824575535),如果发现库有BUG、或不足、或对库有什么建议,可以在群里提问或发表建议,也可与管理员私聊,保障该开源库有什么缺陷时可以及时得到解决。然后再分享给各位,形成良性循环。
最后,当然是希望大家多多支持逐飞科技,逐飞TC264核心板、英飞凌下载器已备好,主板学习板也即将上架,你懂得,你们的支持是我们开源的动力。再次感谢车友们的厚爱!
最最后,剧透一下,有部分懒虫想要的STC开源库也会来的,很快了。再剧透一下,为了更好的和大家交流、学习,这段时间逐飞也在搭建视频录制平台,但是想要做的像那么回事情还需要做不少工作,也很快了!
[attach]94930[/attach]
本文由“逐飞科技”编辑整理,时间仓促,水平有限,难免有遗漏和错误,大神亲拍,欢迎交流指正。愿智能车世界更美好!
PS:AI组QQ交流群群号:1077051054。竞速组QQ交流群群号:824575535
作者: 乐师--澄泓 时间: 2020-4-13 11:37
占个前排
作者: 欧欧欧 时间: 2020-4-13 11:40
占个前排
作者: 快上车 时间: 2020-4-13 11:42
来辣老弟
作者: 风无痕12 时间: 2020-4-13 11:44
来辣,老弟
作者: cs538138 时间: 2020-4-13 11:45
来了来了他来了
作者: Jack110 时间: 2020-4-13 11:55
占个前排
作者: zxfc 时间: 2020-4-13 12:04
香~~~
作者: 1325536866 时间: 2020-4-13 12:07
终于出来了
作者: luoqifeng21 时间: 2020-4-13 12:20
来了来了
作者: einmal 时间: 2020-4-13 13:27
太香了
作者: gjl686 时间: 2020-4-13 21:35
他来了他来了。顶顶顶
作者: 优乐美 时间: 2020-4-14 08:46
你这是干嘛 让学生自己学习编程 了解单片机内部不好呢 为什么一出来新的单片机 你们就替他们把程序写好了 你把他们的工作都做了 他们做什么 你这是在帮他们还是在害他们 当年大家在一起用XS128单片机的时候 没有所谓的库 自己一点点来了解寄存器 来看摄像头时序 一点点来编程序采集图像 这才是比赛的意义 你们直接把函数写好 他们还担心自己不会写程序呢 你们写的也不是官方的 不要误导他们 你们也是过来人 希望能好好想想
作者: fbhsy 时间: 2020-4-14 10:53
[attach]94935[/attach]
大佬好,我来回答一下大佬的质问,我这是干嘛
首先我们做的开源库是基于芯片厂商英飞凌的illd来做的,就如同我们之前做的NXP的多个开源库是基于NXP的SDK来做的是一个道理,芯片做出来就是方便工程师做应用和做开发的,各原厂也在努力提供更完善的例程服务,这其中ST(意法半导体)的生态做的最好,各种第三方的库也是最丰富的,但这并不阻碍大家的学习,反而大家对STM32的单片机最熟悉;同时我们在开源中也鼓励学有余力的同学们自己开发底层,但并不是所有人都有足够的精力,所以我们看到直立车刚进入比赛的时候,卓老师做了一整套教程,还包含应用程序和程序的讲解,现在一大把初学者依然靠这个入门。所以我们看到声音信标出现的时候卓老师也在从头到尾开源自己研究声音信标的过程,并且还会发布识别声音信标的参考入门方案。所以我们还看到英飞凌也在委托第三方(乾勤)为同学们组织培训,熟悉了解单片机的特性和使用方法。这一切都在让比赛朝着更健康繁荣的方向发展,大佬的一句误导是否有些武断,是否有切切实实的了解过具体情况呢。
正如大佬所说,我们都是过来人,恰好我也用过XS128,但我同时用了XS128的PE开发模式和写寄存器两种模式来开发,最终我直接用的PE来开发,也并没有影响我对单片机的理解,我们做开源库也几年了,这个过程也见证了很多很多用库来做开发的同学们,综合以上种种,貌似都不阻碍同学们的成长,也并不阻碍该成为高手的人成为高手,希望大佬您也多换角度思考,也可以尊重一下我们所做的工作,不是说一两句话那么简单的。最后,感谢大佬的提醒,我们的确一直在思考我们做的工作,我们也大概知道我们在干嘛,但多提醒总没错,谢谢。
作者: 快上车 时间: 2020-4-14 11:22
本帖最后由 快上车 于 2020-4-14 11:30 编辑
1、32位单片机的寄存器比16位的复杂多了,8位的51单片机让同学们搞寄存器我还能理解,但如果让所有组的同学都从底层的寄存器开始撸,那我估计备赛的大把时间都要花在搞底层上面了,这对技术的进步是不利的,而且寄存器这玩意不就那么回事吗,你觉得花那么多时间去纠结每个MCU的寄存器值得吗?
2、成熟的底层库会大大提高开发效率,如果按照你说的非要把方方面面都钻研透,那Java,Pyrthon,C++这些高级语言存在的意义呢?干脆都用汇编写算了。务实一点。
3、有底层库不能说害了人,毕竟底层库不是面面俱到的,也不一定是最好的,它只是让小白更快的出点成果、减少挫败感,上层的算法还是得自己写,智能车要朝着“智能化”的方向前进,不应该是一个让人纠结底层寄存器的比赛。而且很多传感器/模块的底层以及它数据采集/通信的方法,底层库不会有,这就需要我们学会移植、钻研底层了。
我还是觉得逐飞挺良心的,支持逐飞科技!
作者: 林淑馨 时间: 2020-4-16 17:20
发出白嫖的声音
作者: fbhsy 时间: 2020-4-16 23:12
不支持一下买个核心板什么的么?
作者: kirito123 时间: 2020-4-17 21:31
支持逐飞!
作者: 林淑馨 时间: 2020-4-23 11:31
已经买啦,也希望大大能把适配STC的上位机,虚拟示波器安排一下
作者: hp34401aa 时间: 2020-4-23 12:35
支持。已下载学习。但请教STC的8位与人家的32位如何竞赛呢?
作者: hp34401aa 时间: 2020-4-23 12:37
不知这位大捞是否只用汇编不用C语言? ? ???
欢迎光临 智能车制作 (http://111.231.132.190/) |
Powered by Discuz! X3.2 |