如何学习单片机?

把这几个功能学透,你就掌握了单片机单片机的学习绝不仅仅是对一项知识的掌握。想要学好单片机,需要从硬件结构、内部资源、外设应用等几个方面多方位入手。而要想成为一名嵌入式工程师,就要对单片机的基础非常熟悉,并且掌握C语言当中各个功能的初始化、启动、停止各类函数的编写调试。那么想要掌握单片机需要从哪几个方面入手呢?1. 数字I/O的应用在大多数的单片机实验中,跑马灯实验正是数字I/O的典型应用,也是跑马灯的实验被安排第一个的原因。

通过将单片机的I/O引脚位进行置位或清零来点亮或关闭LED灯,虽然简单,但是这就是数字电路中的逻辑功能。数学I/O应用的实验还有按键实验,当按下某键时,某LED灯被点亮。数字I/O实验教会我们单片机的编程思想,必须首先对单片机的相应寄存器进行配置,以初始化I/O引脚,这样才能使该引脚具备数字输入与输出功能。

单片机的一个内置或外置功能的使用,就是对该功能相关的寄存器进行设置,初始化,而这便是单片机编程的特点。少则4、5个函数搞定,多则十几行程序,要有耐心,别怕麻烦,所有的单片机都是这样。2. RS232串口通讯单片机都有UART接口,这个简单、古老的通讯方式可以与我们PC机的RS232接口直接连接通讯,当然,因为它们两者电平逻辑不同,必须要使用一个RS232电平转换芯片才能与PC机连接,例如Max232芯片。

UART接口的使用是非常重要的,通过这个接口,我们可以使单片机与PC机之间交换信息,“接口”概念的学习也便由此引入。使用UART接口也会学习到目前最为简单与常用的通信协议等知识。对于无法在线调试的单片机,也可以通过PC机的串口调试软件来监视到单片机实验板的数据。3. 定时器的使用学会定时器的使用,就可以利用单片机来实现典型的时序逻辑电路。

时序逻辑电路的应用是最强大、最广泛的。例如,在工业的控制中,我们让某个开关每隔1秒钟打开与关闭一次。这个方案可以通过普通的数字集成电路实现,也可以通过PLC来实现,也可以通过CPLD或FPGA来实现,但是只有单片机的实现是最简单,成本也是最经济的。定时器是单片机内部资源里最为重要的一个,更是逻辑与时间控制实现的基础。

4. 中断在单片机软件设计架构中,一段程序循环执行是其一个特点,也是一个弊端。每个操作指令的执行都需要一定的执行时间,如果程序没有执行到该指令,则该指令的动作就不会触发,这样就会忽略许多快速发生的事件,例如方波频率检测的上升沿。针对在单片机程序正常运行时能够对外部事件立即做出响应而设计了中断功能。当中断功能执行时,单片机优先处理中断程序,当中断处理完成后,再回到单片机的正常程序执行中。

中断的机理是比较容易理解的,但是什么时候打开中断,什么时候关闭、屏蔽中断,需要如何配置才能使能中断的某些功能,中断里要执行哪些程序,这些程序的要满足哪些要求就需要花些时间去理解与实践了。中断学会后,就可以编写复杂结构功能的程序,可以一边闪着小LED灯,一边扫描着按键,一边发送着数据,也可以干着多个事情……比如,中断功能可以使单片机吃着碗里的,看着锅里的。

根据传说中的8020定律,如果掌握了上面提到的这四步,那么就说明已经学会单片机80%的内容了。5. I2C,SPI通信单片机系统毕竟资源有限,而利用I2C、SPI通讯接口进行扩展外设是最常用的方法,也是非常重要的方法。这两个通讯接口都是串行通讯接口,典型的基础实验就是I2C的EEPROM实验与SPI的SD卡读写实验。

6. 比较、捕获、PWM功能比较,捕捉与PWM功能可以使单片机更加适合电机控制,信号检测,实现电机速度与步长的调节。PWM波现在又是LED调光的主要手段。这里已经初步接触了数字电路里的模拟电路部分。7. AD模数采集单片机目前基本都自带多通道A/D模数转换器,通过这些A/D转换器可以单片机获取模拟量,用于检测电压、电流等信号。

学习时要分清模拟地与数字地,参考电压,采样时间,转换速率,转换误差等重要概念。这一步学会了数字电路控制模拟电路部分,而最简单的A/D模数转换器就是电压表实验。8. 学习USB接口、TCP/IP协议、工业总线目前主流的通讯协议为:USB协——下位机与上位机高速通讯接口;TCP/IP——万能的互联网使用的通讯协议;工业总线——诸如Modbus,CANOpen等工业控制各个模块之间通讯的协议。

怎么从零学习单片机操作?

学习单片机需要具备一定的电路基础、数字电路、模拟电路、信号系统、C语言编程等相关的基础知识。单片机的学习包括硬件设计和编程设计,早期单片机用汇编编程的人比较多,现在越来越多的人用C语言进行编程。下面和大家分享一下如何快速有效的学习单片机。1从51单片机开始学习编程很多人建议可以直接从STM32、ARV、MSP430等单片机开始,在做产品的时候大家可以根据具体需求选择这类单片机。

但是从零基础入门的角度考虑,我还是建议单片机从51单片机开始。因为51系列单片机进入中国最早、使用人数较多、资料较多,最关键的寄存器配置比较简单。有了数模电基础、C语言基础后,就可以买一块51单片机学习编程了。在学习编程的时候要有顺序,先从操作单片机的GPIO口开始,再学习定时器、中断、AD采样、PWM输出,最后再学习UART、IIC、SPI等通讯方式,经过上述步骤之后,对单片机就有了基本的认识。

2学习硬件的设计单片机编程是基于硬件基础之上的,了解了编程之后,再来学习一下单片机硬件的设计。目前的电子产品,基本都是以单片机为核心,再根据不通的需求,围绕单片机搭建不通的外设电路。在设计电路时,就要考虑好方案是不是利于编程。硬件的学习,也要从基本的电路开始,如LED灯电路的设计、继电器电路的设计、蜂鸣器电路的设计、数码管电路的设计、RS232/RS485电路的设计等,虽然都是独立的模块,但是可以通过编程联系到一起,这也是先学编程后学习设计电路的原因。

3学习做项目学习单片机是为了做产品。在学习阶段可能没有参与项目的机会。可以根据自己的想法去提炼一些需求,最终设计电路、写程序去实现。或者自己试着去实现一块单片机开发板,学习单片机的过程是要花钱的。如果身边有参与项目的机会,一定要把握。在项目中实践自己的所学,在项目中扩大自己的知识面。以上就是这个问题的回答,感谢留言、评论、转发。

学习单片机需要什么知识基础?

朋友们好,我是电子及工控技术,我来回答这个问题。单片机作为一种实践性非常强的技术,要想入门单片机就要有做一些准备,有一句话叫“兵马未动,粮草先行”,我们学习单片机技术也是这样,在学习前我们要做一些准备工作,根据我学习的经验,我认为学习单片机需要做如下的准备,下面和朋友们聊聊学习单片机的那些事。学习单片机技术的知识储备数电和模电知识单片机的控制少不了外围电路的参与,在单片机的外围电路中以数字电路为主,同时还要辅助一定的模拟电路。

比如外围电路的各种芯片都是以数字芯片为主例如译码芯片、锁存芯片、移位芯片等。所以掌握一定的数字电路知识和模拟电路知识是学习单片机必备的基础。另外还要学习一下传感器知识,因为在深入学习后要制作一些小项目,比如温度控制、遥控小车、红外遥控、PM2.5检测等都要传感器的参与才行。所以这些知识的储备非常重要。

操作技能知识的储备要学好单片机就要“手脑并用”,要用到手就必须有扎实的焊接基本功,因为单片机就要靠不断的去焊接硬件、编写软件在“玩”的过程中学到了知识与技能,因此在学单片机之前要有一定的焊接技能和焊接理论也是分有帮助。学习单片机物质的储备硬件方面来说有句话叫“工欲善其事,必先利其器”,所以在学习单片机之前有一套单片机学习板很有必要,我建议如果有了一定的焊接技能的话最好自己先焊接一套单片机电路板,起初先焊接最简单的,比如从单片机最小系统电路开始焊接,以后慢慢扩展,以模块化的方式进行拓展最好,这是硬件方面的准备。

软件方面来讲由于单片机是一个软硬结合的技术,说以在软件的准备上也要做一下准备,比如常用的单片机编程软件也非常的多,我常用的是Keil软件非常好用,在学习之前可以准备一下,同时还要下载软件,我常用的时STC的一个下载软件,下载成功率挺高,可以安装试试。操作工具方面在操作工具上主要是准备一些下载线,主要用来“烧写”自己所编写的程序用的。

下载线有串口的也有并口的,比如USB串口也可以用RS232串口。以上的学习成本都不大,最大头的是要准备一台笔记本或者台式电脑,这是学习单片机比不可少的,也是学习单片机主要的投入。学习单片机思想上的准备学习单片机最后一个方面是做好“打持久战”思想准备。因为单片机技术的学习不是一天两天就能学会的,要有坚持不懈的毅力和决心。

c语言,单片机应该怎么学习呢?

单片机是一门很有用的技术,懂单片机可以找一份很好的研发岗工作。所谓万事开头难,在初学入门阶段可能摸不着头脑无从下手,如果有了比较好的学习方法单片机学习起来也是很有趣、很容易的。和大家分享一下单片机以及单片机C语言编程的学习方法。1.选择一块单片机开发板不管你是从51单片机开始,还是直接从STM32、AVR开始,建议买一块单片机开发板。

切记,在学习单片机的时候不要和学习高数一样天天抱着书看,单片机是一门实践性非常强的课程,如果只看书不动手永远是纸上谈兵。书都不要看,直接买一块开发板,对单片机而言,最好的书就是单片机的数据手册。2.学习单片机普通GPIO口的配置方式不管你选择哪个型号的单片机入门,其学习方法都是一致的。首先要学习单片机普通GPIO口的配置方法,这包括单片机GPIO口的输出控制和输入检测。

比如学习如何用C语言实现单片机点亮LED灯、如何用C语言控制蜂鸣器发声、如何用C语言控制继电器动作、如何用C语言实现按键电灯、按键使蜂鸣器发声、按键使继电器动作等。3.学习单片机的定时器、AD转换、中断等片上资源单片机具有丰富的片上资源,合理的使用这些片上资源可以简化产品的设计使方案最优。所以学习这些片上资源非常重要。

这些片上资源包括定时器,可以实现定时功能或计数功能,该功能非常有用。单片机的AD转换功能可以将模拟量转化成数字量,在信号采集方面是非常重要的。使用单片机的中断资源可以节省单片机的资源,提高代码执行效率。4.学习UART、IIC、SPI、CAN等通讯功能通讯功能可以实现数据的传输,如wifi、蓝牙、RS485等都是常用的通讯功能,所以这一块一定要学习。

现在绝大多数的单片机都带有UART、IIC、SPI甚至CAN通讯功能,其他一些通讯功能可能都是由这几种通讯功能延时出来的,比如说UART功能配合不同的电平转换芯片可以实现RS232、RS485、CAN,甚至蓝牙和wifi通讯等。5.参与/主导单片机项目学习的目的是为了以后能够用单片机设计出方案合理、性能稳定的产品,所以要抓住参与项目的机会,在项目中锻炼实践动手能力。

初学者选择哪种单片机学习比较好?

单片机的种类很多,若基础知识扎实,不论选择哪款单片机入门皆可,但对于普通的单片机初学者建议还是以简单的AT89S51单片机入门较好。选用该单片机入门有以下优点。▲ AT89S51单片机。1、AT89S51单片机内置资源较少,初学者不需要记忆大量的暂时用不到的知识点。假设对单片机一窍不通,上来就去学MSP430或MC9S12这类单片机,将会增加学习难度,甚至知难而退,再也不想学习单片机了。

2、51单片机的中文资料、视频及图书很多,学习这类单片机,各种资料很容易获得,降低了学习成本。另外,懂这款单片机的人也很多,自学时遇到不明白的,在网上提问,很多网友亦可以给予解答。试想一下,若选择了一款较陌生的单片机(譬如C8051F300),遇到不明白的,找个老师请教也比较难。▲ ATtiny13单片机。

上述的AT89S51只适合入门学习,开发产品不适合选用该单片机,因为其内置资源很少,所以51单片机入门之后还需要学习一些较高端的单片机。这里推荐学习AVR或者STM8单片机。AVR单片机型号很多,像ATmega16、ATmega328皆为现在常用的单片机,内置资源很丰富。另外,AVR的ATtiny系列单片机有很多体积小巧的单片机,譬如上图中的ATtiny13只有8个引脚,工作电压范围为1.8~5.5V,内置1K Flash存储器、4路10位ADC及模拟比较器,ATtiny9单片机的引脚只有6个,并且价格低廉。

会51单片机,如何快速学习使用STM32单片机?

谢谢邀请,我是大学读的电子信息工程,最开始也是学习的51单片机,用51单片机做过几个小实验,毕业后,工作需要,做过半年AVR,然后又因为项目需要,就转到stm32单片机了,当时学习STM32是自学摸索,所以在学习STM32,我有自己的看法。STM32的固件库,除了启动文件.S文件,其他的底层,其实是使用寄存器地址,映射到相关的位置,然后使用结构体定义,用指针替代,最后形成对应的寄存器,比如GPIOE-


文章TAG:单片机  学习  
下一篇