应广单片机吧 关注:143贴子:456
  • 1回复贴,共1

应广单片机 一级代理商 正式授权 深圳 大陆 全国 现货供应

取消只看楼主收藏回复

应广单片机,采用全球领先的平行处理多核心8位单片机
兼容多家IC品牌(PIC、AVR、EMC、SONI等)的脚位
支持C和汇编,工程师MCU的经验都可沿用,不需重新学习
核心性价比:同价位,功能更强大,同功能,价格更优惠。
全系列价格在0.3~1.9之间。适用于各类消费电子领域。
深圳市远嘉科技有限公司是台湾应广单片机大陆地区一级代理商,
货源充足,并提供方案开发,公司实力雄厚!


1楼2013-12-03 15:56回复
    【Dome -- ADC】
    //======================================//
    // ADC设置
    //案例为:
    //通过给定的参考电压(VDD),对待测电压(PA4)进行测量
    //并设置ADC的时钟来控制ADC数据转换的快慢(建议ADC时钟设置为500KHz)
    //测量的结果从ADC数据寄存器中读取,即ADCRH和ADCRL
    //注意:
    //得到的结果为寄存器中的数据,并非电压值
    //电压值计算:参考电压(VDD)/0xFFF=待测电压(PA4)/寄存器读取数据(ADCRH和ADCRL)
    //======================================//
    #include "extern.h"
    void ADC_init(void)
    {
    //注:选择的通道需设置为输入,无上拉电阻,停用数字输入使能;
    PAC.4 = 0;
    PAPH.4 = 0;
    PADIER = 0b1110_1001;
    $ ADCC Enable,PA4; //启用ADC功能,通道选择(AD转换的输入信号)
    //启用:Enable;停用:Disable
    //通道选择:PB0, PB1, PB2, PB3, PB4, PB5, PB6, PB7, PA3, PA4, PA0, GND, ADC
    $ ADCM /2; //时钟源选择(系统时钟/X)
    //X有/1, /2, /4, /8, /16, /32, /64, /128
    //注:时钟源选择建议选用500K(/2)
    $ ADCRGC VDD; //选择ADC输入信号的参考电压,通道F选择器,通道F的Band-gap参考电压选择(注:通道F是GPCC选择ADC模式时才有用)
    //选择参考电压有:VDD, 2V, 3V, 4V, PB1, BG,通道F选择器:ADC_BG(Band-gap参考电压), ADC_VDD/4(0.25*VDD)
    //通道F的Band-gap参考电压选择:BG_1V2, BG_2V, BG_3V, BG_4V(注:仿真器固定只有1.2V)
    .delay 400; //延时400us
    //注:根据ADC参考高电压及时钟源选择,参考datasheet延迟
    }
    void ADC_data(void)
    {
    //开始ADC转换
    AD_START = 1; //开始ADC转换
    while(!AD_DONE) //等待ADC转换结果
    NULL;
    //当AD_DONE高电位时读取ADC结果
    word data;
    data$0 = ADCRL; //将ADC的值赋给data
    data$1 = ADCRH;
    data = data >> 4; //12 bit ADC
    }
    void FPPA0 (void)
    {
    .ADJUST_IC SYSCLK=IHRC/16, IHRC=16MHz, VDD=3.3V;
    while (1)
    {
    nop;
    }
    }
    void Interrupt (void)
    {
    pushaf;
    if (Intrq.T16)
    { // T16 Trig
    // User can add code
    Intrq.T16 = 0;
    //...
    }
    popaf;
    }


    4楼2021-08-03 16:35
    回复