mkliop 发表于 2011-1-25 18:29:45

我做的ADC0832实验代码很RZ,大家给提点意见我刚刚接触单片机

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613325PDXFAB.jpg
(原文件名:照片 011.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613318YBURYO.jpg
实验设备 (原文件名:照片 013.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613319AM3Y2D.jpg
实验设备2 (原文件名:照片 010.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613320M7HGUP.jpg
万用板搭的 (原文件名:照片 007.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613321L7WNA0.jpg
效果 (原文件名:照片 008.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613322AXL26X.jpg
(原文件名:照片 009.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613323Z0MOSL.jpg
(原文件名:照片 017.jpg)

http://cache.amobbs.com/bbs_upload782111/files_36/ourdev_613324AFDIH5.jpg
(原文件名:照片 019.jpg)


代码如下

很RZ:

//ADC0832实验子程序,实现对ADC0832的驱动。
//***********作者刘潼*************


#include <REG52.h>
#include <intrins.h>
sbit bai=P2^7;
sbit h=P2^6;
sbit shi=P2^5;
sbit ge=P2^4;
unsigned char code table[]={0x3f,0x06,
                            0x5b,0x4f,
                                                        0x66,0x6d,
                                                        0x7d,0x07,
                                                        0x7f,0x6f};
unsigned char bdata        a=0;
unsigned int b;
sbit ADCCS=P3^7;
sbit ADCIO=P3^5;
sbit ADCLK=P3^6;
sbit temp=a^0;
void delay()
{
    unsigned char a,b;
    for(b=102;b>0;b--)
      for(a=3;a>0;a--);
}
void delay1()
{
    unsigned char a,b;
    for(b=221;b>0;b--)
      for(a=207;a>0;a--);
}


void ADCch()
{
ADCCS=0;
_nop_();
_nop_();
ADCLK=1;
_nop_();
_nop_();
ADCIO=1;
_nop_();
_nop_();
ADCLK=0;
_nop_();
_nop_();
ADCLK=1;
_nop_();
_nop_();
ADCIO=1;
_nop_();
_nop_();
ADCLK=0;
_nop_();
_nop_();
ADCLK=1;
_nop_();
_nop_();
ADCIO=0;
_nop_();
_nop_();
ADCLK=0;
}
void ADCR()
{
unsigned char i=0;
for(i=0;i<8;i++)
{
        ADCLK=1;
        _nop_();
        _nop_();
        ADCLK=0;
        _nop_();
        _nop_();
        temp=ADCIO;
        a=a<<1;
       
}
ADCCS=1;
}
void main()
{
    TMOD = 0x01;
    TH0 = 0x0DC;
    TL0 = 0x00;
    EA = 1;
    ET0 = 1;
    TR0 = 1;
while(1)
{
ADCch();
ADCR();
delay1();
}
}
void temer0() interrupt 1
{
        b=a;
        b=b*1.97;
      bai=0;
           P0=table;
        delay();
        bai=1;
        P0=0x00;
        delay();
        shi=0;
        P0=table;
        delay();
        shi=1;
        P0=0x00;
        delay();
        ge=0;
        P0=table;
        delay();
        ge=1;
        P0=0x00;
        h=0;
        P0=0x40;
        delay();
        h=1;
        P0=0x00;
        TH0 = 0x0DC;
      TL0 = 0x00;
        TR0 = 1;
}

ahuang227 发表于 2011-1-25 18:47:23

落满了土,不过效果还是不错的,顶你一个,加油。。

mkliop 发表于 2011-1-25 18:49:48

那不是土是手机拍摄的问题

2343258 发表于 2011-2-6 17:59:42

像垃圾堆里出来的。

bbssilverkey 发表于 2012-10-7 09:15:31

挖下坟,那个数码管很可爱
页: [1]
查看完整版本: 我做的ADC0832实验代码很RZ,大家给提点意见我刚刚接触单片机