1.嵌入式系统中ROM、RAM、Register的概念和作用是什么/p>
- ROM是只读存储器,断电后能保证数据不会丢失。(硬盘)
- RAM是随机存储器,断电后数据会丢失.(内存)
- Register是寄存器,用来暂时存放相关指令信息或数据信息的硬件设备。
2.嵌入式中断系统的概念、并举例说明终端执行过程/p>
中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。
3.STM32的IO可以配置成哪几种工作方式/p>
- GPIO_Mode_AIN 模拟输入
- GPIO_Mode_IN_FLOATING 浮空输入
- GPIO_Mode_IPD 下拉输入
- GPIO_Mode_IPU 上拉输入
- GPIO_Mode_Out_OD 开漏输出
- GPIO_Mode_Out_PP 推挽输出
- GPIO_Mode_AF_OD 复用开漏输出
- GPIO_Mode_AF_PP 复用推挽输出
4.介绍以下STM32启动过程/p>
- 通过Boot引脚设定,寻找初始地址
- 初始化栈指针 __initial_sp
- 指向复位程序 Reset_Hander
- 设置异常中断 HardFault_Handler
- 设置系统时钟 SystemInit
- 调用C库函数 _main
5.串行通信方式介绍/p>
- 同步通信:I2C 半双工,SPI 全双工
- 异步通信:RS485 半双工、RS232 全双工
6.串口设置的一般步骤可以总结为如下几个步骤:
- 串口时钟使能,GPIO时钟使能
- 串口复位
- GPIO端口模式设置:TX的GPIO工作模式为:GPIO_Mode_AF_PP;//复用推挽输出。RX的GPIO工作模式为:GPIO_Mode_IN_FLOATING;//浮空输入。
- 串口参数初始化:主要包含:波特率设置(115200)、8个数据位、1个停止位、无奇偶校验位、无硬件数据流控制、收发模式。
- 开启中断并且初始化NVIC(如果需要开启中断才需要这个步骤)
- 使能串口
7.USART主要特点br> (1)全双工操作(相互独立的接收数据和发送数据);
(2)同步操作时,可主机时钟同步,也可从机时钟同步;
(3)独立的高精度波特率发生器,不占用定时/计数器;
(4)支持5、6、7、8和9位数据位,1或2位停止位的串行数据桢结构;
(5)由硬件支持的奇偶校验位发生和检验;
(6)数据溢出检测;
(7)帧错误检测;
(8)包括错误起始位的检测噪声滤波器和数字低通滤波器;
(9)三个完全独立的中断,TX发送完成、TX发送数据寄存器空、RX接收完成;
(10)支持多机通信模式;
(11)支持倍速异步通信模式。
8.I2C 总线在传送数据过程中共有三种类型信 br> (1)开始信 :SCL 为高电平时,SDA 由高电平向低电平跳变,开始传送数据。
(2)结束信 :SCL 为高电平时,SDA 由低电平向高电平跳变,结束传送数据。
(3)应答信 :接收数据的 IC 在接收到 8bit 数据后,向发送数据的 IC 发出特定的低电平脉冲,表示已收到数据。CPU 向受控单元发出一个信 后,等待受控单元发出一个应答信 ,CPU 接收到应答信 后,根据实际情况作出是否继续传递信 的判断。若未收到应答信 ,由判断为受控单元出现故障
9.I2C配置主机模式端口该怎么配置br> 硬件模式:复用开漏输出、既不上拉也不下拉。(快速模式:400 Kbit/s)
软件模拟:推挽输出、配置上拉电阻。
10.I2C仲裁机制br> 遵循“低电平优先”的原则,即谁先发送低电平谁就会掌握对总线的控制权。
11.SPI需要几根线/p>
- SPI 接口一般使用 4 条线通信:
- MISO 主设备数据输入,从设备数据输出。
- MOSI 主设备数据输出,从设备数据输入。
- SCLK 时钟信 ,由主设备产生。
- CS 从设备片选信 ,由主设备控制。
12.SPI通信的四种模式br> SPI 有四种工作模式,各个工作模式的不同在于 SCLK 不同, 具体工作由 CPOL,CPHA 决定。
(1)CPOL: (Clock Polarity),时钟极性:
- SPI的CPOL,表示当SCLK空闲idle的时候,其电平的值是低电平0还是高电平1:
- CPOL=0,时钟空闲idle时候的电平是低电平,所以当SCLK有效的时候,就是高电平,就是所谓的active-high;
(2)CPHA:(Clock Phase),时钟相位:
相位,对应着数据采样是在第几个边沿(edge),是第一个边沿还是第二个边沿,0对应着第一个边沿,1对应着第二个边沿。
- 对于:CPHA=0,表示第一个边沿:
对于CPOL=0,idle时候的是低电平,第一个边沿就是从低变到高,所以是上升沿;
对于CPOL=1,idle时候的是高电平,第一个边沿就是从高变到低,所以是下降沿;
- CPHA=1,表示第二个边沿:
对于CPOL=0,idle时候的是低电平,第二个边沿就是从高变到低,所以是下降沿;
对于CPOL=1,idle时候的是高电平,第一个边沿就是从低变到高,所以是上升沿;