设计与开发

如何学好单片机 如何学好单片机

小编 2024-11-24 设计与开发 23 0

如何学好单片机

了解单片机应用系统开发流程

我们学习单片机的目的就是为了进行嵌入式系统的开发,学好单片机首先要有一个整体认识,下面将简要介绍一下单片机应用系统的开发流程,如图1-22所示。

图1-22 单片机系统开发流程

(1)明确任务

分析和了解项目的总体要求,并综合考虑系统使用环境、可靠性要求、可维护性及产品的成本等因素,制定出可行的性能指标。

(2)划分软、硬件功能

单片机系统由软件和硬件两部分组成。在应用系统中,有些功能既可由硬件来实现,也可以用软件来完成。硬件的使用可以提高系统的实时性和可靠性;使用软件实现,可以降低系统成本,简化硬件结构。因此在总体考虑时,必须综合分析以上因素,合理地制定硬件和软件任务的比例。

(3)确定希望使用的单片机及其他关键部件

根据硬件设计任务,选择能够满足系统需求并且性价比高的单片机及其他关键器件,如A/D、D/A转换器、传感器、放大器等,这些器件需要满足系统精度、速度以及可靠性等方面的要求。

(4)硬件设计

根据总体设计要求,以及选定的单片机及关键器件,利用Protel等软件设计出应用系统的电路原理图。

(5)软件设计

在系统整体设计和硬件设计的基础上,确定软件系统的程序结构并划分功能模块,然后进行各模块程序设计。

单片机程序设计语言可分为三类:

➢ 机器语言 :又称为二进制目标代码,是CPU硬件唯一能够直接识别的语言(在设计CPU时就已经确定其代码的含义)。人们要计算机所执行的所有操作,最终都必须转换成为相应的机器语言由CPU识别、控制执行。CPU系列不同,其机器语言代码的含义也不尽相同。

➢ 汇编语言 :由于机器语言必须转换为二进制代码描述,不便于记忆、使用和直接编写程序,为此产生了与机器语言相对应的汇编语言。用汇编语言编写的程序执行速度快,占用存储单元少,效率高。

➢ 高级语言 :高级语言具有很好的可读性,使程序的编写和操作都十分方便,目前广泛使用的高级语言是C51。

汇编语言和高级语言都必须被翻译成机器语言之后才能被CPU识别。

(6)仿真调试

软件和硬件设计结束后,需要进行进行进入两者的整合调试阶段。为避免浪费资源,在生成实际电路板之前,可以利用Keil C51和Proteus软件进行系统仿真,出现问题可以及时修改。

(7)系统调试

完成系统仿真后,利用Protel等绘图软件,根据电路原理图绘制PCB(Printed Circuit Board)印刷电路板图,然后将PCB图交给相关厂商生产电路板。拿到电路板后,为便于更换器件和修改电路,可首先在电路板上焊接所需芯片插座,并利用编程器将程序写入单片机。

接下来将单片机及其他芯片插到相应的芯片插座中,接通电源及其他输入、输出设备,进行系统联调,直至调试成功。

(8)测试修改、用户试用

经测试检验符合要求后,将系统交给用户试用,对于出现的实际问题进行修改完善,系统开发完成。

单片机学习方法探讨

单片机学习的过程应该是一个循序渐进、不断学习、不断积累的过程,大致分为三个阶段。

第一阶段:掌握开发单片机的必备基础知识。

首先是熟练掌握单片机的基本原理,虽然现在单片机厂商众多,但各家单片机的基本结构和原理都比较相近,例如内核结构、内存分配、中断处理、定时计数、串行通信、端口复用等一些最基本的概念和原理。除此之外,我们还需要学习模拟电子、数字电子、C语言程序开发以及原理图和PCB(Printed Circuit Board,印刷电路板)设计等知识。只有扎实的掌握了这些知识,在进行系统开发的时候,才能顺利地进行原理设计、PCB布板、程序编写、系统联调等工作。

第二阶段:在掌握好一款单片机原理和应用的基础上,开始学习其他各家单片机,了解其独有的功能和特点。

例如实际工作中若客户要求低成本,那我们可以选用和泰、义隆、华邦等这类台湾芯片;如果客户要求工业级的性能,那么最好从PIC、NEC、飞思卡尔、NXP等这些欧美和日式单片机中选择;若要进行功耗的开发,选用MSP430系列应该有一定优势;在进行测量仪器设计的时候,C8051和AduC842这类数模混合芯片又显得比较实用。

另外,平时要注意技术积累。在项目开发过程中将一些常用的接口程序和控制算法整理成模块或者函数,日后若在其他的项目开发中有同样或者接近的需求时,原程序可以直接或者进行少量改动后使用,这样一来会节约大量开发成本。

第三阶段:在实际的项目开发过程中,不断深入研究单片机应用技术,不断积累应用行业的专业知识。

有了扎实的单片机应用相关的基础知识,并且熟悉掌握了几款不同类型单片机的开发方法后,对于各种实际的应用项目,往往还需要理解和掌握外围电路相关的原理和分析方法,并结合实际的应用背景,综合考虑各种因素,才能设计出性能最优、结构最合理的单片机应用系统。

新手如何学习单片机?看完本文不再迷惘,按部就班成为单片机大牛

单片机学习起来其实不难,反而是一件比较有趣的事情,之所以新手感觉比较难是因为不知道该怎么入手,从哪里开始学起。

学习单片机需要动手,不是照着课本去死记硬背。

所以学习单片机的第一个概念:确定好所学习的单片机具体型号

比如说,你要学习51单片机,你所确定的型号是STC89C52,这款单片机虽然比较老了,但是依然具有学习价值,DIP40封装的STC89C52单片机如下图所示:

51单片机

或者你选择STM32单片机学习,比如STM32F103C8T6,LQFP48封装的单片机如下图所示:

STM32单片机

确定了单片机的具体型号之后,出来第二个概念:确定使用的编程环境

在单片机学习初期,我们可能会弱化做PCB板子的概念,但是编程的概念一定要强化。所以在初期你手里如果有一块单片机的开发板是很有必要的。

编程环境是由所选择的单片机来确定的,比如说前边两款单片机都可以使用keil来编程,所以你要安装keil的编程环境,keil4的启动界面如下图所示:

keil

编写好的程序,如何下载到单片机去执行?所以第三个概念:下载器

下载器的选择也是有单片机的型号来确定的,以上两款单片机都可以通过USB/TTL或者是JLINK来下载,但是这里优先推荐JLINK,因为JLINK可以实现单步调试,大大提高学习效率,方便定位、解决问题。JLINK的图片如下所示:

jlink

经过以上三个概念后,你就可以认真学习单片机了,该学习哪些内容?

1. GPIO :就是学习单片机引脚的控制方法,将引脚配置输入或者输出,比如说:点亮发光二极管、控制蜂鸣器发声、控制继电器吸合、控制按键输入、点亮数码管等;

2.定时器 :学习单片机的片上资源timer,学习如何配置timer,如何设置初值,比如说:发光二极管定时闪烁、数码管显示的数值定时自加等;

3.UART :学习单片机的UART功能,学习RS232通讯,比如说:单片机发送字符用串口调试助手在电脑上显示;

4.IIC :学习IIC通讯,比如说用AT24Cxx系列实现数值的掉电保存功能;

5.AD采样 :学习模数转换知识,比如说:调节滑动变阻器,改变所采集的电压,实时显示此时的电压;

初次之外可能还有:SPI,液晶屏、点阵、外部中断、D/A 等,等你学到这里,你就可以根据自己的想法实现想要的功能了。

以上就是我的观点,写了有半个小时的时间,如果您有更好的方法那就留言讨论吧。

以下是精彩推荐:

把这几个功能学透,你就掌握了单片机 !

如何快速掌握一款单片机,可以从这几个方面入手!

如何用单片机设计一款简单的产品!

套路,快速掌握单片机的四个步骤!

大学老师都不会教你的干货:单片机开发产品流程!

欢迎关注头条号“玩转嵌入式”,获取更多单片机学习经验。

相关问答

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

我这边整理了一份0基础的入门资料,希望能帮助到你!一、关于单片机是否有很多问号?1.单片机是什么?答:单片机就是一个微型CPU,把程序烧录芯片里面,通过...如...

初学者如何快速上手 单片机 ?

如果需要快速学习好单片机,要从几方面做好准备:第一,硬件上的准备。器件资料首先得熟悉;芯片架构及指令集得清楚;芯片的外围电路设计从原理到器件选型要掌...如...

有Python基础的小白如何学习 单片机 ?

关于怎么学?个人觉得既然有python基础,就不要去找那种打着单片机的名号骗你学习python的教程了,如果有条件的话,就直接买个树莓派,再找一些关于如何实际它的...

单片机 前,需要首先 学好 模拟电路、数字电路、C语言这些知识吗?

严格来说,学习单片机前需要学好模拟电路、数字电路、C语言这些知识。不过这样的说法会吓住很多人,因为有相当一部分人对模拟电路、数字电路、C语言都不是很熟...

日和 学好 c语言 单片机 ?

你好,看你的标题应该是如何学好单片机.首先要有一个良好的心态,即是我要学习。第二就是你要对微电路感兴趣。为什么这样就可以时间控制什么的。有了这些条件...

学好单片机 的用处大吗?具体有哪些用处?

首先单片机主要应用于嵌入式领域,其他领域很少应用而是使用。单片机的应用非常广泛,最开始是“单板机”,它外部附加了PIO,CTC和SIO等外围器件。后来它们都...

单片机 难学吗?

如果有比较好的C语言编程、模拟电路和数字电路基础,还是很容易学的。学单片机主要靠实践,只要入了门,接下来就多学习,多练习就行了。有条件最好能自己买一块...

我是大一学生(开学大二),学习 单片机 之前应该先学会什么,具备什么能力,还有开发 单片机 软件用什么?

我在扩展PCB上已经设计了一个焊接AVR单片机Mega64/128的位置,可方便的替换现在的MCU,这款MCU的内存可达128KROM、4KRAM,基本可以满足移植uCOSII的要求,...

单片机 是怎么工作的?

单片机就是多片机集于一片的机,俗称“微处理器”。多片指的是:处理器、存储器、ROM(FLASH)、RAM、I/O、定时器、时钟电路、复位电路等等。首先,我们想实...单...

学习 单片机 难么?

学习单片机的难度因个人的背景知识和学习能力而异。以下是一些常见的因素,可能会影响学习单片机的难度:1.编程经验:如果你具备一定的编程经验,学习单片机可...

猜你喜欢