STM32复习题.docx

上传人:s****u 文档编号:12806871 上传时间:2020-05-25 格式:DOCX 页数:11 大小:282.34KB
返回 下载 相关 举报
STM32复习题.docx_第1页
第1页 / 共11页
STM32复习题.docx_第2页
第2页 / 共11页
STM32复习题.docx_第3页
第3页 / 共11页
点击查看更多>>
资源描述
一、 选择题1、 STM32F407VET6这款单片机型号表明该款单片机的引脚数目为( ) A、48 B、64 C、100封装类型为( )A、BGA B、LQFP C、VFQFPN2、 下列开发软件中,不能用来开发STM32的程序的是( )A、 EWARM B、MDK C、JDK3、 下列时钟源中不可以用来驱动系统时钟的是( )A、HSE B、HSI C、LSI4、 STM32F103C8T6的SYSCLK最高为( )A、48MHz B、72MHz C、168MHz5、 当两个中断的抢占式优先级和子优先级一样时,内核处理中断时,这两个中断都已触发,响应规则为( )A、按中断向量表的顺序 B、随机响应 C、按中断程序入口地址顺序6、 AHB是( )A、高性能总线 B、高速外设总线 C、低速外设总线7、 在标准库中,如果某个GPIO作为数字量输入口,应配置为( )A、 GPIO_Mode_AF B、GPIO_Mode_IN C、GPIO_Mode_AN。PA9,如果配置为USART1_TX,应配置为( )8、 GPIOx_ODR 寄存器是( )A、GPIO输出数据寄存器 B、GPIO输入数据寄存器 C、GPIO配置寄存器9、 高速外设总线是( )A、AHB B、APB1 C、APB210、 下列通讯方式中,没有同步时钟的是( )A、UART B、SPI C、IIC11、 下列通讯方式中,发送和接收是同时进行的是( )A、UART B、SPI C、IIC 12、 下列看门狗,可以避免跑乱的程序正好跑到喂狗程序从而导致不复位的情况是( )A、独立看门狗 B、窗口看门狗 C、外部硬件看门狗 13、 标准库中,当PA8被配置为外部中断线时,对应的中断向量默认为( )A、EXTI8 B、EXTI9_5 C、EXTI5_914、 当PA2配置为中断线,配置中断线时,EXTI_InitStructure.EXTI_Line= ( )A、EXTI_Line2 B、GPIO_PinSource2 C、GPIO_Pin_215、 带互补输出功能的定时器是( )A、高级定时器 B、通用定时器 C、基本定时器16、 没有捕获/比较功能的定时器是( )A、高级定时器 B、通用定时器 C、基本定时器17、 语句ADC_RegularChannelConfig(ADC1, ADC_Channel_17, 2, ADC_SampleTime_55Cycles5)使用规则通道组采集的是 ( )A、 内部温度传感器的数据 B、内部参考电压的数据 C、某端口的数据18、 ADC初始化时,可通过结构体ADC_InitTypeDef 中ADC_ScanConvMode定义 ( )A、ADC使用模式 B、ADC扫描模式 C、ADC连续转换模式19、 ADC初始化时,可通过结构体ADC_InitTypeDef 中ADC_ContinuousConvMode定义( )A、ADC使用模式 B、ADC扫描模式 C、ADC连续转换模式20、 DMA初始化时结构体DMA_InitTypeDef 中DMA_PeripheralInc定义的是 ( )A、数据传输方向 B、外设增量模式 C、存储器增量模式21、 若ADC使用DMA采集数据,DMA_InitTypeDef中的DMA_DIR 应配置为( )A、DMA_DIR_PeripheralDST B、DMA_DIR_PeripheralSRC C、DMA_DIR_M2M22、 IIC通信时,起始信号定义为( )IIC通信时,停止信号定义为( )A、 SCL为高电平时拉低SDA B、SCL为高电平时拉高SDA C、SCL为低电平时拉高SDA23、 支持多主结构的通讯方式是( )A、485 B、IIC C、SPI24、 CAN通讯中,用于接收单元向具有相同ID的发送单元请求数据的帧叫( )A、数据帧 B、遥控帧 C、过载帧25、 CAN通讯的标准格式ID为( )CAN通讯的扩展格式ID为( )A、8位 B、11位 C、29位26、 CAN通讯时,设置过滤器组0工作在1个32为位过滤器、标识符屏蔽模式,CAN_F0R1=0XFFFF0000,CAN_F0R2=0XFF00FF00,则接收时最低位的ID应为( )A、0 B、1 C、不必关心27、 下列哪个文件是cos与处理器有关的代码,在移植时需要修改( )A、os_cpu_c.c B、os_tmr.c C、os_cfg.h28、 cos调用OSStart()开始启动任务管理,在调用该函数前必须至少创建( )个用户任务。A、0 B、1 C、229、 cos在任务没有配备任务控制块或被剥夺了任务控制块时的状态叫 ( )A、就绪状态 B、等待状态 C、睡眠状态30、 cos中,创建任务函数OSTaskCreate(void(*task)(void*pd),void *pdata,OS_STK *ptos,INT8U prio) 第一个参数为( )A、任务代码指针 B、任务参数指针 C、任务堆栈指针。二、 判断题1、 嵌入式系统和PC都是计算机系统,因此需要完成某项功能只需要安装相应软件。2、 STM32是ST公司生产的基于Cortex内核的32位单片机,Cortex内核知识产权属于ST公司。3、 基于STM32设计的产品,软件开发时必须使用MDK。4、 STM32产品和51系统的产品一样,采用外部晶振作为系统时钟。5、 STM32产品中设计有多个定时/计数器,采用同一时钟来驱动其工作。6、 独立看门狗IWDG的“独立”的意思是指其驱动时钟区别于其他器件,采用LSI驱动。7、 STM32的中断系统可支持多达84个中断,因此至少要有84个不同的优先级才能将其区分。8、 子优先级高的中断可以打断子优先级低的中断,实现中断嵌套。9、 因为STM32系列单片机端口可以重映射,所以某个GPIO可以复用给任意外设使用。10、 当STM32某GPIO配置为输出模式时,可以通过输入数据寄存器读取端口状态。11、 AHB总线是高性能总线,主要用于系统高性能、高时钟速率模块间通信。12、 一般说STM32定时器有多少个,并不包括SYSTICK,所以SYSTICK不是定时器。13、 STM32的定时器是16位的,SYSTICK定时器也是16位的。14、 在设计单片机键盘电路时,只有独立键盘和矩阵键盘两种设计方案。15、 因为GPIO_ReadInputDataBit()函数是读取端口电平状态,所以其返回值是bit。16、 端口复用配置时要使能其端口时钟和相应外设时钟,当端口重映射时还要使能辅助功能时钟AFIO,并开启重映射。17、 STM32所有的中断可以赋予完全不相同的中断优先级。18、 中断函数名是中断程序的入口地址指针,默认已定义,所以不能象函数名一样定义具有较强的随意性。19、 在STM32标准库中,获取状态标志位和中断状态标志位的底层实现其实是一样的,但我们要养成良好习惯区分使用。20、 UART通讯时,接线时两个模块或设备间的TX和TX、RX和RX应该直接连接。21、 语句USART_SendData();执行完毕后,数据就已经从串口发送出去了。22、 STM系列MCU的USART数据收发可以采用查询方式、中断方式和DMA方式,其中查询方式效率不高,因此在实际工程中较少使用。23、 STM32允许利用内部FLASH来存放一些数据,以实现掉电不丢失功能。但在电磁干扰强烈的环境下要慎用,因为FLASH打开写保护后,程序区数据也有可能被电磁干扰误写。24、 STM32的所有IO口都可以作为外部中断输入。25、 每个外部中断线的触发方式可配置为上升沿触发、下降沿触发和高低电平触发。26、 双边沿触发是指先有上升沿再有下降沿才触发中断,或先有下降沿再有上升沿才触发中断的方式。27、 STM32的WWDG和IWDG一样,只要喂狗时间不大于某个设定的时间即可。28、 STM32的窗口看门狗的设计目的是为了防止出现跑乱的程序还能刷新独立看门狗喂狗操作,从而系统不复位、不能正常工作的尴尬。29、 可以使用基本定时器的输入捕获功能来测量输入脉冲信号。30、 STM32的定时器计数脉冲其能由内部时钟源提供。31、 STM32F1系列MCU的ADC最高转换速率为1M,可以通过双ADC快速交替模式来实现采样速度翻倍。32、 I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定。33、 IIC是异步通讯方式。34、 cos的任务优先级可以一样。三、 填空题1、嵌入式系统上的软件通常是暂时不变的;所以经常称为 。2、 STM32的4位中断优先级控制位又分成2组,从高位开始,前面2位定义的是 。3、 STM32的 的功能,把某些功能引脚映射到其他引脚,可以方便PCB布局,或当默认复用功能端口被占用的时候有备用端口。4、 STM32F1系列GPIO初始化时语句RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);的作用是 。5、 APB1是 总线。6、 部分重映射是指功能外设的部分引脚重新映射,还有一部分引脚使用 引脚。7、 STM32有84个中断,包括16个内核中断和68个可屏蔽中断,具有 级可编程的中断优先级。8、 当某两个中断的PreemptionPriority和SubPriority完全相同且都已触发,STM32优先响应 中断。9、 串行通讯方式有SPI,IIC,UART,WIFI,BLE,ZIGBEE,WIFI,CAN等,其中 既常用作芯片之间的通信也觉见于设备之间的通信。10、 STM32的USART配置时需要定义的参数包括:起始位,数据位,奇偶校验位,停止位和 。11、 语句USART_SendData()执行后,数据移入到 寄存器。12、 STM32系列MCU的USART数据收发可以采用查询方式、中断方式和 。13、 为提高Cortex内核的使用效率,STM32的外设一般都可以使用 功能来进行数据收发操作。14、 每个外部中断线的触发方式可配置为上升沿触发、下降沿触发和 触发。15、 STM32的中断线16连接到 事件,可以设置为边沿触发方式,以实现对VDD电压的监测,当出现异常时处理一些紧急任务。16、 STM32的所有IO口的外部中断,在中断向量表中只分配了 个中断向量。17、 标准库函数中,函数名下划线前为 的英文缩写。18、 STM32的IWDG由 时钟驱动,独立于主程序之外。19、 STM32的 看门狗,喂狗时间既不能过早,也不能过迟。20、 可以使用STM32的高级定时器或通用定时器的 功能来测量输入信号脉冲的长度,计算其周期和占空比;使用其输出比较功能来输出波形。21、 STM32的定时器是 位定时器。22、 TIM_TimeBaseInit()函数的功能是 。23、 STM32的ADC是 位逐次逼近型模拟数字转换器。24、 STM32最多支持3个独立ADC,但若要采集内部温度传感器数据,只能使用 。25、 STM32的ADC规则通道组最多运行16个通道的数据采集,注入通道组最多支持 个通道组的数据采集。26、 STM32F1xx系列ADC的时钟配置时最大为 MHz。27、 I2C总线进行数据传送时,只有在时钟线上的信号为 电平期间,数据线上电平状态才允许变化。28、 I2C总线空闲的时候,SDA和SCL两条信号线处于 电平。29、 ISO11898标准规定,CAN显示电平表示逻辑 ,隐性电平表示逻辑1。30、 CAN总线的起止端一般都有一个终端电阻,来做阻抗匹配,以减少 。31、 CAN通讯时,用于发送单元向接收单元传送数据的帧叫 。32、 CAN通讯的 用于当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。33、 CAN通讯时,当多个单元同时开始发送时,各发送单元从仲裁段的第一位开始进行仲裁。连续输出 电平最多的单元可继续发送。34、 cos的多个任务靠 组成了一个任务链表。35、 cos创建任务前必须指定任务侁先级,实现任务代码,并为任务分配 。四、 问答题1、 什么叫嵌入式系统?2、 解释端口复用,端口重映射,有什么作用?3、 结合STM32F1系列USART1为例,若将其TX,RX从默认PA9、PA10重映射到PB6、PB7上,简述其引脚配置步骤。4、 STM32有5个时钟源,请写出其英文缩写和英文全称。5、 试闸述抢占式优先级(PreemptionPriority)和响应优先级(SubPriority)的区别。6、 若通过定时器的PWM功能,来调整LED灯的亮度,实现亮度由暗变亮,又由亮变暗,也就是常说的呼吸灯功能,试闸述其实现步骤。五、 综合题1、 如图所示为某实际工程中STM32F0的时钟系统配置问:该工程采用 驱动系统时钟,系统选用 为SYSCLK,外设时钟频率为 MHz,独立看门狗的时钟为 KHz,PLL输入时钟为 MHz。2、 某工程中,SPI器件接口时序图如下图所示,试使用标准库函数完成SPI主设备的初始化程序。static void SPI2_Init(void)SPI_InitTypeDef SPI_InitStructure;NVIC_InitTypeDef NVIC_InitStructure;/PA15:RST PB12:DC PB13:CLK:D0 PB15:data:D1 (RCC_APB1Periph_SPI2,ENABLE); SPI2_GpioInit();SPI_I2S_DeInit(SPI2);SPI_InitStructure.SPI_Direction = ; /全双工模式 SPI_InitStructure.SPI_Mode = SPI_Mode_Master; /作为主机使用 SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; /数据长度8 SPI_InitStructure.SPI_CPOL = ; SPI_InitStructure.SPI_CPHA = ; SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; SPI_InitStructure.SPI_BaudRatePrescaler =SPI_BaudRatePrescaler_16;/480KbpsSPI_InitStructure.SPI_FirstBit = ; SPI_InitStructure.SPI_CRCPolynomial = 0; SPI_Init(SPI2,&SPI_InitStructure); SPI_Cmd(SPI2,ENABLE);/* Configure the SPI interrupt priority */NVIC_InitStructure.NVIC_IRQChannel = SPI2_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 3;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);/* Enable the Rx buffer not empty interrupt */SPI_I2S_ITConfig(SPI2, SPI_I2S_IT_RXNE, ENABLE);/ /* Enable the Tx buffer empty interrupt */SPI_I2S_ITConfig(SPI2, SPI_I2S_IT_TXE, DISABLE);SPI_I2S_ITConfig(SPI2, SPI_I2S_IT_OVR, DISABLE);SPI_I2S_ClearFlag(SPI2,SPI_I2S_FLAG_TXE);SPI_I2S_ClearFlag(SPI2,SPI_I2S_FLAG_RXNE);SPI_I2S_ClearITPendingBit(SPI2,SPI_I2S_IT_TXE);SPI_I2S_ClearITPendingBit(SPI2,SPI_I2S_IT_RXNE);3、 以下程序使用HAL库,使用STM32F030单片机实现的串口通讯程序,试阅读程序,回答问题。/* USART1 init function */static void MX_USART1_UART_Init(void) huart1.Instance = USART1; huart1.Init.BaudRate = 9600; huart1.Init.WordLength = UART_WORDLENGTH_8B; huart1.Init.StopBits = UART_STOPBITS_1; huart1.Init.Parity = UART_PARITY_NONE; huart1.Init.Mode = UART_MODE_TX_RX; huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE; huart1.Init.OverSampling = UART_OVERSAMPLING_16; huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; if (HAL_UART_Init(&huart1) != HAL_OK) _Error_Handler(_FILE_, _LINE_); _HAL_UART_ENABLE_IT(&huart1, UART_IT_IDLE);/打开空闲中断_HAL_UART_DISABLE_IT(&huart1,UART_IT_RXNE);_HAL_UART_DISABLE_IT(&huart1,UART_IT_TXE);HAL_UART_Receive_DMA(&huart1, Uart1Data.uart1Rxbuf, Uart_DataRxLength);/打开空闲中断,初始化DMA接收该初始化程序指定的波特率、数据位、校验位和停止位分别是 。该程序使用什么方式接收数据? 打开空闲中断的目的是什么? 4、 以下程序使用的单片机(STM32F205RG,SYSCLK配置为120MHz)定时器2(APB1为60 MHz)的初始化程序,试阅读程序,回答问题。static void TIM2_Config(u32 HZ,float Ratio)/ PWMuint32_t ARR;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_OCInitTypeDef TIM_OCInitStructure;ARR = (60000000 / HZ-1);RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);GPIO_PinAFConfig(GPIOB,GPIO_PinSource11,GPIO_AF_TIM2);/TIM_TimeBaseStructure.TIM_Period = ARR; /between 0x0000 and 0xFFFFTIM_TimeBaseStructure.TIM_Prescaler = 0; /TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; /TIM_TimeBaseStructure.TIM_RepetitionCounter = 0x00;TIM_TimeBaseInit(TIM2,&TIM_TimeBaseStructure);TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Disable;TIM_OCInitStructure.TIM_Pulse = (uint32_t)(ARR * Ratio);/TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_Low;/TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;TIM_OC4Init(TIM2,&TIM_OCInitStructure);TIM_OC4PreloadConfig(TIM2, TIM_OCPreload_Enable);TIM_ARRPreloadConfig(TIM2, ENABLE);TIM_ClearFlag(TIM2,TIM_FLAG_Update); TIM_ClearFlag(TIM2,TIM_FLAG_CC4);TIM_Cmd(TIM2,ENABLE);TIM_CtrlPWMOutputs(TIM2,ENABLE);1)该程序配置TIM2利用其捕获比较功能产生 信号。2)该初始化程序两个参数用于设置 ,在引用的时候,第一个参数应该不小于 ,第二个参数应该在01之间。3)生成的信号从端口 输出。4)TIM2的计数模式为向上计数、向下计数还是中央对齐? 5、 以下程序是STM32F205单片机的独立看门狗初始化程序,阅读程序,回答问题。static void IWDG_Init(void)IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);IWDG_SetPrescaler(IWDG_Prescaler_256); /IWDG_SetReload(2500);IWDG_ReloadCounter(); IWDG_Enable();1)F2系列的LSI是32KHz,所以必须在 秒内喂狗。2)喂狗时应该调用的函数是: 3)IWDG_WriteAccessCmd()的功能是取消写保护,对哪两个寄存器有效? 4)如果在IWDG_Enable();前插一句IWDG_WriteAccessCmd(IWDG_WriteAccess_Diable);还能否正常喂狗? 6、 试阅读下面的程序,回答问题。/adc1 dma2 channel0 stream0static void ADC1_Mode_Config(void) DMA_InitTypeDef DMA_InitStructure; ADC_InitTypeDef ADC_InitStructure;ADC_CommonInitTypeDef ADC_CommonInitStructure;GPIO_InitTypeDef GPIO_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA2, ENABLE);GPIO_InitStructure.GPIO_Pin= GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6; /电流电压取样 PA6是键盘GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;GPIO_Init(GPIOA, &GPIO_InitStructure);DMA_DeInit(DMA2_Stream0);DMA_InitStructure.DMA_Channel = DMA_Channel_0; DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)ADC1_DR_ADDRESS;/ADC1_BASE+0x4CDMA_InitStructure.DMA_Memory0BaseAddr = (uint32_t)&ADC_Raw_Value;DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralToMemory;DMA_InitStructure.DMA_BufferSize = 7*NPT;/ 前三个是电流,中间是电压,最后一个是键盘DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;DMA_InitStructure.DMA_PeripheralDataSize =DMA_PeripheralDataSize_HalfWord ;DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;DMA_InitStructure.DMA_Priority = DMA_Priority_VeryHigh;DMA_InitStructure.DMA_FIFOMode = DMA_FIFOMode_Disable; DMA_Init(DMA2_Stream0, &DMA_InitStructure);DMA_ITConfig(DMA2_Stream0,DMA_IT_TC,ENABLE); /DMA_Cmd(DMA2_Stream0, ENABLE);/ADC1ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent;/ADC_CommonInitStructure.ADC_Prescaler = ADC_Prescaler_Div2;/adcclk=30MADC_CommonInitStructure.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled;ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_5Cycles;ADC_CommonInit(&ADC_CommonInitStructure);ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;ADC_InitStructure.ADC_ScanConvMode = ENABLE; /只用了一个通道ADC_InitStructure.ADC_ContinuousConvMode =DISABLE;ADC_InitStructure.ADC_ExternalTrigConvEdge =ADC_ExternalTrigConvEdge_None;/使用TIM2中断软件触发ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;ADC_InitStructure.ADC_NbrOfConversion = 7; /ADC_Init(ADC1, &ADC_InitStructure);ADC_RegularChannelConfig(ADC1, ADC_Channel_0 , 1, ADC_SampleTime_15Cycles ); /电流1ADC_RegularChannelConfig(ADC1, ADC_Channel_1 , 2, ADC_SampleTime_15Cycles );/电流2ADC_RegularChannelConfig(ADC1, ADC_Channel_2 , 3, ADC_SampleTime_15Cycles );/电流3ADC_RegularChannelConfig(ADC1, ADC_Channel_3 , 4, ADC_SampleTime_15Cycles );/电压1ADC_RegularChannelConfig(ADC1, ADC_Channel_4 , 5, ADC_SampleTime_15Cycles );/电压2ADC_RegularChannelConfig(ADC1, ADC_Channel_5 , 6, ADC_SampleTime_15Cycles );/电压3ADC_RegularChannelConfig(ADC1, ADC_Channel_6 , 7, ADC_SampleTime_15Cycles ); /键盘/定时器软件触发是0.3125ms一次,ADCCLK 30M,12+15+5=497*7=3479Cycles/30M=0.116ms,一次采样需要0.116ms0.3125ms,是可以的/* Enable ADC1 DMA */ADC_DMACmd(ADC1, ENABLE);ADC_Cmd(ADC1, ENABLE); /* Enable DMA request after last transfer (Single-ADC mode) */ADC_DMARequestAfterLastTransferCmd(ADC1, ENABLE);/* Start ADC1 Software Conversion */ ADC_SoftwareStartConv(ADC1);/* Wait until the ADC1 is ready */while(ADC_GetFlagStatus(ADC1, ADC_FLAG_STRT) = RESET) 1)该初始化程序实现的功能是 。2)该程序基于STM32F2,APB2设置为60MHz,ADCCLK最大不超过30MHz,该程序设置ADCCLK为 MHz。3) STM32F2一次ADC周期=12+采样周期+两次间隔,该程序对50Hz的电压电流进行采样,每个周期采样64点,试通过计算七个通道一次ADC所需要的时间(F2)是否符合要求。4)参考手册推荐的ADC硬件电路如下图所示,由于ADC采集的时候需要有电流输入,因此在RAIN上会有一个压降,对于一次ADC来说,RAIN不能太大,试计算硬件电路上RAIN取值1K是否合适。 RAIN最大值计算公式(式中K为采样周期,N为转换精度,fADC为30MHz,查手册知3.3V时CADC为4pF,RADC为1.5K欧,ln2=0.693147)
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!