文章目录
- 单片机硬件结构:
-
- 低功耗模式
- FPGA
- 看门狗
-
- 看门狗分类
- 单工
- USB和串口的区
- I2C
- SPI协议
- 单片机如何通过串口和上位机传递信息?
- CSI接口
单片机硬件结构:
以QT89S以51单片机为例: 片内功能组件: (1)8位微处理器(CPU) (2)数据存储器(1288) RAM) (3)程序存储器(4)KB Flash ROM) (4)4个8位并行I/O口 (5)全双工异步串口 (6)2个16位定时器 (7)一个看门狗定时器 (8)中断系统:5个中断源,5个中断向量 (9)特殊功能寄存器(SFR)26个 (10)低功耗空闲模式和掉电模式 (11)在线可编程功能ISP (12)2个数据指针,方便片外RAM访问 通过片内单一总线连接各功能部件,基本结构为CPU 传统的外围芯片微机结构,CPU特殊功能寄存器控制各种功能部件(SFR)集中控制模式。 端口:等
低功耗模式
节电工作模式:空闲模式、脱电维护模式(VCC后备电源可供电)
FPGA
详细说明串行通信协议及其FPGA实现述
FPGA(Field Programmable Gate Array),现场可编程门阵列,集成芯片,主要是数字电路,可编程逻辑器件PLD的一种。 集成电路,一些元件连接在一起,使其具有一定的功能。分为通用集成电路和专用集成电路。
Youtube关于Introduction to FPGA
编译原理:抽象语法树, 警告编译器在词法分析和语法分析阶段生成抽象语法树(AST),语法树的每个节点都对应于代码中不同含义的片段。
解释器: 解释器是一种语言求值器,它动态地执行程序的源代码。 从源代码生成解释器解析源代码 AST(抽象语法树),遍历 AST 并逐一计算。 词法分析,语法分析 在词法分析阶段生成词法分析阶段 Token 转化为抽象语法树(Abstract Syntax Tree),这个过程称为语法分析(Parsing)。
看门狗
在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都有可能会陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续正常工作,导致整个系统的陷入停滞状态,发生不可预料的后果。 看门狗,又叫 watchdog,本质上是定时器电路,一般有一个输入和一个输出,其中输入叫喂狗,输出一般连接到另一部分的复位端,一般连接到单片机。 看门狗的功能是定期检查芯片内部的情况,一旦出现错误,就会向芯片发出重启信号。看门狗命令在程序中断中优先级最高。 看门狗,又叫watchdog timer,是定时器电路,一般有输入,叫喂狗(kicking the dog/service the dog),一个输出到MCU的RST端,MCU正常工作时,每隔一段时间向喂狗端输出一个信号 WDT清零,如果超过规定的时间不喂狗(通常在程序),WDT如果定期超过,将给出复位信号MCU,使MCU复位。防止MCU死机. 看门狗的作用是防止程序的死循环或跑飞。 看门狗是监控系统运行状态的一种手段,通过软硬件结合来监控系统运行状态。稳定运行的软件将在执行特定指令后喂狗。如果看门狗在一定周期内没有收到软件中的喂狗信号,则认为系统故障将进入中断处理程序或强制系统复位。系统上电后,可以根据不同的工作模式选择看门狗的时间。如果看门狗被允许,计数器将开始计数。如果在设定的时间内不及时喂狗,看门狗将加班。
看门狗主要由寄存器、计数器和狗叫模块组成:通过寄存器基本设置看门狗,计数器计算狗叫时间,狗叫模块决定看门狗超时后的中断或复位。
看门狗分类
硬件看门狗 硬件看门狗使用定时器来监控主程序的运行,也就是说,在主程序的运行过程中,我们应该在固定时间之前重置定时器。如果有死循环,或者PC如果指针不能回来,单片机将在固定时间后复位。WDT芯片如MAX813,5045,IMP 813等。 软件看门狗 在某些情况下,将使用纯软件设置看门狗。例如,在单片机系统中,可以使用闲置定时器/计数器设计软件看门狗。具体实现步骤如下: 首先,在初始化程序中设置定时器/计数器的方式以控制寄存器(TMOD) 和定时间的初始值,并打开中断。 然后,根据定时器的时间,在主程序中插入复位定时器的指令(喂狗), 可根据系统时钟和指令周期计算两个喂狗指令之间的时间间隔,时间周期应小于定时器的时间间隔。 最后,在定时器中断服务程序中,设置无条件转移指令PC转移到初始化程序的入口。 在非单片机系统,如PowerPC在系统中,软件狗也可以通过多线程设置,主要步骤如下: 首先,建立一个新的看门狗线程,维护一个全球变量数组,相当于每个工作线程的计数器。看门狗线程是一个死循环,每隔一段时间循环一次,并将全球变量数组的每个值添加到1,以确定它是否超过预定义的上限。如果发现线程对应的变量值超过最大值,则看门狗线程将重置线程。 然后,在每个工作线程中,相应的全局变量将每隔一段时间设置为0 (喂狗)。 软件看门狗的优点是没有额外的硬件支持,但当系统出现严重错误(如中断服务错误)时,软件看门狗可能会失效。
(公司内容) 锁定共享资源的访问。对于单个模块,可以通过消息队列排队处理系统中的大量并发事件。串行处理并发事件。
单工
单工 单工,即数据传输只在一个方向上传输,只能你给我发送或者我给你发送,方向是固定的,不能实现双向通信,如:室外天线电视、调频广播等。
半双工 半双工比单工先进一点,传输方向可以切换,允许数据在两个方向上传输,但是某个时刻,只允许数据在一个方向上传输,可以基本双向通信,如:对讲机,。
全双工 比半双工更先进的是全双工,允许数据同时在两个方向传输。发送和接收完全独立,在发送的同时可以接收信号,或者在接收的同时可以发送。它要求发送和接收设备都要有独立的发送和接收能力,如:。
同步和异步的区别 串行通信可以分为两种类型,一种叫同步通信,另一种叫异步通信。
简单的说,就是同步通信需要时钟信号,而异步通信不需要时钟信号。
同步:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。
异步:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。
SPI和IIC为同步通信,UART为异步通信,而USART为同步&异步通信。
USART:通用同步和异步收发器
UART:通用异步收发器
即USART支持同步和异步收发,而UART只支持异步收发。
如STM32的串口工作在同步模式时,即智能卡模式时,就需要连接同步时钟引脚。
USB和串口的区
串行接口:串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。
USB,是英文Universal Serial Bus(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。 USB有二种传输速率,第一种是全速模式,第二种则是低速模式
I2C
一文看懂I2C协议 I2C基础
SPI协议
SPI协议详解
单片机如何通过串口与上位机传递信息
单片机与串口助手交互,串口助手与上位机交互
CSI接口
CSI(Camera Serial Interface)是由MIPI(Mobile Industry Processor Interface)联盟下Camera工作组制定的接口标准,是MIPI联盟发起的为移动应用处理器制定的开放标准,该协议为低成本智能手机细分市场提供了一套灵活的、高性价比的解决方案。CSI接口具有接口少、抗EMI强、速度快、功耗低等优点。CSI-2是MIPICSI第二版,CSI-2由应用层、协议层、物理层组成,最大支持4通道数据传输,单线传输速度高达1Gb/s[1-2]。
CMOS Sensor Interface(csi)