别人都说51单片机很容易学,为什么我学起来那么难,学了很久还没入门?
相对于STM32、ARV等,51单片机入门是相对容易的,寄存器配置比较简单,IO口为准双向口不需要配置方向。而且51单片机出现比较早,资料比较多,很多学习都开设51单片机的课程。学习单片机可以按照如下几个步骤去学习。
1. 入手开发板,勤动手
单片机是一门偏重于动手的技术,需要多动手,不要一直抱着书看,有的单片机类书籍讲的比较杂或者是从数据手册翻译过来的,正本书看完了说不定都不知道单片机使用什么开发环境去编程、使用什么工具去烧写程序。所以,如果要学51单片机就去买一块51单片机开发板,卖家会把编程环境、烧写工具、进阶步骤、各种学习资料都给配齐的。
2.看原理图,学习硬件设计
单片机开发板比较方便的地方就是就成了各种常用的外设电路,方便了初学者学习。在拿到开发板后,先看一下说明资料,有哪些功能电路,各种接口,再认知研究一下硬件原理图。硬件原理图与后面的编程密切相关,这些常用的电路,以后都可能会用到。
3.看配套例程,学习程序设计
原理图了解的差不多后,就可以编程了,先跑一遍例程,再看一下别人的程序是怎么写的,再新建自己的工程去实现功能,一般来说按照如下步骤去学习单片机的各种资源
GPIO口的配置,这是最基本的操作,与之相关的电路有:流水灯、控制蜂鸣器、控制继电器、按键输入、数码管显示等。通过这些功能,学习GPIO口的配置方法和硬件电路的控制方法。
定时器、中断、AD采样等,这类资源都是单片机的基本资源,通过例程学习这些资源的基本概念、工作原理、寄存器的配置方式等,可以结合前边的外设,实现自己想要的效果。
UART、RS232、RS485等通讯功能,借助例程学习各种通讯接口的含义、了解通讯协议。单片机的各类通讯基本都可以通过UART来扩展,记住常用的电平转换芯片和使用方法,学习如何配置相关的寄存器。
自己组合功能,通过上边的学习之后,就可以实现自己的功能了,根据外设资源自己组合功能,并编程实现。