导航:首页 > 操作系统 > 51单片机adc模块

51单片机adc模块

发布时间:2025-04-07 01:11:35

‘壹’ 51单片机的adc接口在哪

端口引脚P3.4至P3.7处。
51单片机的P1是输入端口,P0是输出端口。ADC的控制信号(INTR、WR、RD和CS)分别在端口引脚P3.4至P3.7处可用。
51单片机是对兼容英特尔8051指令系统的单片机的统称。

‘贰’ 请教stc自带ad的51单片机的使用方法

#include<reg52.h>#include<intrins.h>
#define uchar unsigned char#define uint unsigned int
sfr ADC_CONTR = 0xbc; //ADC控制寄存器
sfr ADC_RES = 0xbd; //ADC转换结果高八位寄存器
sfr ADC_LOW2 = 0xbe; //ADC转换结果低两位寄存器
sfr P1ASF = 0x9d; //P1口模拟功能控制寄存器

#define ADC_POWER 0x80 //ADC电源控制位
#define ADC_FLAG 0x10 //ADC结束标志位
#define ADC_START 0x08 //ADC启动标志位
#define ADC_SPEEDLL 0x00 //540个时钟周期
#define ADC_SPEEDL 0x20 //360个时钟周期
#define ADC_SPEEDH 0x40 //180个时钟周期
#define ADC_SPEEDHH 0x60 //90 个时钟周期

void InitUart();
void SendData(uchar);
void Delay(uint n);
void InitADC();

uchar ch=0; //ADC通道选择
void main()
{
InitUart(); //初始化串口
InitADC(); //初始化ADC
IE = 0xa0; //打开总中断

while(1);}
/*ADC中断函数*/
void ads_isr() interrupt 5 using 1
{
ADC_CONTR&=!ADC_FLAG; //将ADC结束标志位清零

SendData(ch); //将对应ADC通道号发送给电脑 SendData(ADC_RES); //将转换结果发送给电脑
if(++ch > 7)ch = 0; //下一个ADC通道 ADC_CONTR = ADC_POWER|ADC_SPEEDLL|ADC_START|ch; //打开ADC电源、转换时间540个时钟周期、开始转换、选择通道号
}
/*初始化ADC寄存器*/
void InitADC()
{
P1ASF = 0xff; //定义p1口为ADC转换口
ADC_RES = 0;
ADC_CONTR = ADC_POWER|ADC_SPEEDLL|ADC_START|ch; //打开ADC电源、转换时间540个时钟周期、开始转换、选择通道号
Delay(2); //等待ADC上电稳定然后开始ADC转换?应该是先开电源,等待后再START,可能STC官方程序有问题
}

/*初始化串口*/
void InitUart()
{
SCON = 0x5a;
TMOD = 0x20;
TH1 = 0xfd; //在11.0592MHZ晶振下,波特率为9600
TL1 = 0xfd;
TR1 = 1;
}

/*串口发送数据*/
void SendData(uchar dat)
{
while(!TI);
TI = 0;
SBUF = dat;
}

/*延时函数*/
void Delay(uint n)
{
uint x;

while(n--)
{
x=5000;
while(x--);
}
}

注释原创

‘叁’ 51单片机adc模块的功能是

ADC模块当然是实现模数转换。

‘肆’ 51单片机连电位器一定要adc吗

一定。51单片机连电位器需要adc的,因为作AD用必须一个接电源一个接地,两个电阻中间即VREF接单片机引脚或接一个1K的电阻再接单片机引脚。

阅读全文

与51单片机adc模块相关的资料

热点内容
2021年毕业二本程序员月薪 浏览:892
android饼图控件 浏览:138
下载完课件怎么解压 浏览:300
荆州源码名片 浏览:122
phpdemo视频 浏览:204
程序员转行做大数据 浏览:547
真我t1如何添加加密nfc 浏览:605
股市复盘系统源码 浏览:524
我的世界如何不要钻石创造服务器 浏览:533
虚拟机里面的文件重命名mv命令 浏览:20
安卓什么电话系统最好 浏览:581
进入云服务器输入什么密码 浏览:328
java微信下载手机版 浏览:73
php代码分析工具 浏览:673
泰坦陨落2xbox如何换服务器 浏览:755
安卓手机如何用数据线连接投影 浏览:380
java类的实例变量的区别 浏览:714
千年源码端多少钱 浏览:252
每日英语听力app怎么显示字幕 浏览:674
程序员节买房广告 浏览:370