现在单片机开发基本上都使用C语言,很少很少使用汇编语言。一是因为汇编语言复杂,难以维护,开发周期长,二是因为现在的单片机存储器越来越大,基本上没有必要为了节省少量空间去大量延长项目周期,三是因为现在的编译器的效率和汇编语言相差很小,基本上可以达到,水平,没有必要使用汇编。不应该说单片机是否支持C语言,目前任何计算机都不直接支持C语言。而应该说某个单片机的开发环境是否支持C语言。就目前来说,几乎所有的单片都有支持C语言的开发环境。用的最多的应该是KEIL,既支持,片机,也支持ARM的C语言开发。另外TI的CCS支持,C语言开发。
C语言是一门特定的程序语言,它有一套严格的规范,不同编译器可以有不同的实现算法,但必须符合C语言的语法规则,如DEV-CPP、VC、GCC、TC这些比较流行的软件都提供了C语言的编译器。学习单片机编程不一定要学习C语言,但必须学习单片机的系统组成,只有熟悉它的内部结构才能熟练地使用它。开发环境与工具链通用C语言的开发环境和工具链相对成熟和多样化,如GCC、Clang等编译器可以在多种操作系统和平台上使用。而单片机C语言的开发通常依赖于特定的开发环境和工具链,这些工具需要支持特定的单片机型号,并且通常需要在嵌入式系统或特定的硬件平台上进行开发。
先学c,汇编大致了解一下就可以了,对于普通的项目,只要学好c就行了,但不是足够了。现在流行的单片机开发编程语言有汇编、c、c 。它们是可以相互依托的,比如要求开发速度,我们可以尽量用c或c ,因为它们都比用汇编完成任务速度要快。比如要求执行速度,我们必须考虑使用汇编。C语言是目前世界上流行、使用最广泛的高级程序设计语言。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维。
但是不同的CPU,其汇编语言可能有所差异,所以不易移植。对于目前普遍使用的RISC架构的,itMCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言。举例来说标准的C你应该熟练掌握指针,输入输出结构。但是对于单片机就不同了,一般来说C语言写单片机的程序时,我们不用指针的。还有就是用C写单片机程序,要注意代码效率的问题。(因为单片机不是PC机,它的ROM十分有限)有的算法对于单片机不能用的。比如说函数的递归调用等。
感谢您的来访,获取更多精彩文章请收藏本站。

暂无评论内容