嵌入式编程语言

嵌入式开发中,C/C++语言因其对硬件的直接访问能力和效率占据主导。C++的引用和智能指针解决了C语言中指针带来的安全问题。尽管其他语言在某些场景有所应用,但C/C++由于资源消耗少和广泛的社区支持,依然是嵌入式领域的首选。随着自动驾驶和物联网的发展,嵌入式开发的需求增加,但C/C++的地位依然稳固。
摘要由CSDN通过智能技术生成

嵌入式开发几乎离不开C/C++,虽然在一些嵌入式linux的开发场景可以选python、java,不过也需要BSP和SDK的支持,像操作系统移植、驱动开发几乎就是C的天下,最近有传闻rust也能开发linux内核模块了,但距离大规模使用看上去还很远,C++因为提供了比C更现代的面向对象和模板等特性,并且有大量开源代码库,在嵌入式linux领域也有大量的使用。如果是单片机开发,不管是裸机还是RTOS,C基本就是不二选择了,这么多年下来,不管是互联网资源还是各大公司的技术积累,C和C++都是最多的,总而言之呢,所以作为一个嵌入式软件工程师,这就是必备技能。

某种程度上来说,编程语言也体现了嵌入式开发的一些特点,很多时候我们需要面向硬件编程,这个面向硬件有两层含义。

  • 第一是说需要了解硬件特性,然后通过编程来访问硬件,例如通过读写寄存器完成对外设的控制,简单如GPIO,复杂一些像Ethernet控制器,除了了解硬件的操作逻辑,也需要了解引脚、电平、IO复用、、硬件缓存、DMA这些概念。

  • 第二是说硬件资源带来的限制,这是由于嵌入式产品通常针对具体系统,涉及的技术约束大概有计算能力,IO接口,内存,体积,功耗,等方面的约束,在这些约束下进行技术选型和系统设计,很多时候硬件选单片机,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值