微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > stc 8位ADC转换实验程序

stc 8位ADC转换实验程序

时间:11-18 来源:互联网 点击:

ADC数据

结 果:读出指定ADC接口的A/D转换值,并返回数值

备 注:适用于STC12C2052AD系列单片机(必须使用STC12C2052AD.h头文件)

/**********************************************************************************************/

unsigned char Read (void){

unsigned char AD_FIN=0; //存储A/D转换标志

ADC_CONTR |= 0x08; //启动A/D转换(0000 1000 令ADCS = 1)

_nop_();

_nop_();

_nop_();

_nop_();

while (AD_FIN ==0){ //等待A/D转换结束

AD_FIN = (ADC_CONTR & 0x10); //0001 0000测试A/D转换结束否

}

ADC_CONTR &= 0xE7; //1111 0111 清ADC_FLAG位, 关闭A/D转换,

return (ADC_DATA); //返回A/D转换结果(8位)

}

/**********************************************************************************************/

/*********************************************************************************************

函数名:主函数

调 用:无

参 数:无

返回值:无

结 果:程序开始处,无限循环

备 注:

/**********************************************************************************************/

void main (void){

unsigned char R;

UART_init();//串口初始程序

Read_init(0);//ADC初始化

P1M0 = 0x01; //P1.7~.0:0000 0001(高阻)//注意:更改ADC通道时须同时将对应的IO接口修改为高阻输入。

P1M1 = 0x00; //P1.7~.0:0000 0000(强推)

while(1){

R = Read ();

UART_T (R); //串口小秘书,将ADC读出值送入串口显示

}

}/**********************************************************************************************/

/*************************************************************

* 杜洋工作室 www.DoYoung.net

/*************************************************************/

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top