您的位置 首页 发布

单片机一些小总结

整理了下当时学习单片机不明白的概念,自己总结和百度整理来的,所以有可能会有不当之处,希望大家见谅硬件篇MCU:微控制器,就是指单片机

收拾了下其时学习单片机不明白的概念,自己总结和百度收拾来的,所以有或许会有不当之处,期望咱们见谅

硬件篇

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经典教程

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/255204.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部