mymadi
Newbie level 6
anyone can help me to do some coding on max1112 with 8051 based on keil c-compiler?
// Coding for MAX1112 (Serial ADC)
#include <reg51.h>
sbit CS1 = P1^0;
sbit SCLK1 = P1^1;
sbit DIN1 = P1^2;
sbit DOUT1 = P1^3;
sbit LSBRA = ACC^0;
sbit MSBRA = ACC^7;
void Delay (unsigned int msec);
void Sending (void);
void Reading (void);
void main ()
{
while (1)
{
Sending ();
Reading ();
}
}
void Sending ()
{
unsigned char x;
unsigned char conbyte = 0x9E; // Channel 1
ACC = conbyte;
CS1 = 0;
for (x = 0; x < 8; x++)
{
SCLK1 = 0;
DIN1 = MSBRA;
Delay (2);
SCLK1 = 1;
Delay (2);
ACC = ACC << 1;
}
CS1 = 1;
SCLK1 = 0;
}
void Reading ()
{
unsigned char x;
CS1 = 0;
SCLK1 = 1;
//Delay (2);//
SCLK1 = 0;
Delay (2);
for (x = 0; x < 8; x++)
{
SCLK1 = 1;
//Delay (2);//
SCLK1 = 0;
Delay (2);
LSBRA = DOUT1;
ACC = ACC << 1;
}
CS1 = 1;
P0 = ACC;
}
// Delay
void Delay (unsigned int msec) // Delay
{
unsigned int i;
TMOD = 0x01; // Timer 0 Mode 1 (16 Bit)
for (i = 0; i < msec; i++) // mili seconds
{
TH0 = 0xFF; //FC
TL0 = 0xFE; // 17
TR0 = 1; // Turn ON T0
while (TF0 == 0); // Wait for TF0 to roll over
TR0 = 0; // Turn OFF T0
TF0 = 0; // Clear TF0
}
}
// Coding for MAX1112 (Serial ADC)
#include <reg51.h>
sbit CS1 = P1^0;
sbit SCLK1 = P1^1;
sbit DIN1 = P1^2;
sbit DOUT1 = P1^3;
sbit LSBRA = ACC^0;
sbit MSBRA = ACC^7;
void Delay (unsigned int msec);
void Sending (void);
void Reading (void);
void main ()
{
while (1)
{
Sending ();
Reading ();
}
}
void Sending ()
{
unsigned char x;
unsigned char conbyte = 0x9E; // Channel 1
ACC = conbyte;
CS1 = 0;
for (x = 0; x < 8; x++)
{
SCLK1 = 0;
DIN1 = MSBRA;
Delay (2);
SCLK1 = 1;
Delay (2);
ACC = ACC << 1;
}
CS1 = 1;
SCLK1 = 0;
}
void Reading ()
{
unsigned char x;
CS1 = 0;
SCLK1 = 1;
//Delay (2);//
SCLK1 = 0;
Delay (2);
for (x = 0; x < 8; x++)
{
SCLK1 = 1;
//Delay (2);//
SCLK1 = 0;
Delay (2);
LSBRA = DOUT1;
ACC = ACC << 1;
}
CS1 = 1;
P0 = ACC;
}
// Delay
void Delay (unsigned int msec) // Delay
{
unsigned int i;
TMOD = 0x01; // Timer 0 Mode 1 (16 Bit)
for (i = 0; i < msec; i++) // mili seconds
{
TH0 = 0xFF; //FC
TL0 = 0xFE; // 17
TR0 = 1; // Turn ON T0
while (TF0 == 0); // Wait for TF0 to roll over
TR0 = 0; // Turn OFF T0
TF0 = 0; // Clear TF0
}
}