繁体中文
高级搜索
 
首页 | 电子技术应用 | 行业最新动态 | 行业最新产品 | 软件资料下载 | 电路图纸欣赏 | 博客文章精选 | 电子精品论坛 | 电子技术贴吧

当前位置:首页 >> 电子技术应用 >> 单片机-----应用 >> TLC549工作程序
TLC549工作程序
作者:   来源: 发表时间:2007-02-28  字号:  

最近做项目需要用到TLC549,结果网上没有参考程序,于是自己通过数据手册写了一个,以用来交流。

/***************************************************************
*程 序 最 后 修 改 时 间 06-8-9 22:08
*软 件 标 题:TLC549 AD采样子程序
*软 件 说 明:从TLC549读取采样值
*_________________________________________
*
*
*****************************************************************
*
*程序作者:Dai_Weis Dai_Weis@hotmail.com
*
*版本号:2.6.3.19
*
*
*******************************************************************/

#include "intrins.h"

#define Wait1us _nop_();
#define Wait2us {_nop_();_nop_();}
#define Wait4us {Wait2us;Wait2us;}
#define Wait8us {Wait4us;Wait4us;}
#define Wait10us {Wait8us;Wait2us;}
#define Wait30us {Wait10us;Wait8us;Wait4us;Wait2us;}


/************定义接口总线**************/
sbit Clock = P1 ^ 2; //时钟口线
sbit DataOut = P1 ^ 3; //数据输出口线
sbit ChipSelect = P1 ^ 4; //片选口线
/************接口总线定义结束**********/


/*********函数名称:ADCSelChannel********
*
*功能:转换指定通道的模拟量为数字量
*
*说明:
*
*位置:1
*
****************************************/
unsigned char ADCSelChannel(void)
{
unsigned char ConvertValue = 0;
unsigned char i;
ChipSelect = 1; //芯片复位
ChipSelect = 0;
ChipSelect = 1;
Clock = 0;
Wait4us;
ChipSelect = 0; //芯片起始
Wait4us; //等待延时
for (i = 0; i < 8; i ) //输入采样转换时钟
{
Clock = 1;
Clock = 0;
}
ChipSelect = 1; //开始转换
Wait10us; //等待转换结束
ChipSelect = 0; //读取转换结果
Wait4us;
for (i = 0; i < 8; i ) //
{
Clock = 1;
ConvertValue <<= 1;
if (DataOut)
{
ConvertValue = 0x1;
}
Clock = 0;
}
ChipSelect = 1;
return (ConvertValue); //返回转换结果
}

/************ADCSelChannel函数结束**********/


!注意:如果您发现此文章出现影响您的阅读的状况,请从浏览器地址栏里复制本文的链接到留言本报告给站长解决!
  • 上一篇: 基于MAX155的同步数据采集系统
  • 下一篇: 一种多媒体功能丰富的SoC芯片技术与应用

  • >> 联系我们请给我们留言·留言本
    本站所有提供的信息软件资料均来自网络,版权及著作权归原作者所有,如果无意中侵犯了您的相关权利或触及法律法规,请给我们留言, 我们将在24小时内删除。
      浙ICP备05071687号  电子技术精品网