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

📄 adc22p.i

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 I
字号:
#line 1 "ADC22P.c"





#line 1 "e:\03 电机控制器测试平台\04软件\01硬件驱动程序\04 tlc2543\01 spi/ADC22P.h"
#line 1 "e:\03 电机控制器测试平台\04软件\01硬件驱动程序\04 tlc2543\01 spi/GP32C.H"

































































































#line 2 "e:\03 电机控制器测试平台\04软件\01硬件驱动程序\04 tlc2543\01 spi/ADC22P.h"
#line 1 "e:\03 电机控制器测试平台\04软件\01硬件驱动程序\04 tlc2543\01 spi/Type.h"





typedef unsigned char  INT8U;
typedef signed   char  INT8S;
typedef unsigned int   INT16U;
typedef signed   int   INT16S;
typedef unsigned long  INT32U;
typedef signed   long  INT32S;
typedef float          FP32;
typedef double         FP64;





#line 3 "e:\03 电机控制器测试平台\04软件\01硬件驱动程序\04 tlc2543\01 spi/ADC22P.h"






void SPIInit(void);
void ADC11P(INT16U *ADValue);
void TLC2543(INT16U cs,INT16U channel,INT8U *buf);
#line 7 "ADC22P.c"








void ADC11P(INT8U cs,INT16U *ADValue)
{
	INT8U i,j,k,flag,buff[2];
    INT16U temp;


    for(flag=0;flag<=10;flag++)
    	ADValue[flag]=0;


    TLC2543(cs,0,buff);


    for(k=1;k<=16;k++)
    {
      flag=0;

      for(j=0;j<=10;j++)
      {

        TLC2543(cs,j,buff);

        temp=*((unsigned int *)buff);
        ADValue[flag]=ADValue[flag]+temp;
        flag++;
      }
    }


    for(flag=0;flag<=10;flag++)
       ADValue[flag]=ADValue[flag]/16;
}










void TLC2543(INT16U cs,INT16U channel,INT8U *buf)
{
  INT8U temp;


 *(volatile unsigned char *)0x06 =0xff;
 *(volatile unsigned char *)0x02 = 0xff;


 *(volatile unsigned char *)0x02 &= ~(1<<cs);


 *(volatile unsigned char *)0x12 = (channel<<4) | 0x0C;


  while ((*(volatile unsigned char *)0x11 & (1<< 3)) == 0);


  while ((*(volatile unsigned char *)0x11 & (1<< 7)) == 0);


  *buf = *(volatile unsigned char *)0x12;
 *(volatile unsigned char *)0x12 = *buf;


  while ((*(volatile unsigned char *)0x11 & (1<< 3)) == 0);


  while ((*(volatile unsigned char *)0x11 & (1<< 7)) == 0);


  *(buf+1) = *(volatile unsigned char *)0x12;


 *(volatile unsigned char *)0x02 = 0xff;


  *(buf+1) = (*(buf+1)>>4) | (*buf<<4);
  *buf = *buf>>4;
 }

⌨️ 快捷键说明

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