当前总的来说C和汇编最普及,一些不太常用,但有不少铁粉的有如:basic, pascal, elua, ePython, Javascript等高级语言。
近年来,随着单片机计算能力增强,内存和闪存增大,外设增多,带OS的解释型语言有大举进军单片机之势,一些分布式传感器、控制器等应用,很多既需要联网使用,又要有很好的可扩展性和在线更新/升级的能力,用传统的裸奔方式开发,没有一定用量的话成本就高去了,现在不是讲“个性化”嘛,这样就得用小批量、差异化来做产品。
解释语言如elua,epython等有大量的pc经验程序员可以稍加学习就可以做,即使产品不够完美,也可以先少量出产品,然后不断在线迭代,逐步满足用户不同需求,这是传统做法达不到的。当然,就当前而言,大量的产品还得靠C和asm。
感请。
首先解释一下什么是单片机。
单片机也被称为微控制器,英文为Microcontroler,它最早被用在工业控制领域。“单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。”早期的单片机是4位或者8位。其中最成功的是INTEL的8031。
单片机有一个很重要的优势,就是可编程,通过程序可以实现各种各样的逻辑功能,修改更灵活,更能减少硬件成本,尤其单片机已经发展到16位,32位,片上集成了各种丰富的片上资源后,单片机已经渗透到了我们生活的各个领域、各个方面。
控制单片机执行逻辑功能,就需要编程。编程需要用到汇编语言或者是C语言。
1.汇编语言
汇编语言,英文为assembly language,是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。普遍地说,特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间移植较为困难。早期单片机编程汇编比较普遍。
2. C语言
C语言是一门通用计算机编程语言,应用广泛。比较汇编,C语言是高级语言,可移植性好,颗结构化编程。使用标准C语言的程序,几乎都可以不作改变移植到不同的微机平台上,对于嵌入式等的微控制芯片,属于标准C语言的部分也很少需要修改,而且程序很容易读懂。
现在单片机编程,C语言已经很普及了,汇编用的少了,从写代码、读代码的角度来讲,C语言的优势太明显了。
以上就是我的观点,欢迎评论。更多精彩问答,请关注我的头条号“玩转嵌入式”。谢谢。
现在单片机的型号比较多,绝大部分编写单片机程序都用的比较多的语言有两种,一种是苦涩难懂而执行效率高的汇编语言;另一种是普遍受广大嵌入式工作者喜爱的C语言。以上两种语言是目前编写单片机程序用的最多的。
这两种语言各有优缺点,汇编语言好处是执行的效率高,它直截访问的是单片机内部的寄存器,但其可读性和维护性不好;而C语言好处是容易维护、可读性好并且接近人类语言,但执行效率只是汇编的80%。在做单片机大型控制系统时所用C语言较多;而在控制时间精度和实时性要求较强的场和应用汇编语言较多。现在有的编程软件可以支持c语言和汇编语言的混合编程,比如KeiI软件就是支持混合编程的。
当然还有一些单片机也有一些自己的编程语言,它们用的是精简指令,类似汇编语言的编程模式,比如OTP(一次性编程单片机)、PIC单片机等;还有一种是可编程的逻辑芯片(CPLD)运用的是硬件描述语言(VHDL)类似C语言风格。总体来说汇编语言和C语言是单片机两大主流编程语言!
以上是我对的回答,欢迎大家参与讨论并观注电子及工控技术!
原创文章,作者:普尔小编,如若转载,请注明出处:http://www.puerpx.cn/pxwd/5587.html