1。嵌入式系统中ROM、RAM、寄存器的概念和作用是什么?
2。嵌入式中断系统的概念是什么并举例说明终端执行过程?
机中断是指计算机运行过程中需要主机干预时能够自动停止程序的机器。 。3。 STM32的IO可以配置成哪些工作模式?
4。下面介绍一下STM32的启动流程?
5.串口通信方式介绍?
6。串口设置的一般步骤可以概括为以下步骤:
7.USART主要特点? ?高精度波特率发生器,不占用定时器/计数器;
(4) 支持5、6、7、8、9数据位、1或2个停止位的串行数据帧结构;
(5) 硬件支持的奇偶校验位生成和验证;滤波器和数字低通滤波器;
(9) 三个完全独立的中断,TX发送完成,TX发送数据寄存器为空,RX接收完成;
(10) 支持多机通讯模式;
(11) 支持双速异步通信模式。
8. I2C 总线在数据传输过程中共有三种信号?
(1)启动信号:当SCL为高电平时,SDA从高电平跳变到低电平,开始传输数据。
(2)结束信号:当SCL为高电平时,SDA从低电平跳变到高电平,结束数据传输。
(3)响应信号:接收数据的IC收到8bit数据后,向发送数据的IC发送特定的低电平脉冲,表示数据已接收。 CPU向受控单元发送信号后,等待受控单元发送响应信号。 CPU收到响应信号后,根据实际情况判断是否继续发送信号。如果没有收到响应信号,则判断受控单元故障
9. 如何配置I2C配置主机模式端口?
硬件模式:复用开漏输出,既不上拉也不下拉。 (快速模式:400 Kbit/s)
软件模拟:推挽输出,配置上拉电阻。
10.I2C仲裁机制?
但遵循“低”的原则levelfirst”,即谁先发送低电平,谁就控制总线。
11.SPI需要多少根线?
12.SPI通讯的四种模式?
SPI 有四种工作模式。每种工作模式的区别在于SCLK不同。具体工作由CPOL和CPHA确定。
(1)CPOL:(时钟极性),时钟极性:
SPI的(2)CPHA:(Clock Phase),时钟相位:
Phase,对应数据采样在哪一个边沿(edge),无论是第一个边沿还是第二个边沿,0对应第一个边缘,1对应第二条边缘。
对于CPOL=0,idle为低电平,第一个边沿是由低到高,所以是上升沿;
对于CPOL=1,idle为高电平,第一个边沿由高变低,因此为下降沿;
对于CPOL=0,空闲状态为低电平,第二个边沿由高变低,因此为下降沿;
对于CPOL=1,空闲状态为高电平,第一个边沿由低电平变为高电平,因此为上升沿;
13. 如何确定使用哪种模式?
14。您能总结一下并介绍一下吗?
CAN 控制器根据 CAN_L 和 CAN_H 上的电位差确定总线电平。总线电平分为显性电平和隐性电平,两者之比为一。发送方通过改变总线电平来将消息发送到接收方。
15.CAN初始化配置步骤?
16.CAN发送数据格式?
17。 DMA简介?
直接内存访问(DMA)用于在外设与内存之间或内存与内存之间提供高速数据传输。无需CPU干预,数据可以通过DMA快速移动,从而节省CPU资源用于其他操作。
18.DMA传输模式有几种?
19。描述一下中断处理过程?
(1) 初始化中断,设置触发方式为上升沿/下降沿/双边沿触发。
(2) 触发中断,进入中断服务函数
20.STM32中断控制器支持多少个外部中断?
STM32 中断控制器支持 19 个外部中断/事件请求:GPIO 引脚 GPIOx.0~GPIOx.15(x=A、B、C、D、E、F、G)分别对应中断线 0~15。
另外 4 条 EXTI 线连接如下:
21。中断服务函数列表:
IO口外部中断在中断向量表中只分配了7个中断向量,即只能使用7个中断服务函数。
22。 STM32有多少个时钟源?
STM32有5个时钟源:HSI、HSE、LSI、LSE、PLL。
23。物联网的架构分为几层?每层负责什么功能?
分为三层。物联网从架构上可以分为感知层、网络层和应用层,
24。简述一下设置系统时钟的基本过程?
25。如何以相同的优先级运行两个任务?
在使用共享资源的过程中,可以暂时将获取信号量的任务的优先级提高到比所有任务的最高优先级高一级,这样该任务就不会被其他任务打断,从而使共享资源可以尽快用完并释放信号量,然后释放信号量后,恢复任务原来的优先级。
26。 Cortex-M3的存储空间可以分为哪些部分,各部分的地址范围是多少?
程序存储器、数据存储器、寄存器以及输入输出端口都组织在同一个4GB线性地址空间中。 Cortex-M3支持最大存储空间为4GB,但实际STM32有所不同;
27。基于CMSIS标准的软件架构分为几层? CMSIS层一般由哪些部分组成?
基于CMSIS标准的软件架构主要分为以下四层:用户应用层、操作系统层、CMSIS层、硬件寄存器层。 ?提供上层操作系统和应用层的接口,
28。 DAC有两个寄存器,一个是DHR(Data Holding Register)数据保持寄存器,另一个是DOR(Data Output Register)数据输出寄存器。真正起作用的是DOR寄存器,它将数值赋予数模转换单元,输出以VREF+为参考电压的电压值。如果转换是由硬件触发的,则系统会在 1 个 ABP 时钟周期后将值赋给 DOR。如果转换由软件触发,则时间为3个APB时钟周期。然后,等待 Tsetting 时间(典型为 3us,最大值为 4us)后才实际输出电压值。
29。下载程序:
30。内部上拉和下拉电阻设置:
如果外接按钮的另一端接地,需要设置上拉电阻。 (原因是按钮未按下时,由于上拉,输入为高电平;按下时,由于外部接地,输入为低电平。)同理,若另一端外部按键接高电平,则需要设置为下拉电阻。
31。串口中断TXE和TC的区别:
个 其实这是显而易见的。一种是发送寄存器空标志,另一种是发送完成标志。因为串口发送时,首先需要将发送寄存器中的数据移位到移位寄存器(影子寄存器)中,然后串行发送出去。因此,当发送寄存器DR为空时,意味着可能正在向外部发送数据,也可能尚未发送数据。但传输完成情况不同。它是移位寄存器完成本次所有数据移位(即发送停止位)后置位的标志位。看起来是这样的:TXE让程序有更多的时间来填充TDR寄存器,保证发送的数据流不间断。 TC可以让程序知道传输结束的准确时间,这有助于程序控制外部数据流的时序。32。定时器中断溢出更新时间:Tout=((arr+1)*(psc+1))/Tclk,ARR为自动加载寄存器(1~65535),PSC为分频系数,TCLK为输入时钟频率(兆赫)。
33. PWM1 和 PWM2 模式之间的差异仅是 180 度相位。当前者为高电平时,后者为低电平。
34。定时器输入捕获中有一个过滤器。顾名思义,过滤器起到过滤的作用。捕捉外部信号时,信号可能不稳定。这种情况下需要进行滤波:当检测到外部输入时,如果连续采样N次并确定为高电平/低电平,则会触发响应中断(如果使能)。
35。常用的汉字内码系统有GB2313、GB13000、GBK、BIG5(繁体中文)等。其中GB2313只有几千个汉字,而GBK有两万多个汉字。