您的位置 首页 测评

24C04扩展存储器C和汇编程序

程序功能:统计单片机的开机次数。includereg52h>includeintrinsh>defineuintunsignedintdefineucharunsignedcharsbit

程序功用:计算单片机的开机次数。

#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit sda=P1^1;
sbit scl=P1^0;
uchar temp=0;
uchar data_h,data_l;
uchar state;
const uchar tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

void delayic(uint i)
{
uchar j;
while(i–)
{
for(j=0;j<120;j++);
}
}
void delaym(uchar t)
{
uchar i;
for(i=0;i}
void Start_I2c()
{
sda=1;
_nop_();
scl=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
sda=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
scl=0;
_nop_();
_nop_();
}
void Stop_I2c()
{
sda=0;
_nop_();
scl=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
sda=1;
_nop_();
_nop_();
_nop_();
_nop_();
}
void cack(void)
{
sda=0;
_nop_();
_nop_();
_nop_();
scl=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
scl=0;
_nop_();
_nop_();
}
void mnack(void)
{
sda=1;
_nop_();
_nop_();
_nop_();
scl=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
scl=0;
sda=0;
_nop_();
_nop_();
}
void wrbyt(uchar date)
{
uchar i,j;
j=0x80;
for(i=0;i<8;i++)
{
if((date&j)==0)
{
sda=0;
scl=1;
delaym(1);
scl=0;
}
else
{
sda=1;
scl=1;
delaym(1);
scl=0;
sda=0;
}
j=j>>1;
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/318570.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部