立即注册 找回密码

微雪课堂

搜索
微雪课堂 AVR AVR单片机笑傲江湖 查看内容

PCF8563子程序

2015-6-2 18:18| 发布者: waveshare-admin| 查看: 5084| 评论: 0

摘要: 目 的: 建立PCF8591操作库 目标系统: 基于AVR单片机 应用软件: ICCAVR

/*********************************************************************
 微 雪 电 子   WaveShare   http://www.waveShare.net             
目    的:   建立PCF8591操作库
目标系统:   基于AVR单片机                                                 
应用软件:   ICCAVR                                                      
版    本:   Version 1.0                                                       
圆版时间:   2005-06-25
开发人员:   SEE
说    明:   若用于商业用途,请保留此段文字或注明代码来源
  深 圳 市 微 雪 电 子 有 限 公 司 保 留 所 有 的 版 权     
*********************************************************************/

/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
版本更新记录:

----------------------------------------------------------------------
入口参数说明:
sbit I2C_SCL=P3^1;
sbit I2C_SDA=P3^0;
#define WR_DADR 0x90 //器件地址:A2 A1 A0 = 0 0 0
#define RD_DADR 0x91 //器件地址:A2 A1 A0 = 0 0 0

----------------------------------------------------------------------
待定参数说明:

---------------------------------------------------------------------- 
对外变量说明:

----------------------------------------------------------------------
对外函数说明:

----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/

#ifndef PCF8591_H
#define PCF8591_H

#include "D:\ICC_H\CmmICC.H"
//sbit I2C_SCL=P3^1;
//sbit I2C_SDA=P3^0;
#include "D:\ICC_H\I2C.H"

//器件地址:A0 A1 A2 = 0 0 0
#ifndef WR_DADR 
#define WR_DADR 0x90 //write device-address 
#endif
#ifndef RD_DADR 
#define RD_DADR 0x91 //read device-address
#endif

#define MODE0 0x00 //Channel0 = AIN0;
//Channel1 = AIN1;
//Channel2 = AIN2;
//Channel3 = AIN3;
#define MODE1 0x10 //Channel0 = AIN3-AIN0;
//Channel1 = AIN3-AIN1
//Channel2 = AIN3-AIN2;
#define MODE2 0x20 //Channel0 = AIN0;
//Channel1 = AIN1;
//Channel2 = AIN3-AIN2;
#define MODE3 0x30 //Channel0 = AIN1-AIN0;
//Channel1 = AIN3-AIN2;

#define CHNL0 0 //Using Channel0
#define CHNL1 1 //Using Channel1
#define CHNL2 2 //Using Channel2
#define CHNL3 3 //Using Channel3

#define DAouputEn 0x40 //0x50 or 0x60 or 0x70 is also ok!

/*--------------------------------------------------------------------
函数全称:
函数功能:
注意事项:
提示说明:
输 入: 
返 回:00H~FFH
--------------------------------------------------------------------*/
void PCF8591_getAD(uint8 mode,uint8 chan,uint8 *pRdDat)
{
I2C_Read(WR_DADR,mode|chan,RD_DADR,pRdDat);
}
/*--------------------------------------------------------------------
函数全称:
函数功能:
注意事项:
提示说明:
输 入:00H~FFH 
返 回:
--------------------------------------------------------------------*/
void PCF8591_setDA(uint8 val)
{
I2C_Write(WR_DADR,DAouputEn,val);
}

#endif

 

以下资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!


445

顶一下

刚表态过的朋友 (445 人)

上一篇:AVR PCF8591 程序下一篇:AVR DS1302 程序

最新评论

所有教程
AVR

微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )

GMT+8, 2024-12-22 13:09 , Processed in 0.020532 second(s), 20 queries .

返回顶部