STC15W4K32S4 ADC

ADC

STC15系列单片机adc由多路选择开关,比较器,逐次比较寄存器,10位dac,转换结果寄存器(ADC_RES与ADC_RESL)以及ADC_CONTR(ADC控制寄存器构成)

寄存器

P1口模拟控制寄存器(P1ASF)(不可位寻址)(只写寄存器,读无效)

  • bit0 P10ASF P1.0口作为模拟功能A/D使用
  • bit1 P11ASF P1.1口作为模拟功能A/D使用
  • bit2 P12ASF P1.2口作为模拟功能A/D使用
  • bit3 P13ASF P1.3口作为模拟功能A/D使用
  • bit4 P14ASF P1.4口作为模拟功能A/D使用
  • bit5 P15ASF P1.5口作为模拟功能A/D使用
  • bi6 P16ASF P1.6口作为模拟功能A/D使用
  • bit7 P70ASF P1.7口作为模拟功能A/D使用

ADC控制寄存器(ADC_CONTR)

  • bit7ADC_POWER 电源控制位 建议进入空闲模式和掉电模式之前,将ADC的电源关闭,可降低功耗。启动AD转换前一定要却定AD电源打开。初次打开内部AD模拟电源需适当延时,等内部模拟电源稳定后再启动AD转换。
  • bit6 SPEED1 bit5 SPEED0 AD转换所需时间
    1 1 90个周期转换一次,CPU工作频率为27MHz的时候,A/D转换速度约300KHz(= 27MHz / 90)
    1 0 180个时钟周期转换一次
    0 1 360个时钟周期转换一次
    0 0 540个时钟周期转换一次
    • bit4 ADC_FLAG:模数转换器转换结束标志位 必须软件清零
    • bit3 ADC_START:模数转换器转换启动控制位,转换结束后为0 ??
    • bit2 CHS2 bit1 CHS1 bit0 CHS0 Analog Channel Select(模拟输入通道选择)
      0 0 0 选择P1.0作为AD输入
      0 0 1 选择P1.1作为AD输入
      0 1 0 选择P1.2作为AD输入
      0 1 1 选择P1.3作为AD输入
      1 0 0 选择P1.4作为AD输入
      1 0 1 选择P1.5作为AD输入
      1 1 0 选择P1.6作为AD输入
      1 1 1 选择P1.7作为AD输入

CLK_DIV/PCON
ADC转换结果调整寄存器位(ADRJ)

  • bit5 ADRJ ADC转换结果调整 =0: ADC_RES[7:0]存放高8位ADC结果,ADC_RESL[1:0]存放低2位ADC结果 =1 ADC_RES[1:0]存放高2位ADC结果,ADC_RESL[7:0]存放低8位ADC结果

ADC转换结果寄存器(ADC_RES)(ADC_RESL)

  • 保存AD转换的结果,数据格式有 ADRJ 调整 P880

中断允许寄存器IE

  • bit7 EA
  • bit5 EADC AD的中断允许位

中断优先级寄存器IP

  • bit5 PADC:A/D转换中断优先级控制位

你可能感兴趣的:(STC15W4K32S4 ADC)