ADC总结

  • 格式:docx
  • 大小:144.38 KB
  • 文档页数:13

函数

将外设

ADCx

的全部寄存器重设为缺省值

函数 根据 ADC_InitStruct 中指定的参数初始化外设ADCx 的寄

存器

为了能够正确地配置每一个ADC 通道, 用户在调用ADC_Init()之后, 必须调

用ADC_ChannelConfig()来配置每一个所使用通道的转换次序和采样时间.

状态寄存器

地址偏移: 0x00

复位值: 0x0000 0000

ADC_GetFlagStatus检查制定 ADC 标志位置1 与否

例Status = ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC);

位31:15 保留。必须保持为0。

位4 :规则通道开始位

ADC_FLAG_STRT Status = 该位由硬件在规则通道转换开始时设置,由软件清

ADC_GetFlagStatus(ADC1, 除。

ADC_FLAG_EOC); 0:规则通道转换未开始

1:规则通道转换已开始

位3 :注入通道开始位

ADC_FLAG_JSTRT Status = 该位由硬件在注入通道组转换开始时设置,由软件

ADC_GetFlagStatus(ADC1, 清除。

ADC_FLAG_EOC); 0:注入通道转换未开始

1:注入通道转换已开始

位2 :注入通道转换结束位

ADC_FLAG_JEOC Status = 该位由硬件在所有注入通道组转换结束时设置,由

ADC_GetFlagStatus(ADC1, 软件清除

ADC_FLAG_EOC); 0:转换未完成

1:转换完成

位1 :转换结束位

ADC_FLAG_EOC Status = 该位由硬件在(规则或者注入)通道组转换结束时设

ADC_GetFlagStatus(ADC1, 置,由软件清除或者由读取ADC_DR时清除

ADC_FLAG_EOC); 0:转换未完成

1:转换完成

位0 :摹拟看门狗标志位

ADC_FLAG_AWD Status = 该位由硬件在转换的电压值超出了ADC_LTR和

ADC_GetFlagStatus(ADC1, ADC_HTR寄存器定义的范围时设置,由软件清除

ADC_FLAG_EOC); 0:没有发生摹拟看门狗事件

1:发生摹拟看门狗事件

控制寄存器

地址偏移: 0x04

复位值: 0x0000 0000

位31:24

位23

ADC_AnalogWatchdog_SingleRegEnable 单

个规则通道上设置摹拟看门狗

ADC_AnalogWatchdog_SingleInjecEnable 单

个注入通道上设置摹拟看门狗

ADC_AnalogWatchdog_SingleRegorInjecEna

ble 单个规则通道或者注入通道上设置摹拟

看门狗

ADC_AnalogWatchdog_AllRegEnable 所有

规则通道上设置摹拟看门狗

ADC_AnalogWatchdog_AllInjecEnable 所有

注入通道上设置摹拟看门狗

ADC_AnalogWatchdog_AllRegAllInjecEnable

所有规则通道和所有注入通道上上设置摹拟

看门狗

ADC_AnalogWatchdog_None 不设置

摹拟看门狗

位22

ADC_AnalogWatchdogCmd(ADC2,

ADC_AnalogWatchdog_AllRegAllInjec

Enable);

位21:20

位19:16

ADC_Mode_Independent

ADC1 和ADC2 工作在独立模式

ADC_Mode_RegInjecSimult

ADC1 和ADC2 工作在同步规则和同步注

入模式

ADC_Mode_RegSimult_AlterTrig

ADC1 和ADC2 工作在同步规则模式和交

替触发模式

ADC_Mode_InjecSimult_FastInterl

ADC1 和ADC2 工作在同步规则模式和快

速交替模式

ADC_Mode_InjecSimult_SlowInterl

ADC1 和ADC2 工作在同步注入模式和慢

速交替模式

ADC_Mode_InjecSimult

ADC1 和ADC2 工作在同步注入模式 保留。必须保持为0。

:在规则通道上开启摹拟看门狗

该位由软件设置和清除。

0:在规则通道上禁用摹拟看门狗

1:在规则通道上使用摹拟看门狗

:在注入通道上开启摹拟看门狗

该位由软件设置和清除。

0:在注入通道上禁用摹拟看门狗

1:在注入通道上使用摹拟看门狗

保留。必须保持为0。

:双模式选择

软件使用这些位选择操作模式。

0000:独立模式

0001:混合的同步规则+注入同步模式

0010:混合的同步规则+交替触发模式

0011:混合同步注入+快速交替模式

0100:混合同步注入+慢速交替模式

0101:注入同步模式

0110:规则同步模式

0111:快速交替模式

1000:慢速交替模式

1001:交替触发模式

注: 在ADC2和ADC3中这些位为保留位

在双模式中,改变通道的配置会产生一个重新

开始的条件,这将导致同步丢失。建议在进行

ADC_Mode_RegSimult

ADC1 和ADC2 工作在同步规则模式

ADC_Mode_FastInterl

ADC1 和ADC2 工作在快速交替模式

ADC_Mode_SlowInterl

ADC1 和ADC2 工作在慢速交替模式

ADC_Mode_AlterTrig

ADC1 和ADC2 工作在交替触发模式

位15:13

ADC_DiscModeChannelCountConfig

对ADC规则组通道配置间断模式

位12

ADC_InjectedDiscModeCmd

ADC_InjectedDiscModeCmd(ADC2,

ENABLE);

位11

ADC_DiscModeCmd

ADC_DiscModeCmd(ADC1, ENABLE);

ADC_DiscModeChannelCountConfig(AD

C1, 2);

位10

ADC_AutoInjectedConvCmd

ADC_AutoInjectedConvCmd(ADC2,

ENABLE);

位9 任何配置改变前关闭双模式。

:间断模式通道计数

软件通过这些位定义在间断模式下,收到外部

触发后转换规则通道的数目

000 :1个通道

001 :2个通道

……

111 :8个通道

:在注入通道上的间断模式

该位由软件设置和清除,用于开启或者关闭注入

通道组上的间断模式

0:注入通道组上禁用间断模式

1:注入通道组上使用间断模式

:在规则通道上的间断模式

该位由软件设置和清除,用于开启或者关闭规则

通道组上的间断模式

0:规则通道组上禁用间断模式

1:规则通道组上使用间断模式

:自动的注入通道组转换

该位由软件设置和清除,用于开启或者关闭规则 通道组转换结束后自动的注入通道组转换

0:关闭自动的注入通道组转换

1:开启自动的注入通道组转换

:扫描模式中在一个单一的通道上使

用看门狗

该位由软件设置和清除,用于开启或者关闭由

AWDCH[4:0]位定义的通道上的摹拟看门狗功

0:在所有的通道上使用摹拟看门狗

1:在单一通道上使用摹拟看门狗

:扫描模式

该位由软件设置和清除,用于开启或者关闭扫描 位8

位7

ADC_IT_JEOC

位6

ADC_IT_AWD

位5

ADC_IT_EOC

位4:0 ADC_Channel ADC_Channel_0

ADC_Channel_ 1

ADC_Channel_2

ADC_Channel_3

ADC_Channel_4

ADC_Channel_5

ADC_Channel_6

ADC_Channel_7

ADC_Channel_8

ADC_Channel_9 选择ADC

选择ADC

选择ADC

选择ADC

选择ADC

选择ADC

选择ADC

选择ADC

选择ADC

选择ADC 通道0

通道1

通道2

通道3

通道4

通道5

通道6

通道7

通道8

通道9

ADC_Channel_ 10

ADC_Channel_ 11

ADC_Channel_ 12

ADC_Channel_ 13 选择ADC

选择ADC

选择ADC

选择ADC 通道10

通道11

通道12

通道13 模 式 。 在 扫 描 模 式 中 , 由 ADC_SQRx 或者 ADC_JSQRx寄存器选中的通道被转换。

0:关闭扫描模式

1:使用扫描模式

注:如果分别设置了EOCIE或者JEOCIE位,只在

最后一个通道转换完毕才会产生 EOC或者JEOC

中断。

:允许产生注入通道转换结束中断

该位由软件设置和清除,用于禁止或者允许所有

注入通道转换结束后产生中断。

0:禁止JEOC中断

1 :允许JEOC中断。当硬件设置JEOC位时产

生中断。

:允许产生摹拟看门狗中断

该位由软件设置和清除,用于禁止或者允许摹拟

看门狗。在扫描模式下,如果看门狗检测到超

范围的数值时,惟独在设置了该位时扫描才会