主页 > 技术经验 > 正文

如何学习单片机?需要从哪几方面入手?

2022-06-27 13:37来源:未知编辑:lyh

扫一扫

分享文章到微信

扫一扫

关注99科技网微信公众号

如何学习单片机?99科技网小编为大家解答。

单片机的学习绝不仅仅是对一项知识的掌握。想要学好单片机,需要从硬件结构、内部资源、外设应用等几个方面多方位入手。而要想成为一名嵌入式工程师,就要对单片机的基础非常熟悉,并且掌握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等工业控制各个模块之间通讯的协议。这些都会应用在未来的项目里,集成入单片机里的固件,并且也是当前产品开发的一个发展方向。

99科技网:http://www.99it.com.cn

相关推荐
技术上如何学习,才能取得较大进步? 技术上如何学习,才能取得较大进步?

技术上如何学习,才能取得较大进步?分享一些个人看法。技术上的学习往往有

技术经验2022-06-29

怎么科学的学习英语单词? 怎么科学的学习英语单词?

按频序从高到低学 一般说来,按词汇量, 中考1500, 高考3500, 四级4500, 考研

技术经验2022-06-27

应该怎样一步步地学习人工智能?谁有成功的经验? 应该怎样一步步地学习人工智能?谁有成功的经验?

人工智能本质就是使用机器学习算法,通过数据挖掘来训练出最优的算法模型,

技术经验2022-06-27

学习电子技术,你认为最主要学习好哪些方面的经验与技术? 学习电子技术,你认为最主要学习好哪些方面的经验与技术?

学好电子技术这个命题太广了,现在的电子技术在应用中细分的领域太多,每一

技术经验2022-06-26

为何科技非常需要科研经验积累? 为何科技非常需要科研经验积累?

科研即科学研究 指研究、发明、实验等,重点是研究,还处在研 究中,是正在

技术经验2022-06-26

推荐几个可以自学计算机的网站 推荐几个可以自学计算机的网站

是的,大学生都很忙! 每天都有各种社团活动、每天都有做不完的作业、每天

技术经验2022-06-26

计算机科学与技术如何提升学习成就感? 计算机科学与技术如何提升学习成就感?

我是趣谈,我来作答,欢迎关注! 计算机科学与技术主要学习的是计算机硬件

技术经验2022-06-25

提高农民的科技水平:改善农业装备 提高农民的科技水平:改善农业装备

我是大西北阿文,很高兴回答, 第一改善农业装备,是建设现代农业的重要内

技术经验2022-06-25

初高中生适合学习什么技术? 初高中生适合学习什么技术?

谢河口宝宝王朋友邀答! 您问初高中生学什么技术好!我个人认为,小孩要学

技术经验2022-06-23

学什么技术好挣钱? 学什么技术好挣钱?

应该是学机械修理,比如:汽车修理,大中型建筑机械修理,包括挖掘机,铲车

技术经验2022-06-23