ADC0809+STC89C52程序.doc_第1页
ADC0809+STC89C52程序.doc_第2页
ADC0809+STC89C52程序.doc_第3页
ADC0809+STC89C52程序.doc_第4页
ADC0809+STC89C52程序.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

ADC0809+STC89C52/* 将模拟信号转换为数字信号,并用数码管显示转换的 16进制数电路连接图附后页*/#include#include#define uchar unsigned char#define uint unsigned intsbit start=P30; /AD开始信号,与ALE连接在一起用sbit eoc=P32;sbit oe=P31;sbit clk=P33;sbit p15=P15;sbit p16=P16;sbit p17=P17;uchar code table=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0x01;display(uchar,uchar,uchar);/uchar disp_buffer=0,1;/void delayms(uint x)/ / uint i,j; /for(i=x;i0;i-) / for(j=110;j0;j-);/void control(uchar num1,uchar num2) uint i; uchar s,j; s=num1; for(i=6;i0;i-) p17=0; p15=s%2; s=s/2; p17=1; j=num2;for(i=8;i0;i-) p17=0; p15=j%2; j=j/2; p17=1;p16=1;p16=0;/*/void disply(uchar v1,uchar v2,uchar v3) control(0xfe,tablev1); control(0xfd,tablev2); control(0xfb,tablev3);void init()/产生500khz信号TMOD=0x01;TH0=(65536-1)/256;TL0=(65536-1)%256;/取余EA=1;TR0=1;ET0=1;void main()/uchar temp;uchar a1,a2,a3,adval;init();start=0;oe=0;/P2=0xff;while(1)start=0;start=1;start=0;/while(eoc=0);oe=1;adval=P0;/读入转换的数字量oe=0;/disp_buffer0=temp4;/disp_buffer1=temp&0X0F;/delayms(1); disply(a1,a2,a3);/delayms(1); a1=adval/100; a2=adval%100/10; a3=adval%10;void timer() interrupt 1TH0=(65536-1)/256;TL0=(65536-1)%256;clk=clk;DAC0809花样程序/* 将模拟信号转换为数字信号,并用数码管显示转换的 16进制数*/#include#include#define uchar unsigned char#define uint unsigned intsbit start=P30; /AD开始信号,与ALE连接在一起用sbit eoc=P32;sbit oe=P31;sbit clk=P33;uchar code zfs=0x02;sbit p15=P15;sbit p16=P16;sbit p17=P17;uchar code table=0xfd,0x61,0xdb,0xf3,0x67,0xb7,0xbf,0xe1,0xff,0xf7,0x02;display(uchar,uchar,uchar);/uchar disp_buffer=0,1;void delayms(uint x) uint i,j; for(i=x;i0;i-) for(j=30;j0;j-);void control(uchar num1,uchar num2) uint i; uchar s,j; s=num1; for(i=6;i0;i-) p17=0; p15=s%2; s=s/2; p17=1; j=num2;for(i=8;i0;i-) p17=0; p15=j%2; j=j/2; p17=1;p16=1;p16=0;/*/void disply(uchar v1,uchar v2,uchar v3,uchar k1,uchar k2,uchar k3) control(0xfe,zfsk1); control(0xfd,tablev1); control(0xfb,tablev2); control(0xf7,tablev3); control(0xef,zfsk2); control(0xdf,zfsk3); void init()/产生500khz信号TMOD=0x01;TH0=(65536-1)/256;TL0=(65536-1)%256;/取余EA=1;TR0=1;ET0=1;void main()/uchar temp;uchar a1,a2,a3,a4,a5,a6,adval;init();start=0;oe=0;/P2=0xff;while(1)start=0;start=1;start=0;/while(eoc=0);oe=1;adval=P0;/读入转换的数字量oe=0;/disp_buffer0=temp4;/disp_buffer1=temp&0X0F;/delayms(1); disply(a1,a2,a3,a4,a5,a6);/dela

温馨提示

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

评论

0/150

提交评论