如何学习32位单片机
作为一个10年电子工程师来说,我使用过8位、16位、32位的单片机。不要纠结是8位单片机还是32位单片机,位数对开发工程师的使用并不是非常关键,因为这个难题已经被编译器给处理了。在学习的过程中难免走了很多弯路,我就简单的和大家分享一下。
刚开始学习的时候就是在摸石头过河,但凡遇上个问题就能卡个半天,能走到今天靠的是坚韧的意志不屈服的精神顶过来的。想当年建立个的工程就花了差不多四天的时间,但是建51的工程就是手到擒来的事,所以感觉起来stm32比51难上不少。
现在回过头来看完全没有必要学怎么建工程。因为后来我再也没有建过工程,每次都是使用建好的工程模板。所以我认为初学的时候也就没必要过多的去纠结如何学建工程。随便拿个闪烁灯的工程进行修改操作。
学习的时候也不用过于执拗,比如说IO口的高低电平操作,只要会用了就行。要知道人类的原始本能就是模仿,我们开始只需要多去模仿别人的程序甚至直接拿来用也可以,不要给自己增加难度老是做重复的工作。等学习一段时间后对芯片了解差不多,再回过头来看看之前想深入学习的东西。
学习的时候千万不要从头到尾的学,完全看完书或者学习资料再去做,因为现在单片功能太多,学是学不完的。而且技术这东西要多使用多实操,长时间不用很容易就忘掉。我觉得工作这10年,用到的功能连50%都不到。无非就是IO、UART、Timer、ADC、DMA等模块,其它通信IIC,SPI等全部用IO口模拟。
刚开始的时候经常去浏览别人程序当时只是浏览了一遍,了解了一下大体功能,感觉有用就复制下来了等用的时候直接复制粘贴。有些别人提供的程序、例程等都可以直接拿来使用。能不自己敲代码就不要自己敲,要学会利用别人的程序来节约自己的时间。
学单片机就是学应用,通过调用芯片里的东西然后结合别人的代码能让它跑起来也是可以的,其它的不要纠结太多。把简单的学会了就有成就感,就越学越有劲,形成良性循环,你就可以在这个领域坚持下去。
我们知道单片机,也叫MCU,一般有8位,16位、32位;在不同功能需求和成本要求根据具体情况来选择适合的单片机。
至于32位单片机好不好学习,这个不是一两句话能说的清楚的,要结合很多的因数,比如你的兴趣爱好,你的C语言水平,你的电子电路知识、你的自身学习能力、动手能力等等都有一定的联系。
市面上用的比较多的的32位单片机应该是ST的,也有比如NXP,瑞萨,富士通等。其实我们使用单片机主要是控制外围设备,单独一个单片机没有任何意义,所以学习单片机本身不是很难,我们大部分时间是在和外围的功能设备做交流、相互沟通的调试,大部分单片机本身的操作,原厂会做好SDK给你,不用太担心这个的问题。
说到单片机就得说到软件,目前主流的语言就是C语言,当然目前也有使用python的,但从效率而已,目前高级语言中,C语言效率最高了!所以要学好单片机,就必须有扎实的C语言基础!不然看例程都费劲,就别说学习了!学习32位单片机,可以找个普遍的单片机进行入手学习,比如ST的,网上教程多,资料多,使用广泛,是个不错的入门选择!
学32位-51单片机的方法和思路
对于有一定的单片机基础,能够熟练掌握51/avr单片机开发的同学来说,32位单片机,是比较好学的,因为不涉及linux。
对于没有单片机开发基础,甚至连C语言基础和模拟电路基础很差的同学来说,那么32位单片机就十分难学。
为什么这么说呢?
32位单片机,目前比较常见的是STM32,cortex-M3内核就是32位的普通单片机,常见寄存器开发和固件库开发,需要使用C语言的结构体和指针。
51单片机的寄存器简单很少,外设也简单,简单的代码就能实现功能各种简单的功能,而32位单片机的外设会比51单片机更多,其配置过程更为繁琐,32位单片机的时钟配置,时钟树的使能,比如以太网,FSMC,SDIO等功能的使用。
学习32位单片机,或者说学习51单片机,需要掌握解决BUG的能力,各类调试过程,接口协议,外设芯片的接口时序等, 假如没有任何基础或者基础薄弱,那么连开发环境调试过程都会出遇到各种问题。
学习32位单片机,如果没有好的方法和思路,那么也会很难学,需要掌握32位单片机的时钟树,基本的开发流程,开发套件和平台,从简单到复杂循序渐进,再找一个老工程师,可以探讨请教。
想学好单片机,不管是51单片机还是32位单片机,都需要努力和认真,不要想着短时间就能熟练掌握.一定要认真钻研,对按键,led,串口接收发送等等都认真死磕到底,这样,就能在后续的项目中,游刃有余。
相关问答
32 位在 单片机 里什么意思?指数据总线32位,从4位,8位,16位,32位,到64位,位数越大,处理速度越快指数据总线32位,从4位,8位,16位,32位,到64位,位数越大,处理速度越快
STM 32 是什么,是 32 位的 单片机 吗?STM32是一款普通的单片机,一款能够让普通工科学校的孩子吃上饭的单片机。1、嵌入式软件工程师的一个方向,就是对STM32进行编程。一般谈起嵌入式,首先想到的...
32单片机 有多少个flash?32的面积有16个fries。32的面积有16个fries。
32单片机 哪一年生产的?AVR32单片机是ATMEL公司在2006年继AVR(8-BITMCU)之后推出的,由ATMEL公司独立研发(这点与ARM不同),它也不同于其它32位的ARM。AVR(8-BITMCU)是1997...
8位 单片机 和 32 位的区别?8位单片机和32位单片机的主要区别在于其处理器的位数不同,从而影响了其计算能力、存储空间、接口数量等方面的特点。具体区别如下:计算能力32位单片机的处理...
32单片机 能承受多少电流?答:32单片机能承受电流:STM32一般引脚最高耐压到4V,而且这个耐压值还受限于引脚的灌电流,鉴于楼主使用的是AD输入引脚,如果参考电压为3.3V,输入电压大于3....
学会 32单片机 要多久?如果同时学C语言和单片机的话预计需要15-20天左右。加上硬件基础的5天,入门总共需要25天。单片机(Single-ChipMicrocomputer)是一种集成电路芯片,是采用超...
51单片机和 32单片机 对比?51单片机是对所有兼容Intel8031指令系统的单片机的统称,这一系列的单片机的始祖是Intel的8031单片机,后来随着flashROM技术的发展,8031单片机取得了长足的进...
为什么 32单片机 头文件找不到?有几种可能的原因导致无法找到32单片机头文件:1.头文件路径错误:检查头文件路径是否正确设置。确保头文件位于正确的文件夹中,并且在编译器的搜索路径中。2...
32单片机 点亮led led要初始化么?STM32单片机驱动LED时需要初始化所用引脚的输出模式。如果是高电平点亮LED,引脚要配置成推挽模式;如果是低电平点亮LED,引脚可配置成开漏模式或推挽模式。至...