91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 773KB
    文件類(lèi)型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-13
  • 語(yǔ)言: 其他
  • 標(biāo)簽: 51單片機(jī)??

資源簡(jiǎn)介

51單片機(jī)lcd多級(jí)菜單的實(shí)現(xiàn),上LCD和按鍵實(shí)現(xiàn)多級(jí)菜單切換

資源截圖

代碼片段和文件信息

#include?
#include?“24xx.h“

sbit?SDA?=?P0^6;
sbit?SCL?=?P0^7;

enum?eepromtype?EepromType;

void??IICDelay(uchar?DelayCount);
void??IICStart(void);
void??IICStop(void);
bit???IICRecAck(void);
void??IICNoAck(void);
void??IICAck(void);
uchar?IICReceiveByte(void);
void??IICSendByte(uchar?sendbyte);

/***********************************************************************************
輸入:
? DataBuff :為讀寫(xiě)數(shù)據(jù)輸入/輸出緩沖區(qū)的首址
? ByteQuantity :為要讀寫(xiě)數(shù)據(jù)的字節(jié)數(shù)量
Address? :為EEPROM的片內(nèi)地址
? ControlByte? :為EEPROM的控制字節(jié),具體形式為(1)(0)(1)(0)(A2)(A1)(A0)(R/W)其中R/W=1
? ?表示讀操作R/W=0為寫(xiě)操作A2A1A0為EEPROM的頁(yè)選或片選地址;
? EepromType :為枚舉變量需為M2401至M24256中的一種分別對(duì)應(yīng)24C01至24C256;
輸出:?
? 函數(shù)返回值為一個(gè)位變量,若返回1表示此次操作失效,0表示操作成功;
說(shuō)明:?
? ERRORCOUNT為允許最大次數(shù),若出現(xiàn)ERRORCOUNT次操作失效后,則函數(shù)中止操作,并返回1
? SDA和SCL由用戶(hù)自定義,這里暫定義為P0^0和P0^1;
? 其余的用戶(hù)不用管,只要把只子程序放在你的程序中并調(diào)用它就可以了;
***********************************************************************************/
bit?IICReadWrite(uchar?*DataBuff /*DataBuff為讀寫(xiě)數(shù)據(jù)輸入/輸出緩沖區(qū)*/
???uchar?ByteQuantity /*為要讀寫(xiě)數(shù)據(jù)的字節(jié)*/
???uint16?Address /*為EEPROM的片內(nèi)地*/
???uchar?ControlByte /**/
???enum?eepromtype?EepromType)
{
uchar?data?ji=ERRORCOUNT;
bit?errorflag=1;
while(i--)
{
IICStart();
IICSendByte(ControlByte&0xfe);
if(IICRecAck())
{
IICStop();
continue;
}
if(EepromType>M2416)
{
IICSendByte((uchar)(Address>>8));
if(IICRecAck())
{
IICStop();
continue;
}
}
IICSendByte((uchar)Address);
if(IICRecAck())
{
IICStop();
continue;
}
if(!(ControlByte&0x01)) //寫(xiě)數(shù)據(jù)
{
j=ByteQuantity;
errorflag=0;?//********clr?errorflag
while(j--)
{
IICSendByte(*DataBuff++);
if(!IICRecAck())
continue;
errorflag=1;
break;
}
if(errorflag==1)?continue;
break;
}
else //讀數(shù)據(jù)
{
IICStart();
IICSendByte(ControlByte);
if(IICRecAck())
{
IICStop();
continue;
}
while(--ByteQuantity)
{
*DataBuff++=IICReceiveByte();
IICAck();
}
*DataBuff=IICReceiveByte();?//read?last?byte?data
IICNoAck();
errorflag=0;
break;
}
}
IICStop();
if(!(ControlByte&0x01))?//如果寫(xiě)數(shù)據(jù)則延時(shí)
{
IICDelay(255);
IICDelay(255);
IICDelay(255);
IICDelay(255);
}
return(errorflag);
}


/*****************以下是對(duì)IIC總線的操作子程序***/
/*****************啟動(dòng)總線**********************/
void?IICStart(void)
{
SCL=0;?//
SDA=1;
SCL=1;
_nop_();
_nop_();
_nop_();
SDA=0;
_nop_();
_nop_();
_nop_();
_nop_();
SCL=0;
SDA=1;?//
}

/*****************停止IIC總線****************/
void?IICStop(void)
{
SCL=0;
SDA=0;
SCL=1;
_nop_();
_nop_();
_nop_();
SDA=1;
_nop_();
_nop_();
_nop_();
SCL=0;
}

/**************檢查應(yīng)答位*******************/
bit?IICRecAck(void)
{
SCL=0;
SDA=1;
SCL=1;
_nop_();
_nop_();
_nop_();
_nop_();
CY=SDA;?//因?yàn)榉祷刂悼偸欠旁贑Y中的
SCL=0;
return(CY);
}

/***************對(duì)IIC總線產(chǎn)生應(yīng)答*******************/
void?IICACK(void)
{
SDA=0;

?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----

?????文件???????2804??2006-12-19?23:18??src\test.Uv2

?????文件???????4170??2006-12-19?22:34??src\24xx.c

?????文件???????1356??2006-11-19?23:53??src\coulometry.c

?????文件??????41567??2006-12-19?21:40??src\font.c

?????文件????????909??2006-11-18?22:15??src\key.c

?????文件??????15493??2006-11-20?01:03??src\lcd.c

?????文件????????430??2006-12-19?22:35??src\main.c

?????文件???????5146??2006-12-19?22:38??src\menu.c

?????文件???????2642??2006-11-19?23:30??src\objdetect.c

?????文件?????????95??2006-11-18?22:15??src\param.c

?????文件???????1608??2006-11-20?01:07??src\passwd.c

?????文件?????????95??2006-11-18?22:15??src\query.c

?????文件?????????94??2006-11-18?22:15??src\time.c

?????文件????????315??2006-11-16?09:33??src\utili.c

?????文件????????420??2006-12-19?21:31??src\24xx.h

?????文件????????151??2006-11-19?23:13??src\coulometry.h

?????文件????????553??2006-11-20?01:03??src\font.h

?????文件????????323??2006-11-16?11:26??src\key.h

?????文件???????4040??2006-11-20?00:36??src\lcd.h

?????文件????????392??2006-12-19?21:46??src\menu.h

?????文件????????149??2006-11-19?23:13??src\objdetect.h

?????文件?????????74??2006-11-18?22:15??src\param.h

?????文件?????????95??2006-11-19?23:52??src\passwd.h

?????文件?????????74??2006-11-18?22:15??src\query.h

?????文件?????????70??2006-11-18?22:15??src\time.h

?????文件????????526??2006-12-19?22:19??src\Typedef.h

?????文件????????150??2006-11-16?09:33??src\utili.h

?????文件??????36175??2006-12-19?22:43??src\test.hex

?????文件???????1854??2006-12-19?23:18??src\test.Opt

?????文件?????196272??2002-03-06?08:42??字庫(kù)取模專(zhuān)用\Hzk12

............此處省略11個(gè)文件信息

評(píng)論

共有 條評(píng)論

相關(guān)資源