标题:
51单片机驱动da1621源程序+Proteus仿真
[打印本页]
作者:
blue_sea
时间:
2019-12-7 20:00
标题:
51单片机驱动da1621源程序+Proteus仿真
da1621+51单片机仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
51hei.png
(13.68 KB, 下载次数: 61)
下载附件
2019-12-9 01:36 上传
单片机源程序如下:
#include <ds1621.h>
void DelayMS(uint ms)
{
uchar i;
while(ms--)
{
for(i=0;i<120;i++);
}
}
//写
void Master(uchar slave_addr)
{
if(!SCL || !SDA) //sda == 0或scl== 0;
{}
else
{
SDA = 0;
_nop_();
_nop_();
SCL = 0;
_nop_();
_nop_();
write_onebyte_iic(slave_addr);
}
}
void SetTemp(uchar HI,uchar LO)
{
Master(0x90);
write_onebyte_iic(0xa1);
write_onebyte_iic(HI);
SendStop();
DelayMS(10);
Master(0x90);
write_onebyte_iic(0xa2);
write_onebyte_iic(LO);
SendStop();
}
void StartConversion()
{
Master(0x90);
write_onebyte_iic(0xee);
SendStop();
DelayMS(750);
}
void StopConversion()
{
Master(0x90);
write_onebyte_iic(0x22);
SendStop();
DelayMS(750);
}
//读温度
uint ReadTemp()
{
uint d;
Master(0x90);
write_onebyte_iic(0xaa);
SendStop();
Master(0x91);
d = read_onebyte_iic(0);
point = read_onebyte_iic(1)>>7;
SendStop();
return d;
}
void WriteConfig(uchar c)
{
Master(0x90);
write_onebyte_iic(0xac);
write_onebyte_iic(c);
SendStop();
}
复制代码
所有资料51hei提供下载:
ds1621.rar
(844.52 KB, 下载次数: 24)
2019-12-7 20:00 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1