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

📄 call197.c

📁 单片机C语言教程
💻 C
字号:
/*******************************************************************/
/* 这是调用MAX197的汇编程序(MAX197B.ASM)的C51程序。              */
/* 文件名CALL197.C。                                               */
/* 功能:本程序主要是读出MAX197芯片输入通道CH0,CH1,...,CH7的模数   */
/*    转换值,转换值依次放在数组mid1[8]中,转换值的标度变换值放在   */
/*    浮点数组volt[8]中。MAX197芯片的8个通道可编程为单极性/双极    */
/*    性和差动/单端工作,这里采用单端\单极性输入。MAX197有内部时    */
/*    钟和外部时钟两种工作模式,这里采用内部时钟模式。              */
/*    MAX197的控制字:输入电压范围为单极性(0-5V)、内部触发采    */
/*    集方式、第1通道,则应写入16 进制数40H,而对应第8通道则写入47H。*/
/****************************************************************/
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int

void delay1(uint x);
extern  uint chai;          //把全局变量chai声明为外部变量
extern  uint a_func(uchar); //把a_func 声明为外部函数

uint idata mid1[8];
float idata volt[8];
uchar i;

void delay1(uint x)          //延时程序
{
 uchar tw;
 while (x-->0){
 for (tw=0;tw<125;tw++){;}
 }
}

void main()                   //主程序
{
      SP=0x70;
      delay1(1000);
      EA=0;
      chai=a_func(0x40);      // 读出MAX197芯片输入通道CH0的A/D转换值
      mid1[0]=chai;           // 把它放入数组mid1中。
      chai=a_func(0x41);      // 读出MAX197芯片输入通道CH1的A/D转换值
      mid1[1]=chai;           // 把它放入数组mid1中。
      chai=a_func(0x42);
      mid1[2]=chai;
      chai=a_func(0x43);
      mid1[3]=chai;
      chai=a_func(0x44);
      mid1[4]=chai;
      chai=a_func(0x45);
      mid1[5]=chai;
      chai=a_func(0x46);
      mid1[6]=chai;
      chai=a_func(0x47);      // 读出MAX197芯片输入通道CH7的A/D转换值
      mid1[7]=chai;           // 把它放入数组mid1中。
      for (i=0;i<8;i++){
      volt[i]=(mid1[i]/4096.0)*5.0;  // 标度变换。
      }
      while(1);
}

⌨️ 快捷键说明

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