单片机的硬件和软件概念介绍

发布时间:2022-12-07  

整理了下当时学习单片机不明白的概念,自己总结和百度整理来的,所以有可能会有不当之处,希望大家见谅


硬件篇
MCU:微控制器,就是指单片机这类,控制是mpu最根本的区别
MPU:微处理器,就是cpu这一类,用于处理数据和运算;当然单片机也有处理和运算能力,但是在能力上弱了很多,更大的区别是相比单片机体系不是那么完整,他更像是单片机的一个内核,缺少相应的ROM RAM之类,这些都要外扩
SOC:和mpu和接近 但是他在内核的基础上集成了些外设,比如说S3C2440他在上面集成了USB接口TFT控制器等,ARM9等嵌入式芯片就是这类。
寄存器:这是初识单片机最常听见的词汇,其实他就是可以保持数据同时又能输入新的状态数据,51的很多寄存器就是从RAM中划分出来的一些单元,对他进行数值的设置可以得到不同的反应;单片机中通过对寄存器设置来得到所需要的功能。
RAM,ROM:ROM程序存储器,RAM临时数据存储器,程序是下载到ROM内,再有cpu读取到RAM,运算的过程当中的中间数据也是保存在RAM中,RAM的大小会对运算速度有很大的影响,类似于电脑内存,如果内存条过小的话cpu就必须在内存数据满了的时候去读取新的数据到里面,很大程度降低了速度。
API函数:提供了对硬件或者是操作系统进行访问的一些接口,其实就是一些对对象操作或反馈状态对象当前工作状态的函数和变量之类的东西。
晶振:类似于人类的心脏,他给单片机提供着一个有规律的周期,如同心脏间歇性的跳动推动血液的流动。他的频率快慢决定了时钟周期,和机械周期。
时钟周期:一个时钟脉冲所需要的时间。在计算机组成原理中又叫T周期或节拍脉冲。是CPU和其他单片机的基本时间单位。

机器周期:通常用从内存中读取一个指令字的最短时间来规定CPU周期(机器周期),也即CPU完成一个基本操作所需的时间。
指令周期:指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。
推挽、开漏、强上拉、弱上拉、强下拉、弱下拉输出:这些都是单片机IO口的工作模式,不同的外设对应不同的工作模式,比如不用驱动芯片驱动点阵的话就必须把io口设置成推挽模式,而对于无线芯片不加上拉电阻的话就要选择上拉或者是推挽,一般模式的话无线芯片不能正常工作,而开漏好像是用与io口作为输入口,因为去阻值会很大所以通过他的电流会很小,功率损失也可以很好地控制
串口:串行接口SerialInteRFace是指数据一位位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信
并口:并行接口中各位数据都是并行传送的,它通常是以字节(8位)或(16位)为单位进行数据传输。


控制器和驱动器:驱动器顾名思义就是驱动硬件工作的电路,而控制器是控制其如何工作,就比如S3C2440内部集成了TFT控制器,但是光控制器无法让TFT工作的,在TFT上有驱动他工作的电路,拆过舵机的就知道里面就是个普通的直流电机和块电路板,那电路板就是驱动器,而让舵机工作则需要单片机输出PWM(相当于控制器)
字节(Byte):字节是指一小组相邻的二进制数码。通常是8位作为一个字节。字节是通过网络传输信息(或在硬盘或内存中存储信息)的单位。网络上的所有信息都是以“位”(bit)为单位传递的,一个位就代表一个0或1,每8个位(bit)组成一个字节(Byte)。


算法:算法以我的理解就是完成某项工作或者是某项运算所采用的处理方式,比如搬运物品的话可以采用手搬,或者是小推车推运,同一问题算法多种多样,效率也不敬相同;
驱动:驱动是在操作系统与硬件之间搭建桥梁,使硬件正常工作的一种软件程序。如果广泛的认为就是让硬件发挥作用正常工作的程序的话,那单片机流水灯之类的也都是驱动程序。


时序电路:实施一连串逻辑操作,在任一给定瞬时的输出值取决于其输入值和在该瞬时的内部状态,且其内部状态又取决于紧邻着的前一个输入值和前一个内部状态的器件。
组合电路:组合逻辑电路由最基本的的逻辑门电路组合而成,输出值只与当时的输入值有关,即输出惟一地由当时的输入值决定。


软件
于51开始学习单片机的人的话最早书写的应该就是#include
#include就是文件包含命令,51用到的头文件很少,而且很多都是系统定义的,当你学习ARM就会发现要有很多的头文件,而且很多都是自己定义的,这个时候我们必须知道文件的路径,把他添加到调用它的c文件当中,如果找不到这个文件就会报错,添加的方法有两种,一种是在编译器中设置(不是所以编译器有效),还有是在包含命令中加入路径(详解请看#include的使用)。而reg51.h这个文件里面把各个寄存器和可以位操作的寄存器的各位定义一下。所以单片机芯片要操作都要对寄存器进行定义,s3c2440也有自己的寄存器定义文件2440addr.h,不过S3c2440同51单片机不同的是要包含启动代码,初始化s3c2440。否则2440无法工作


++a与a++的区别在于前一个是自加1之后参与运算,而另一个是参与运算之后加1,也就是说a++的话,在那一行代码中,a的值是不变的,下一行才发生变化,++a则是在那一行已经发生了变化。


刚从8 bit单片机玩32 bit会很不不习惯,原因是操作方式变化了,之前的51单片机的话改变寄存器直接位操作或者是寄存器操作赋值就好了,但是32位处理器就不同了,因为位有32位那么多,不可能清楚每一位应该操作的数值,直接赋值务必造成误操作。


X bit置1:(寄存器标示符)=(寄存器标示符)||(1<X bit置0:(寄存器标示符)=(寄存器标示符)&& ~(1<指针在c中是个很重要的部分,其实也不要把它看得太难,他其实就是一个存取地址数据的一个量,可以通过*号读写他地址当中的内容,也可以通过&给他取新的地址,在没有对指针取地址的情况下不要对地址里的内容进行操作,因为没有取地址的情况下指针所指的地址是随机的,在草率操作的情况下可能会破坏之前的数据导致出错。指针最常见的就是对数组进行操作了,当指针指向的是一维数组的时候指针变量每次自加1之后就指向都是原来数的下一个(需要注意的是指针如果指向的是数组的最后一位的时候再加1的话他不会又跑到第一位,而是未知的数据,这时候需要做的是重新取地址),对数组操作的方法除了不断自加1的方法还有*(p+5),*p表示指向的数组的那位,*(p+5)表示在*P的基础上移动5个数。二维也类似,可以通过自加操作,和*(*(p+x)+y)的方式操作,指针除了在数组上用还可以当函数的参数啊,指向函数啊,详细的可以看信盈达c经典教程

文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    品开发过程中分析程序代码运行的逻辑,查找问题的工具。 单片机仿真器和电脑仿真软件配套使用。 仿真器的电脑仿真软件可以对单片机程序进行单步跟踪调试,也可以设置断点,全速运行等调试手段来观察程序代码中各种变量,RAM以及......
    信号测量时,直接由单片机采样并与标准频率相比较,划分档位区间,在输出显示。本设计中主要程序流程如图4所示。 图4 程序流程图 部分主要程序: 4 Kell仿真结果 本次设计使用Proteus软件搭建仿真......
    的51系列兼容单片机C语言软件开发系统,提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等,目前最新版本已经到了uVision5。这里需要说明的是,Keil C51并不......
    STM32单片机学习笔记(5):ADC模数转换器;项目简介 利用CubMX生成基于32单片机的HAl库工程,然后编写程序在proteus上仿真验证。本项目最适合没有开发板的同学学习,零成本利用仿真软件......
    Multi2sim10单片机的仿真实现及在数字电路中的应用;引言 单片机体积小,质量轻,具有很强的灵活性,而且价格也不高,从而得到越来越广泛的应用。其中以In2ter公司推出的8051 /8052......
    proteus中,由于proteus中 软件的问题,导致程序中虽然IO口设置了内部上拉,但在proteus仿真软件中,却是开漏的(也就是说IO口没有高电平状态)。而我们STM32单片机的外部中断,需要IO......
    按键在按下和松开时都会有抖动现象,可以采用硬件或者软件的方式来消除抖动,为了节约成本,采用软件延时的方式来消除抖动的影响。 为了提高单片机的工作效率,本次设计将5个按键通过一个与门连至单片机的外部中断输入口。当有按键按下时,单片机......
    STC单片机的头文件以及仿真驱动文件添加到Keil软件中,单击准备添加; 添加STC单片机仿真文件 第二步:选择Keil软件的安装位置,我们绝大部分人安装了开发STM32的keil软件,这里......
    计以Proteus 仿真软件作为开发工具,以AT89C51单片机作为控制核心,使用DS18B20芯片作为温度传感器,加上适当的外围电路,组成了多路温度巡回监测系统。与传统温度传感器相比,可直......
    部分通过复杂的总线结构进行通信,实现各种复杂的操作和功能。 二、GD32单片机的调试方式和注意事项 1.调试方式 GD32单片机的调试方式分为传统的仿真器调试和在线(在线调试)。仿真器调试需要先将程序下载到仿真......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>