新闻  |   论坛  |   博客  |   在线研讨会
max197调试记录
tvb2058 | 2007-09-16 10:34:31    阅读:2434   发布文章

 

刚刚 又重新测试了一下 max197 这款我最喜欢的AD 采集芯片,我05年比赛的时候,我就用它,可以说是十分的喜欢,它的芯片性能真的是太好了.由于项目需要,所以从新测试了一下,电路是最简单的测试电路.只用到了一路模拟量输入.

把源程序及电路连接 发上来(由于是用仿真器调试的,没有建立keil工程文件)


/*
 max197
最小系统测试 测试环境 51单片机,总线方式读写
 线路连接:
 
 
共有15根线需要连接,数据线8位(12位精度,4位复用)、电源、地
 控制线:HBEN 控制读写的高低位
  INT  转换完成标志位
  CS   芯片片外地址 选择
  WR   接到单片机WR 脚
  RD   接到单片机RD 脚
  
 
共有8路模拟量输入,这里只用了ch0 通道
 
*/

#include
#include

#define adch XBYTE[0x8000]  // CS 片选线拉低即可 ,随便定义地址

sbit HBEN="P1"^7;   /* When high, the 4 MSBs are multiplexed on the data bus */
    /* when low, the 8 LSBs are available on the bus */
sbit INT="P1"^6;   /* goes low when conversion is complete and output data is ready */

 

void readtemp(void);
unsigned int Data_process(void);
unsigned char datah,datal;

unsigned int read_data;

void main(void)
{
 adch=0x40; //ch0 通道的地址

 while(1)
 {
  read_data = Data_process();
 }
}

 

void readtemp(void)                       
{
 
 while(INT!=0)
 {
  HBEN=0;
 }
 datal=adch;   /* get the 4 MSBs */ 
 HBEN=1;
 datah=adch;   /* get the 8 LSBs */
 HBEN=0;
}
 
unsigned int Data_process(void)
{
 unsigned int data_temp;
 
 readtemp();
 data_temp=datah*256+datal;
 data_temp*=1.2207;
 
 return (data_temp);
}

 

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客