嵌入式系统IO接口与编程复习题文档格式.doc
《嵌入式系统IO接口与编程复习题文档格式.doc》由会员分享,可在线阅读,更多相关《嵌入式系统IO接口与编程复习题文档格式.doc(9页珍藏版)》请在冰豆网上搜索。
A、SPI_CR1 B、SPI_CR2 C、SPI_SR D、SPI_DR
7、SPI控制器的状态寄存器SPI_SR的bit0为1时,表示SPI接收缓冲区为空;
该位为0时表示,表示SPI接收缓冲区非空。
下列循环语句中能够退出循环并保证SPI已接收完数据操作的是()。
A、while(!
(SPI1->
SR|0x1)) B、while(!
SR&
0x1))
B、while(SPI1->
0x1) D、while(SPI1->
SR|0x1)
8、STM32F439中SPI控制器工作在I2S模式还是SPI模式由设置寄存器()来实现。
A、SPI_CR2 B、SPI_I2SCFGR C、SPI_I2SPR D、SPI_CR1
9、触摸屏首次使用时需要调校,调校好的数据一般保存在()中。
A、RAM B、寄存器 C、EEPROM D、堆栈
10、nRF24L01可以工作在一对一通信模式或一对多通信模式,其中一对多工作模式下最多允许几个发送节点()。
A、四个 B、五个
C、六个 D、十个
11、STM32F439的串口1初始化完成后,若要发送一个字节的数据,只需将数据写入寄存器()。
A、USART_SR B、USART_DR C、USART_CR1 D、USART_BRR
12、在nRF24L01的EnhancedShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据可以低速从微控制器送入,再高速(1Mbps/2Mbps)发射,这样可以尽量节能。
与射频协议相关的所有高速信号处理都在片内进行,这种做法的优点不包括(C)。
A、节能B、低的系统费用(低速微处理器也能进行高速射频发射)
C、大大增加通信距离D、数据在空中停留时间短,抗干扰性高;
13、描述TFTLCD中像素点的数据长度有多种方法,常用的16位真彩色描述方法为565,即RGB比例为5:
6:
5,对于480*320分辨率的TFTLCD来说,以565方式显示一帧图像需要的数据量大小为()。
A、5120字节 B、76800字节 C、307200字节 D、153600字节
14、在LCD控制器SSD1289中,入口模式指令03h的三个位共同控制了屏幕的显示方向,其中I/D[0]和I/D[1]分别表示横向地址和纵向地址计数器的增减,AM表示地址更新方向。
当I/D[1:
0]=11,AM=0时,表示以下哪种显示方式(c)。
A、B、
C、D、
15、无线通信技术是实现物联网的关键,常用的无线通信技术有很多,他们各有优缺点,其中基于(C)技术的硬件功耗最大。
A、ZigBeeB、BlueToothC、WiFiD、nRF24L01
二、填空题
1、SPI是一种高速的全双工同步的通信总线,它的接口信号包括 __、 __以及主入从出(MISO)信号和主出从入(MOSI)信号四种。
2、IIC总线上从设备地址有8位,若该地址的最低位为0,表示对从设备进行 操作。
3、Flash存储芯片W25Q16,其擦除操作是以 为单位进行。
4、I2C总线是由PHILIPS公司开发用于连接微控制器及其外围设备串行总线,它由 _和 两条线构成。
5、在SPI设置中, 设置时钟空闲时的电平, 设置读取数据和发送数据的触发时钟沿。
6、nRF24L01芯片的IRQ信号在以下三种情况会变为低电平:
TxFIFOs发完并且收到ACK(使能ACK情况下)、 ________________ 和达到最大重发次数。
7、将寄存器r1中一个字的值存储在r2所指向的内存单元中,完整的ARM汇编指令为 _______。
8、DMA数据传输方向有外设到存储器、存储器到存储器和 _______三种方向。
9、一个10位的ADC,其参考电压(满量程)为3.3v,则它的分辨率为 ___________。
10、在STM32F439中用4个位来表示中断优先级,在使用中断前需要进行优先级分组,将中断优先级又可以分为 _______和子优先级。
三、编程题
1、根据程序中的注释,完善SPI1接口的初始化函数SPI1_Init(相关寄存器数据手册附后,假设所有寄存器的初始值均未知,使用位运算只设置注释中要求内容所对应的位,不能影响其它位)。
voidSPI1_Init(void)
{
u16tempreg=0;
RCC->
AHB1ENR|=3<
<
0;
//使能PORTA/PORTB时钟
APB2ENR|=1<
12;
//SPI1时钟使能
GPIO_Set(GPIOB,PIN4|PIN5,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
//PB4~5复用功能输出
GPIO_Set(GPIOA,PIN5,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
//PA5复用功能输出
GPIO_AF_Set(GPIOA,5,5);
//PA5设置为复用功能5
GPIO_AF_Set(GPIOB,4,5);
//PB4设置为复用功能5
(1)_____//PB5设置为复用功能5
//这里只针对SPI口初始化
APB2RSTR|=1<
//复位SPI1
APB2RSTR&
=~(1<
12);
//停止复位SPI1
tempreg|=0<
10;
//全双工模式
(2)_____//使能软件从器件管理
tempreg|=1<
8;
2;
//SPI主机
11;
//16位数据格式
1;
//空闲模式下SCK为1CPOL=1
//数据采样从第2个时间边沿开始,CPHA=1
//对SPI1属于APB2的外设.时钟频率最大为84Mhz频率.
(3)_____//波特率设置为Fpclk/256
7;
//先发送LSB
(4)_____//SPI使能
SPI1->
CR1=tempreg;
//设置CR1
I2SCFGR&
11);
//选择SPI模式
SPI1_ReadWriteByte(0xff);
//启动传输,可省略
}
2、编写程序实现W25QXX的读取数据函数W25QXX_ReadID,函数的功能及要求见下面的注释(W25QXX读取数据的时序图附后)。
/****************************************************************
函数名:
W25QXX_Read
函数功能:
检查W25QXX是否存在并返回设备ID值
形参:
u8*pBuffer,u32ReadAddr,u16NumByteToRead
形参含义:
pBuffer为所读取数据的存储位置,ReadAddr为读取的地址,NumByteToRead为要读取的字节数。
返回值类型:
void
需调用的底层函数:
u8SPI1_ReadWriteByte(u8TxData),其中TxData表示要写入的字节,返回值表示读取到的字节。
****************************************************************/
四、简答题
1、分别写出nRF24L01模块发送模式和接收模式配置的基本步骤。
答:
发送模式配置函数:
接收模式配置函数:
2、分析在使用DS18B20时初次测得的温度值为85℃的可能原因和解决的思路。
缺少转换函数,所以测得的温度总为初始值。
3、分别简述I2C协议中起始信号和停止信号的SCL、SDA电平组合特征。
起始信号与停止信号
l起始信号:
当SCL为高期间,SDA由高到低的跳变;
启动信号是一种电平跳变时序信号,而不是一个电平信号。
l停止信号:
当SCL为高期间,SDA由低到高的跳变;
停止信号也是一种电平跳变时序信号,而不是一个电平信号。
4、简述EEPROM读写操作的基本步骤。
1、初始化时钟、串口、延时函数
2、初始化24C04(包括I2C相关GPIO初始化)
3、检测24C02是否正常
4、往24C02写入数据
5、从24C02读出数据
5、简述W25Q16读写操作的基本步骤。
1)使能SPI1和四个引脚对应IO时钟
2)SPI初始化设置
3)W25Q16初始化设置
4)读取W25Q16的设备ID,确认成功检测到设备
5)按照W25Q16的设备控制命令编写底层操作函数
6)读写操作
6、简述nRF24L01的EnhancedShockBurstTM发送流程和接收流程。
发送:
1.把地址和要发送的数据按时序送入NRF24L01;
2.配置CONFIG寄存器,使之进入发送模式;
3.微控制器把CE置高(至少10us),激发EnhancedShockBurstTM发射;
4.EnhancedShockBurstTM发射:
①给射频前端供电;
②射频数据打包(加字头、CRC校验码);
③高速发射数据包;
④发射完成,NRF24L01进入空闲状态。
接收:
1.配置接收地址和要接收的数据包大小;
2.配置CONFIG寄存器,使之进入接收模式,把CE置高。
3.130us后,NRF24L01进入监视状态,等待数据