• 大小: 70KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-07-14
  • 语言: 其他
  • 标签: 51  

资源简介

蓝桥杯单片机设计与开发————蓝桥杯赛题练习——AD转换 1.完成模数转换,将数据转换成电压在LED或LCD上显 2.超限(上限3V,下限2V)声光报警。 3.利用按键可以设定上下限报警值,并将上下限存储在EEPROM中。

资源截图

代码片段和文件信息

/*
  程序说明: IIC总线驱动程序
  软件环境: Keil uVision 4.10 
  硬件环境: CT107单片机综合实训平台 8051,12MHz
  日    期: 2011-8-9
*/

#include “iic.h“


#define somenop Delay5us();    


#define SlaveAddrW 0xA0
#define SlaveAddrR 0xA1

//总线引脚定义
sbit SDA = P2^1;  /* 数据线 */
sbit SCL = P2^0;  /* 时钟线 */


//总线启动条件
void IIC_Start(void)
{
SDA = 1;
SCL = 1;
somenop;
SDA = 0;
somenop;
SCL = 0;
}

//总线停止条件
void IIC_Stop(void)
{
SDA = 0;
SCL = 1;
somenop;
SDA = 1;
}

//应答位控制
void IIC_Ack(bit ackbit)
{
if(ackbit) 
{
SDA = 0;
}
else 
{
SDA = 1;
}
somenop;
SCL = 1;
somenop;
SCL = 0;
SDA = 1; 
somenop;
}

//等待应答
bit IIC_WaitAck(void)
{
SDA = 1;
somenop;
SCL = 1;
somenop;
if(SDA)    
{   
SCL = 0;
IIC_Stop();
return 0;
}
else  

SCL = 0;
return 1;
}
}

//通过I2C总线发送数据
void IIC_SendByte(unsigned char byt)
{
unsigned char i;
for(i=0;i<8;i++)
{   
if(byt&0x80) 
{
SDA = 1;
}
else 
{
SDA = 0;
}
somenop;
SCL = 1;
byt <<= 1;
somenop;
SCL = 0;
}
}

//从I2C总线上接收数据
unsigned char IIC_RecByte(void)
{
unsigned char da;
unsigned char i;

for(i=0;i<8;i++)
{   
SCL = 1;
somenop;
da <<= 1;
if(SDA) 
da |= 0x01;
SCL = 0;
somenop;
}
return da;
}

uchar PCF8591_ad(uchar addr)
{
 uchar date;

 IIC_Start();
 IIC_SendByte(0x90);
 IIC_WaitAck();
 IIC_SendByte(addr);
 IIC_WaitAck();
 IIC_Stop();

 IIC_Start();
 IIC_SendByte(0x91);
 IIC_WaitAck();
 date=IIC_RecByte();
 IIC_Ack(0);
 IIC_Stop();

 return date;
}

void PCF8591_da(uchar date)
{
 IIC_Start();
 IIC_SendByte(0x90);
 IIC_WaitAck();
 IIC_SendByte(0x40);
 IIC_WaitAck();
 IIC_SendByte(date);
 IIC_WaitAck();
 IIC_Stop();
}

uchar AT89C51_read(uchar addr)
{
 uchar date;

 IIC_Start();
 IIC_SendByte(0xa0);
 IIC_WaitAck();
 IIC_SendByte(addr);
 IIC_WaitAck();
 IIC_Stop();

 IIC_Start();
 IIC_SendByte(0xa1);
 IIC_WaitAck();
 date=IIC_RecByte();
 IIC_Ack(0);
 IIC_Stop();

 return date;
}

void AT89C51_write(uchar addrdate)
{
 IIC_Start();
 IIC_SendByte(0xa0);
 IIC_WaitAck();
 IIC_SendByte(addr);
 IIC_WaitAck();
 IIC_SendByte(date);
 IIC_WaitAck();
  IIC_Stop();
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-03-08 19:32  AD转换\
     目录           0  2019-03-08 19:32  AD转换\library\
     文件        2343  2019-03-06 22:35  AD转换\library\iic.c
     文件         388  2019-03-06 22:35  AD转换\library\iic.h
     目录           0  2019-03-08 19:32  AD转换\main\
     文件        1312  2019-03-06 22:08  AD转换\main\common.lst
     文件       28898  2019-03-06 22:53  AD转换\main\ex.m51
     文件       32835  2019-03-06 22:54  AD转换\main\ex.plg
     文件       60417  2019-03-07 15:22  AD转换\main\ex.uvopt
     文件       14706  2019-03-06 22:58  AD转换\main\ex.uvproj
     文件       60420  2019-03-06 22:58  AD转换\main\ex_uvopt.bak
     文件        6863  2019-03-06 22:35  AD转换\main\iic.lst
     文件        1701  2019-03-06 22:08  AD转换\main\interrupt.lst
     文件        2021  2019-03-06 22:08  AD转换\main\key.lst
     文件        1630  2019-03-06 22:53  AD转换\main\main.c
     文件         221  2019-03-06 22:08  AD转换\main\main.h
     文件        3925  2019-03-06 22:53  AD转换\main\main.LST
     文件        1984  2019-03-06 22:08  AD转换\main\nixie.lst
     文件        6376  2009-05-07 14:37  AD转换\main\STARTUP.A51
     文件       14083  2019-03-06 20:28  AD转换\main\STARTUP.LST
     目录           0  2019-03-08 19:32  AD转换\output\
     文件        4801  2019-03-06 22:08  AD转换\output\common.obj
     文件         132  2019-03-06 22:08  AD转换\output\common.__i
     文件       44564  2019-03-06 22:53  AD转换\output\ex
     文件        4821  2019-03-06 22:53  AD转换\output\ex.hex
     文件         223  2019-03-06 22:53  AD转换\output\ex.lnp
     文件         167  2019-03-08 19:32  AD转换\output\ex.plg
     文件       12969  2019-03-06 22:35  AD转换\output\iic.obj
     文件         124  2019-03-06 22:35  AD转换\output\iic.__i
     文件        6421  2019-03-06 22:08  AD转换\output\interrupt.obj
     文件         141  2019-03-06 22:08  AD转换\output\interrupt.__i
............此处省略22个文件信息

评论

共有 条评论