车载软件 --- 大一新生入门汽车零部件嵌入式开发

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:

简单,单纯,喜欢独处,独来独往,不易合同频过着接地气的生活,除了生存温饱问题之外,没有什么过多的欲望,表面看起来很高冷,内心热情,如果你身边有这样灵性的人,一定要好好珍惜他们眼中有神有光,干净,给人感觉很舒服,有超强的感知能力有形的无形的感知力很强,能感知人的内心变化喜欢独处,好静,清静,享受孤独,不打扰别人不喜欢被别人打扰,在自己人世界里做着自己喜欢的事。

时间不知不觉中,快要来到新的一年。2024结束,2025开始新的忙碌。成年人的我也不知道去哪里渡自己的灵魂,独自敲击一些文字算是对这段时间做一个记录。

在这里插入图片描述

作为车辆工程专业的大一新生,你已经展现出了对嵌入式软件方向的浓厚兴趣和前瞻性思考,这非常令人鼓舞。嵌入式系统在汽车零部件中的应用确实非常广泛,从基础的发动机控制到高级的车载娱乐系统和驾驶辅助系统,都离不开嵌入式技术的支持。

下面我将针对这些方面给出一些更具体的建议和资源推荐,帮助你更好地入门和深入学习嵌入式开发。

1、单片机与微控制器

C语言基础:C语言是嵌入式开发的基础,推荐你先从《C Primer Plus》或《The C Programming Language》等经典书籍入手,掌握基本的语法和数据结构。

STM32学习:STM32系列微控制器在汽车行业中应用广泛。你可以从STM32的官方文档和教程开始,结合STM32CubeMX工具进行配置和代码生成,简化开发过程。同时,参加一些在线课程或工作坊,如STM32CubeIDE的官方教程,可以更快地上手。

硬件基础:学习基本的电路设计,如电阻、电容、电感的作用,以及如何使用示波器、逻辑分析仪等调试工具。此外,了解传感器和执行器的工作原理也是非常重要的。

实践项目:动手做一些小项目,如LED闪烁、温度采集、电机控制等,通过实践加深对硬件和软件的理解。

2、嵌入式Linux

Linux基础:学习Linux操作系统的基本概念,如文件系统、进程管理、网络配置等。可以通过在线课程或《Linux内核设计与实现》等书籍进行学习。

驱动开发:了解Linux设备驱动的基本概念,从简单的字符设备驱动开始,逐步学习块设备、网络设备驱动的开发。同时,熟悉Linux设备树和U-Boot等引导程序。

交叉编译与调试:学习如何使用交叉编译工具链(如arm-none-eabi-gcc)编译代码,并使用GDB等调试工具进行远程调试。

3、 实时操作系统 (RTOS)

FreeRTOS学习:FreeRTOS是一个轻量级的实时操作系统,非常适合嵌入式系统。你可以从FreeRTOS的官方文档和教程开始,了解任务管理、时间片调度、信号量、队列等基本概念。

AUTOSAR框架:虽然AUTOSAR相对复杂,但它是汽车行业的标准化RTOS框架。你可以通过参加AUTOSAR的培训课程或阅读相关文档,了解其基本架构和组件。

4、 车载通信协议

CAN总线基础:学习CAN总线的物理层、数据链路层和应用层协议,了解如何配置和使用CAN控制器和收发器。你可以从《CAN总线及其应用》等书籍或在线课程开始学习。

其他协议:了解LIN、FlexRay、Ethernet AVB等协议的基本原理和应用场景。这些协议在特定的车载应用中也有重要作用。

5、PLC和控制系统

PLC基础:虽然PLC在消费类汽车中不如MCU常见,但在工业控制领域有广泛应用。你可以从了解PLC的基本原理、编程语言和编程软件开始,如西门子的Step 7或Rockwell的RSLogix等。

控制系统设计:学习如何设计控制系统,包括传感器选择、控制器设计、执行器选择等。这需要对控制理论有一定的了解。

额外建议

参加竞赛和社团:参加一些嵌入式开发相关的竞赛或加入相关社团,可以锻炼你的实践能力,同时结交志同道合的朋友。

阅读行业报告和标准:了解汽车行业的最新趋势和技术标准,如AUTOSAR、OSEK/VDX等,可以帮助你更好地把握学习方向。

持续学习:嵌入式开发是一个不断发展的领域,新的技术和工具层出不穷。保持好奇心和学习热情,持续跟进最新的技术和趋势是非常重要的。

最后,记得在学习过程中保持耐心和毅力,嵌入式开发需要扎实的基础和持续的实践。相信只要你坚持下去,未来的路一定会越走越宽。祝你学习顺利!

在这里插入图片描述

搁笔分享完毕!

愿你我相信时间的力量

做一个长期主义者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/962139.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

有效运作神经网络

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。 文章目录 训练集、验证集、测试集偏差、方差正则化正则化参数为什么正则化可以减少过拟合Dropout正则化Inverted Dropout其他的正则化方法数据增广Early stopping 归一化梯度消失与梯度爆…

【深度优先搜索篇】走迷宫的魔法:算法如何破解迷宫的神秘密码

当你在夜晚孤军奋战时,满天星光以为你而闪烁。 欢迎拜访:羑悻的小杀马特.-CSDN博客 本篇主题:轻轻松松拿捏洛谷走迷宫问题 制作日期:2024.12.31 隶属专栏:C/C题海汇总 首先我…

SQL进阶实战技巧:如何分析浏览到下单各步骤转化率及流失用户数?

目录 0 问题描述 1 数据准备 2 问题分析 3 问题拓展 3.1 跳出率计算 3.2 计算从浏览商品到支付订单的不同路径的用户数,并按照用户数降序排列。 往期精彩 0 问题描述 统计从浏览商品到最终下单的各个步骤的用户数和流失用户数,并计算转化率 用户表结构和…

Autosar-Os是怎么运行的?(内存保护)

写在前面: 入行一段时间了,基于个人理解整理一些东西,如有错误,欢迎各位大佬评论区指正!!! 1.功能概述 以TC397芯片为例,英飞凌芯片集成了MPU模块, MPU模块采用了硬件机…

什么是Maxscript?为什么要学习Maxscript?

MAXScript是Autodesk 3ds Max的内置脚本语言,它是一种与3dsMax对话并使3dsMax执行某些操作的编程语言。它是一种脚本语言,这意味着您不需要编译代码即可运行。通过使用一系列基于文本的命令而不是使用UI操作,您可以完成许多使用UI操作无法完成的任务。 Maxscript是一种专有…

(一)QT的简介与环境配置WIN11

目录 一、QT的概述 二、QT的下载 三、简单编程 常用快捷键 一、QT的概述 简介 Qt(发音:[kjuːt],类似“cute”)是一个跨平台的开发库,主要用于开发图形用户界面(GUI)应用程序,…

vim交换文件的作用

1.数据恢复:因为vim异常的退出,使用交换文件可以恢复之前的修改内容。 2.防止多人同时编辑:vim检测到交换文件的存在,会给出提示,以避免一个文件同时被多人编辑。 (vim交换文件的工作原理:vim交换文件的工作…

SpringCloudGateWay和Sentinel结合做黑白名单来源控制

假设我们的分布式项目,admin是8087,gateway是8088,consumer是8086 我们一般的思路是我们的请求必须经过我们的网关8088然后网关转发到我们的分布式项目,那我要是没有处理我们绕过网关直接访问项目8087和8086不也是可以&#xff1…

将多目标贝叶斯优化与强化学习相结合用于TinyML

论文标题 Combining Multi-Objective Bayesian Optimization with Reinforcement Learning for TinyML 作者信息 Mark Deutel, Friedrich-Alexander-Universitt Erlangen-Nrnberg, Germany Georgios Kontes, Fraunhofer IIS, Fraunhofer Institute for Integrated Circuits …

Big Bird:适用于更长序列的Transformer模型

摘要 基于Transformer的模型,如BERT,已成为自然语言处理(NLP)中最成功的深度学习模型之一。然而,它们的一个核心限制是由于其全注意力机制,对序列长度的二次依赖(主要是在内存方面)…

26_DropDown使用方法

创建下拉框DropDown 其中样板Template 是展示的选项框 其中Caption 是选中某个选项之后 展示的内容(Caption Text 说明文字/Caption Image 说明图示) 修改其 说明文字Caption Text 创建一个说明图示Image 设置为居左 而Item是 展示的选项框所展示的文字与…

【redis进阶】redis 总结

目录 介绍一下什么是 Redis,有什么特点 Redis 支持哪些数据类型 Redis 数据类型底层的数据结构/编码方式是什么 ZSet 为什么使用跳表,而不是使用红黑树来实现 Redis 的常见应用场景有哪些 怎样测试 Redis 服务器的连通性 如何设置 key 的过期时间 Redis …

AI大模型开发原理篇-1:语言模型雏形之N-Gram模型

N-Gram模型概念 N-Gram模型是一种基于统计的语言模型,用于预测文本中某个词语的出现概率。它通过分析一个词语序列中前面N-1个词的出现频率来预测下一个词的出现。具体来说,N-Gram模型通过将文本切分为长度为N的词序列来进行建模。 注意:这…

Linux工具使用

1.gcc/g的使用 1.1程序翻译的过程 ①预处理:展开头文件,替换宏,调节编译,去注释。 ②编译:将代码变成汇编语言 ③汇编:将汇编代码变成二进制不可执行的目标文件。 ④链接:将多个我写的多个…

后端token校验流程

获取用户信息 前端中只有 await userStore.getInfo() 表示从后端获取数据 在页面中找到info对应的url地址,在IDEA中查找 这里是getInfo函数的声明,我们要找到这个函数的使用,所以点getInfo() Override public JSONObject getInfo() {JSO…

Python 梯度下降法(二):RMSProp Optimize

文章目录 Python 梯度下降法(二):RMSProp Optimize一、数学原理1.1 介绍1.2 公式 二、代码实现2.1 函数代码2.2 总代码 三、代码优化3.1 存在问题3.2 收敛判断3.3 函数代码3.4 总代码 四、优缺点4.1 优点4.2 缺点 Python 梯度下降法&#xff…

excel如何查找一个表的数据在另外一个表是否存在

比如“Sheet1”有“张三”、“李四”“王五”三个人的数据,“Sheet2”只有“张三”、“李四”的数据。我们通过修改“Sheet1”的“民族”或者其他空的列,修改为“Sheet2”的某一列。这样修改后筛选这个修改的列为空的或者为出错的,就能找到两…

2024年数据记录

笔者注册时间超过98.06%的用户 CSDN 原力是衡量一个用户在 CSDN 的贡献和影响力的系统,笔者原力值超过99.99%的用户 其他年度数据

7层还是4层?网络模型又为什么要分层?

~犬📰余~ “我欲贱而贵,愚而智,贫而富,可乎? 曰:其唯学乎” 一、为什么要分层 \quad 网络通信的复杂性促使我们需要一种分层的方法来理解和管理网络。就像建筑一样,我们不会把所有功能都混在一起…

JxBrowser 8.2.2 版本发布啦!

JxBrowser 8.2.2 版本发布啦! • 已更新 #Chromium 至更新版本 • 实施了多项质量改进 🔗 点击此处了解更多详情。 🆓 获取 30 天免费试用。