stm32程序是用什么语言写的?

STM32程序主要使用 C语言 编写,这是绝对的主流。在某些关键场景下会嵌套汇编语言,也有一些新兴的替代方案。

一、核心语言:C语言

为什么是C语言?它平衡了性能和开发效率,既能直接操作硬件寄存器,又有足够高的可读性和移植性。无论你用标准外设库还是HAL库,底层逻辑都是用C语言实现的。即便是你之前可能接触过的Arduino,其底层也是C语言。

二、特殊场景:汇编语言

汇编语言不会用来写整个工程,但在两种场景下必不可少:

· 启动代码:芯片复位后,需要一段汇编代码来初始化堆栈指针、准备C语言运行环境,最后再跳转到 main() 函数。

· 精确控制/性能优化:在操作系统中实现任务切换(需精确操作寄存器),或编写对时间要求极严的底层驱动时,可能会内嵌汇编。

三、现代选择:其他语言

· C++:可以用,但开启异常和RTTI会显著增加代码体积,在资源有限的STM32F103C8T6上需要谨慎配置。

· MicroPython:一种在STM32上跑Python解释器的玩法。语法简单,适合快速验证,但实时性和运行效率不如C语言。

· Rust:一种强调内存安全的现代语言,在嵌入式领域发展很快,但学习曲线较陡,资料也不如C丰富。

总结

· 入门首选:C语言。资料最多,库最全,是探索STM32世界的钥匙。

· 学习建议:C语言基础(特别是指针和位操作)需要熟练掌握,这是看懂寄存器配置的关键。

相关推荐
FreakStudio8 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
LDR00613 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
✎ ﹏梦醒͜ღ҉繁华落℘13 天前
单片机基础知识---stm32单片机的优先级
stm32·单片机·mongodb
Luminous.13 天前
C语言--day30
c语言·开发语言
玖玥拾13 天前
C/C++ 数据结构(七)栈、容器适配器
c语言·数据结构·c++··容器适配器
謓泽13 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
不会C语言的男孩13 天前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
u1521096484913 天前
S.S.Audio PRO A2音频隔离器
嵌入式硬件·音视频·实时音视频·视频编解码·视频
zd84510150013 天前
RS485 总线详解
单片机·嵌入式硬件
半条-咸鱼13 天前
【STM32】I2C协议原理、HAL读写与OLED显示操作
嵌入式硬件·c·信息与通信