STC12C5A60S2 AD电压高级采集_第1页
STC12C5A60S2 AD电压高级采集_第2页
STC12C5A60S2 AD电压高级采集_第3页
STC12C5A60S2 AD电压高级采集_第4页
STC12C5A60S2 AD电压高级采集_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、STC12C5A60S2-Afe压高级采集/*使用STC单片机内置10AD仅用高八位,分辨 率为 5mV)做的简易电压表 */*本程序AD部分使用了深圳宏晶公司官方 AD转 换示范程序修改,特此鸣谢 */*使用STC12C5A60S2T单片机,12M外部晶振,Keil V3编译通过,AD转换脚定义为P1.1, */*使用芯片本身5V电源为基准,在深圳精创电 子的51/AVR开发板实现。8位共阳LED字符码*/*接P0 口,位线接在P2 口,均为低电平显示, 使用右4位。本显示程序摘自网上,一并感谢*/by/*-2010.07.04writtenaut opccopy (mo on 1.c n)

2、*/#in clude <i ntri ns.H>#i nclude <stc12c5a60s2.H> /STC的新头文件个位十位百位千位 小数点sbit P20 = P2 八 0; / sbit P21 = P2 八 1; / sbit P22 = P2 八 2; / sbit P23 = P2 八 3; / sbit P07 = P0 八 7; II typ edef un sig ned char INT8U;typ edef un sig ned int INT16U;#define AD_SPEED0x40 /0100,00000140个时钟周期转换一次/延时

3、INT8U get_AD_result(INT8U cha nn el); void delay(INT8U delay_time); / 函数int DATA_LED11=0X3F,/*0*/0X06,/*1*/0X5B,/*2*/0X4F,/*3*/0X66,/*4*/0X6D,/*5*/0X7D,/*6*/0X07,/*7*/0X7F,/*8*/0X6F,/*9*/OxFF数码管显示及数据处理;void led(i nt n) /程序P0 = 0xFF;P0 = DATA_LEDn % 10; / 个位 P20 = 0;delay(1);P20 = 1;P0 = 0xFF;P0 = DA

4、TA_LEDn / 10 % 10; / P21 = 0;delay(1);P21 = 1;百位PO = OxFF;PO = DATA_LEDn / 100 % 10; /P22 = 0;delay(1);P22 = 1;P0 = 0xFF;P0 = DATA_LEDn / 1000 % 10; /位显示小数点P23 = 0;P07=0; /delay(1);P23 = 1;/INT8U get_AD_result(INT8U转换部分INT8U AD_fi ni shed=0;储A/D转换标志ADC RES = 0;/cha nn el)/AD高八/位ADC_RESL = 0;位(本例未使用)

5、0x07;cha nnel&=0000,0111 清 0 高 5 位ADC_CONTR = AD_S PEED;cha nn el;/_nop_();选择ADC_CONTR|=A/D当前通道/0x80;_nop_();启动ADC_CONTR|=/A/D电源delay(1);输入电压达到稳定0x08;启动A/D转换,ADC_CONTR/0000,1000 令 ADCS = 1,/AD_fi nished = 0;等待while (AD_fi ni shed =0 )A/D转换结束AD_fi nished = (ADC_CONTR & 0x10);/0001,0000 测试A/D转

6、换结束否0xE7;关闭A/D转换,返/道选择ADC_CONTR&=/1111,0111 清 ADC_FLAG位,return (ADC_RES);/回A/D高8位转换结果void delay(INT8U delay_time) 时函数INT16U n;while(delay_time-)n = 100; while(-n);/ void ADzhua nhua n1(INT8U zh)INT16U ADC_result;0x02;0000,0010,AUXR1将P1.1置成模拟口&=0x04;令ADRJ=0 : 10 位A/D转换结P1ASF/0000,0100,果的高8位放在

7、ADC_RE涪存器,低2位放在0x80;ADC_RES寄存器ADC_CONTR|=/1000,0000 打开A/D转换电源while(1)ADC resultget_AD_result(zh);/P1.1 为 A/D 当前通道, 测量并发送结果led(ADC_result*19.53); /显示数值。19.53是AD转换系数:原公式是ADC result/256*5V*1000 void ADzhua nhua n2(INT8U zh)INT16U ADC_result;0x04;/0000,0010,AUXR1/0000,0100,将P1.1置成模拟口&=P1ASF0x04;令ADR

8、J=0 : 10 位A/D转换结果的高8位放在ADC_RE骑存器,低2位放在ADC_RES寄存器0x80;ADC_CONTR|=/1000,0000 打开A/D转换电源while(1)ADC resultget_AD_result(zh);/P1.1 为 A/D 当前通道, 测量并发送结果led(ADC_result*19.53); /显示数值。19.53是AD转换系数:原公式是ADC result/256*5V*1000void ADzhua nhua n3(INT8U zh)INT16U ADC_result;0x08;/0000,0010,AUXR1/0000,0100,将P1.1置成模

9、拟口&=P1ASF0x04;令ADRJ=0 : 10 位A/D转换结 果的高8位放在ADC_RE骑存器,低2位放在ADC_RES寄存器0x80;ADC_CONTR|=/1000,0000 打开A/D转换电源while(1)为A/D当前通道,ADC resultget_AD_result(zh);/P1.1测量并发送结果led(ADC_result*19.53); /显示数值。19.53是AD转换系数:原公式是ADC result/256*5V*1000void ADzhua nhua n4 (INT8U zh)INT16U ADC_result;P1ASF0000,0010,AUXR1

10、将P1.1置成模拟口&=0x04;令ADRJ=0 : 10 位A/D转换结0x10;0000,0100,果的高8位放在ADC_RE涪存器,低2位放在ADC_RES寄存器0x80;ADC_CONTR|=1000,0000 打开A/D转换电源 while(1) ADC_result get_AD_result(zh);/P1.1 为 A/D 当前通道, 测量并发送结果led(ADC_result*19.53); /显示数值。19.53是AD转换系数:原公式是ADC result/256*5V*1000/匚二r口显示void time()TMOD|=0x02;TH0=0xb6;TL0=0xb

11、6;TR0=1;void uart(void)SCON=0x50;TMOD|=0x20;TH1= 0xfd;TL1= 0xfd;TR1=1;un sig ned char getc(void) while(!RI);RI=0;return(SBUF); void pu tc( un sig ned char ch) SBUF=ch;while(!TI);TI=0;/ void mai n()INT16U ADC_result,k;uart();time();/ ADzhua nhua n1(1);/ ADzhua nhua n2(2);/ ADzhua nhua n3(3);P1ASF=0x10;0000,0010,将P1.1置成模拟匚AUXR1&=0x04;/0000,0100,令 ADRJ=0 : 10 位A/D转换结果的高8位放在ADC RE骑存器,低2位放在ADC_RES寄存器ADC_CONTR|=0x80;/1000,0000打开A/D转

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论