二月十四日记录。后续再碰到也方便查询,慢慢更新。
0.单片机单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
简单讲:微型计算机。
单片机的基本构成及工作原理 - 单片机_电工学习网 (diangon.com)
1.上拉、下拉电阻上拉是指单片机的引脚通过电阻接VCC,这样可以把这个引脚的电平固定为高电平。
下拉的情况和上拉的相反,是为了把引脚固定为低电平,要有下拉电阻也是为了防止误配置导致烧掉芯片。
2.IO口的输入和输出解释1:
首先输入和输出是针对于单片机自身而言的。
输出是单片机从IO口往外输出信号1或0(VCC或0V)。
输入是单片机从IO口读取输入信号1或0。
解释2:
I是input,即为输入,
O是output,即为输出。
当我们设定一个引脚为输出时,这个引脚就约等于一个电源,可以向它身上接着的东西输出点流,这个点流的电压是恒定值,当然也可以是没有,也就是1高电平、0低电平。
输入就是把引脚当成一个接受端,当外界给它电流时,单片机就会得到有电流的信息,就是1;外界不给它电流时,没信息,就是0。
3.系统中断单片机的中断概念是指单片机在执行程序时,遇到事先设定的优先等级高于当前正在执行程序的控制信号时,暂时停止当前程序的执行,转而先执行优先等级高的程序,等待所有优先等级较高的程序都执行完后,再返回继续原来暂停执行的程序的操作,这样的程序操作就称为执行中断操作。
为了保证中断执行后能够继续执行原来的程序且不产生错误,中断操作时,首先要保存中断前的程序的地址、工作寄存器的内容等。直到中断程序执行完成后再将暂时保存的工作寄存器的内容和地址取出,才能保证不会出现错误。
中断系统:实现中断过程。
中断源:请示CPU中断的请求源。微型机的中断系统一般允许多个中断源,当几个中断源同时向 CPU 请求中断,要求为它服务的时候,这就存在CPU 优先响应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源,即规定每一个中断源有一个优先级别。CPU 总是先响应优先级别最高的中断请求。
中断嵌套:当单片机正在执行中断请求时,又出现了一个比正在执行的优先级更高的中断请求,则先停止正在执行的中断请求,执行优先级高的中断请求,等执行完后再执行原来优先级较低的中断请求。
拥有中断嵌套的中断系统称为多级中断系统,没有嵌套功能的为单级中断系统。
4.pwm输出(todo)粗浅理解:500ms高电平、500ms低电平循环。
(23条消息) 单片机_PWM输出原理详解_xuewei_Li的博客-CSDN博客_单片机pwm
5.总线
单片机总线是一种内部结构,它是cpu、内存、输入、输出公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接。
一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系。各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了。
如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来。
但仅这样还不行,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。
器件的数据线也就被称为数据总线,器件所有的控制线被称为控制总线。在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总线。
6.寄存器寄存器是用来存放数据的小型存储区域,用以暂时存放运算的数据和运算的结果。
单片机一般有几个寄存器? (ofweek.com)
主要寄存器
(1)累加器A
累加器A是微处理器中使用最频繁的寄存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个操作数;运算后,用于保存所得的和、差或逻辑运算结果。
(2)数据寄存器DR
数据寄存器通过数据总线向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在译码的指令,也可以保存正在送往存储器中存储的一个数据字节等等。
(3)指令寄存器IR和指令译码器ID
指令包括操作码和操作数。指令寄存器是用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存中取到数据寄存器中,然后再传送到指令寄存器。当系统执行给定的指令时,必须对操作码进行译码,以确定所要求的操作,指令译码器就是负责这项工作的。其中,指令寄存器中操作码字段的输出就是指令译码器的输入。
(4)程序计数器PC
PC用于确定下一条指令的地址,以保证程序能够连续地执行下去,因此通常又被称为指令地址计数器。在程序开始执行前必须将程序的第一条指令的内存单元地址(即程序的首地址)送入PC,使它总是指向下一条要执行指令的地址。
(5)地址寄存器AR
地址寄存器用于保存当前CPU所要访问的内存单元或I/O设备的地址。由于内存与CPU之间存在着速度上的差异,所以必须使用地址寄存器来保持地址信息,直到内存读/写操作完成为止。显然,当CPU向存储器存数据、CPU从内存取数据和CPU从内存读出指令时,都要用到地址寄存器和数据寄存器。同样,如果把外围设备的地址作为内存地址单元来看的话,那么当CPU和外围设备交换信息时,也需要用到地址寄存器和数据寄存器。
7.内存程序存储器ROM:掉电可保存,速度慢。
数据存储器RAM:掉电即消失,速度快。
(23条消息) 单片机内存及运行原理_GZ的博客-CSDN博客_单片机内存管理
8.时钟 9.初始化


