确定好合适自己的单片机后,下定决心把这一款单片机学精通,要坚持住不要三天打鱼两天晒网。单片机中51单片机开发板和STM8单片机卖的比较好,16位单片机中STM32F1系列卖的比较好,现在好多单片机大神都建议直接入手STM32或者M3内核的单片机。
1、开发单片机学什么语言好?
单片机是一种可编程器件,单片机的出现使硬件设计变得更为简单,产品的功能也更强大,而程序就是单片机的灵魂。目前功能稍微复杂一点的电子产品,都是以单片机为核心,再加以不通的外设电路实现不通的功能需求,单片机的编程可以通过汇编语言和C语言来实现。1汇编编程的特点汇编是一种更接近于硬件底层的低级语言,硬件在编程时总线和地址非常重要,在汇编语言中,一般用助记符来替代机器指令的操作码,用标号代表操作数的地址,所以汇编语言和机器指令之间存在着唯一对应的关系,这就导致了不通系列的单片机其汇编指令集是完全不通的。
这样做是比较麻烦的,因为更改了单片机或者升级老产品之后,原有的汇编代码难以跨平台移植,只能再重新编写,所以,汇编的移植性非常差,由于是直接操作机器指令,所以在可读性上也非常差。这是汇编语言的两个最大的缺点,但是其优点就是执行效率非常高,从方便的角度上来说,汇编方便了硬件,但对工程师却不友好。2C语言编程的特点在前几年使用汇编编程的人还是挺多的,现在使用汇编的人原来越少,即使是写驱动的人也不完全使用汇编而是使用汇编和C语言结合的方式,
单片机的C语言编程具有两个最大的优点。第一个优点:易于移植有过单片机C语言编程的同行都有这样的经历,在编程时,首先要在初始化中配置单片机的寄存器,配置完之后的代码不再频繁的和寄存器打交道,所以使得C语言的层次非常清晰,在移植代码时,只需要根据新的平台修改一下寄存器的配置部分就可以了,功能主体部分几乎不用修改,
这也就是很多优秀程序员所倡导的当文档层次化编程的原因,每个功能块都对应一个C文件和H头文件,在移植时只需要把这两个文件拷走即可,方便了移植。从这个方面来讲,完全可以抛开单片机的寄存器配置来实现编程,这方面做的比较好的如STM32的官方库编程和CMSIS等,第二个优点:易于阅读由于C语言通过寄存器和硬件驱动/接口建立关系,编程者不用再去记忆枯燥的指令,而且C语言编程的层次化、模块化编程也大大提高了代码的可读性。
相比于汇编,C语言可以用更少的代码实现更复杂的功能,而且还更易于理解,这也是C语言越来越受欢迎的原因。3C语言对比汇编的优势通过前面的描述可以看得出来,C语言占有更多得优势,C语言易于跨平台移植、C语言易于理解、C语言易于延续,总之,从编程得角度C语言更受程序员们得欢迎。以上就是这个问题的回答,感谢留言、评论、转发,
2、现在学哪款单片机好?51,STM32。各品牌单片机的优缺点?
51简单便宜,stm32火热,avr高速,pic可靠,arm强大,每种单片机都像美女一样,有着她独特的魅力,在不同的领域中,有着广泛的应用,最强大的当属arm,从最开始的定位在高性能32位单片机,到现在手机芯片一家独大,arm的发展像是开了挂一样。但是机会总是青睐有准备的人,单片机也一样,能够运行linux操作系统的优势,使得IOS和安卓自然的选择了arm,这是arm公司多年坚持的回报。
功能强大自然需要学习的东西就多,学习做bootload需要懂arm汇编,做应用开发需要懂Linux,c语言,做驱动开发需要懂linux驱动,做界面需要c ,等等,甚至安卓也可以归类到arm开发中。arm单片机最强大,需要学习的东西也最多,51单片机最简单,可能只要会C语言就可以进行简单的开发,但是简单也带来问题,他不会跟开发arm一样,有专人开发硬件,需要开发者对硬件有一定了解。