PCF8563子程序

来自丢石头百科
Admin讨论 | 贡献2019年11月18日 (一) 16:36的版本 (目 的: 建立PCF8591操作库 目标系统: 基于AVR单片机 应用软件: ICCAVR)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
<tbody></tbody>

/*********************************************************************  微 雪 电 子   WaveShare   <a class="Blue_2_12px_" href="http://www.waveshare.net/" style="color: rgb(7, 66, 184);">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;

  1. define WR_DADR 0x90 //器件地址:A2 A1 A0 = 0 0 0
  2. define RD_DADR 0x91 //器件地址:A2 A1 A0 = 0 0 0

待定参数说明:


 

对外变量说明:


对外函数说明:


10101010101010101010101010101010101010101010101010101010101010101010*/

  1. ifndef PCF8591_H
  2. define PCF8591_H
  3. include "D:\ICC_H\CmmICC.H"

//sbit I2C_SCL=P3^1; //sbit I2C_SDA=P3^0;

  1. include "D:\ICC_H\I2C.H"

//器件地址:A0 A1 A2 = 0 0 0

  1. ifndef WR_DADR 
  2. define WR_DADR 0x90 //write device-address 
  3. endif
  4. ifndef RD_DADR 
  5. define RD_DADR 0x91 //read device-address
  6. endif
  7. define MODE0 0x00 //Channel0 = AIN0;

//Channel1 = AIN1; //Channel2 = AIN2; //Channel3 = AIN3;

  1. define MODE1 0x10 //Channel0 = AIN3-AIN0;

//Channel1 = AIN3-AIN1 //Channel2 = AIN3-AIN2;

  1. define MODE2 0x20 //Channel0 = AIN0;

//Channel1 = AIN1; //Channel2 = AIN3-AIN2;

  1. define MODE3 0x30 //Channel0 = AIN1-AIN0;

//Channel1 = AIN3-AIN2;

  1. define CHNL0 0 //Using Channel0
  2. define CHNL1 1 //Using Channel1
  3. define CHNL2 2 //Using Channel2
  4. define CHNL3 3 //Using Channel3
  5. 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); }

  1. endif