• 大小: 34KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: 其他
  • 标签: 驱动  

资源简介

C51下的AD7705驱动程序,sst89e58单片机,附带max7219驱动程序,很稳定!C51下的AD7705驱动程序,sst89e58单片机,附带max7219驱动程序,很稳定!

资源截图

代码片段和文件信息

#include “sst89e516.h“
#include“intrins.h“

#define Ain1 0x00
#define Ain2 0x01

sbit sclk = P1^7;
sbit drdy = P1^3;
sbit din  = P1^5;
sbit dout = P1^6;
sbit CS_AD7705 = P1^4;

void Writetoreg(unsigned char byteword);
unsigned int Read_16bitdata(void);
void Init_AD7705( unsigned char Channel );
unsigned int Average_Sample(unsigned int Num_Sample);
void Reset_AD7705(void);

void Writetoreg(unsigned char byteword)
{

unsigned char i;

while( !drdy );
sclk = 1;
CS_AD7705 = 0;

for(i = 0; i < 8; i++)
{
sclk = 0;
din = (bit)(byteword & 0x80);
sclk = 1;
byteword <<= 1;
}

CS_AD7705 = 1;

}

unsigned int Read_16bitdata(void)
{

unsigned char i;
unsigned int Sample = 0;

while( drdy );

sclk = 1;
CS_AD7705 = 0;

for(i = 0; i < 16; i++)
{
Sample <<= 1;
sclk = 0;
Sample += (0x0001 & (unsigned int)dout);
sclk = 1;
}

CS_AD7705 = 1;

while( !drdy );

return Sample;

}

void Init_AD7705( unsigned char Channel )
{

CS_AD7705 = 1;

Writetoreg(0x21|Channel); /* Active Channel is Ain1(+)/Ain1(.) next operation as write to the clock register */
Writetoreg(0x08); /* master clock enabled 2.0000MHz Clock(CLKDIV = 1) set output rate to 200Hz*/
Writetoreg(0x11|Channel); /* Active Channel is Ain1(+)/Ain1(.) next operation as write to the setup register */
Writetoreg(0x7c); /* gain = 128 bipolar mode buffer on clear FSYNC and perform a Self Calibration*/

}

unsigned int Average_Sample(unsigned int Num_Sample)
{

unsigned int i;
unsigned long int result = 0;

for(i = 0; i < Num_Sample; i++)
{
//   Init_AD7705();
Writetoreg(0x39);
  result += Read_16bitdata();
}

result = result / Num_Sample;

return (unsigned int)result;
}

void Reset_AD7705(void)
{
    unsigned char i;

sclk = 1;
    for(i = 0;i < 40; i++)
    {  
        sclk = 0; 
        din = 1; 
        sclk = 1; 
    }

}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2008-10-23 20:46  AD7705_V1.1(PERFECT)\
     文件        2985  2008-09-30 14:22  AD7705_V1.1(PERFECT)\max7219.c
     文件        1964  2008-10-24 05:15  AD7705_V1.1(PERFECT)\ad7705.c
     文件        7282  2008-10-29 08:33  AD7705_V1.1(PERFECT)\max7219.OBJ
     文件        3316  2008-10-29 08:38  AD7705_V1.1(PERFECT)\main.OBJ
     文件        1645  2008-10-29 08:29  AD7705_V1.1(PERFECT)\AD7705.Opt
     文件          34  2008-10-29 08:38  AD7705_V1.1(PERFECT)\main.__i
     文件        1644  2008-10-29 05:41  AD7705_V1.1(PERFECT)\AD7705_Opt.Bak
     文件           0  2008-09-30 14:19  AD7705_V1.1(PERFECT)\AD7705_Uv2.Bak
     文件        1278  2008-10-29 08:38  AD7705_V1.1(PERFECT)\main.c
     文件        2714  2008-10-29 08:38  AD7705_V1.1(PERFECT)\main.LST
     文件       17493  2008-10-29 08:38  AD7705_V1.1(PERFECT)\AD7705.M51
     文件        5203  2008-10-29 08:38  AD7705_V1.1(PERFECT)\AD7705.hex
     文件         750  2008-10-29 08:33  AD7705_V1.1(PERFECT)\STARTUP.OBJ
     文件        4644  2008-10-29 08:33  AD7705_V1.1(PERFECT)\ad7705.OBJ
     文件        1917  2008-10-29 08:50  AD7705_V1.1(PERFECT)\AD7705.plg
     文件        4935  2008-10-29 08:33  AD7705_V1.1(PERFECT)\ad7705.LST
     文件        2255  2008-09-30 18:04  AD7705_V1.1(PERFECT)\AD7705.Uv2
     文件       14890  2008-10-29 08:38  AD7705_V1.1(PERFECT)\AD7705
     文件        6376  2008-10-29 08:33  AD7705_V1.1(PERFECT)\STARTUP.A51
     文件       10680  2008-10-29 08:33  AD7705_V1.1(PERFECT)\STARTUP.LST
     文件        5899  2008-10-29 08:33  AD7705_V1.1(PERFECT)\max7219.LST
     文件          89  2008-10-29 08:38  AD7705_V1.1(PERFECT)\AD7705.lnp

评论

共有 条评论