資源簡介
C51下的AD7705驅(qū)動程序,sst89e58單片機,附帶max7219驅(qū)動程序,很穩(wěn)定!C51下的AD7705驅(qū)動程序,sst89e58單片機,附帶max7219驅(qū)動程序,很穩(wěn)定!

代碼片段和文件信息
#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? {
// ? 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
評論
共有 條評論