⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main1.c

📁 51编写的AD7714的测试程序
💻 C
字号:
#include <reg51.h>
#include <stdio.h>
#include<stdlib.h>
//#include"uart.c"
#define uchar unsigned char
#define uint  unsigned int
#define WL 1
#define h_filter 0x0cf
#define l_filter 0xa0
#define mode 0x20

uchar data ad_data[3];
//uint  data  ad_data[3];
uchar data  sample[16][3];
uchar bdata temp;
sbit  ad_cs   = P1^1;
sbit  ad_out  = P1^3;
sbit  ad_in   = P1^4;
sbit  ad_sclk = P1^0;
sbit  ad_dr   = P1^2;

sbit rest    = P1^5;

sbit MSB = temp^7;
sbit LSB = temp^0;

void write_reg ( void )
{
    uchar i;
    ad_cs = 1;
    ad_sclk = 0;
    ad_cs = 0;
    for (i=0;i<8;i++)
    {
        ad_in = MSB;
        ad_sclk = 1;
        ad_sclk = 0;
        temp<<=1;
    }
    ad_cs = 1;
}
void read_reg ( void )
{
    uchar i,j;
    temp = 0;
    ad_cs = 1;
    ad_sclk = 0;
    ad_cs = 0;
    for (i=0;i<(2+WL);i++)
    {
        for( j=0;j<8;j++ )
        {
            temp<<=1;
            ad_sclk = 1;
            ad_sclk = 0;
            LSB = ad_out;
        }
        ad_data[i] = temp;
    }
}
void init_ad ( void )
{
    temp = 0x26;
    write_reg ();/*写通信寄存器,下次写滤波高*/
    temp = h_filter;
    write_reg ();/*写滤波高寄存器*/
    temp = 0x36;
    write_reg ();/*写通信寄存器,下次写滤波低*/
    temp = l_filter;
    write_reg ();/*写滤波低寄存器*/
    temp = 0x16;
    write_reg ();/*写通信寄存器,下次写模式*/
    temp = mode;
    write_reg ();/*写模式寄存器*/
}
void rst_ad ( void )
{
    uchar i;
    ad_cs = 1;
    ad_sclk = 0;
    ad_cs = 0;
    ad_in = 1;
    for ( i=0;i<40;i++ )
    {
        ad_sclk = 1;
        ad_sclk = 0;
    }
}

main()
{
    uchar x;
   /* TMOD=0x22; //定时器1为工作模式2(8位自动重装),0为模式2(8位远

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -