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

資源簡介

51電子鬧鐘實現了:界面LCD1602顯示器,顯示年、月、日、星期、時、分、秒、溫度,具有鬧鐘設定,鈴聲變換設定,時間設定,事件設定,掉電不丟失,12/24進制切換功能。 資源含有實驗報告及源碼(含注釋及使用方法)

資源截圖

代碼片段和文件信息

#include?“AT24C02.h“
#include?“common.h“

//寫入一個字節數據到wordaddress指定的單元
unsigned?char?AT24C02_writebyte(?unsigned?char?wordaddress?unsigned?char?c?)
{
IIC_start(); ??//發送起始信號

IIC_sendbyte(?AT24C02_DEVICE?); ??//發送器件地址
if?(?IIC_receiveack()?==?0?) ??//等待應答信號
return?FAIL;

IIC_sendbyte(?wordaddress?); ??//發送存儲單元地址
if?(?IIC_receiveack()?==?0?) ??//等待應答信號
return?FAIL;

IIC_sendbyte(?c?); ?//發送一個字節數據
if?(?IIC_receiveack()?==?0?) ?//等待應答信號
return?FAIL;

IIC_stop(); ?//發送停止信號
delay_ms(15); ?//延時10ms等待EEPROM操作完成

return?SUCCESS; ?//寫入成功
}

//寫入一頁數據(8B)到pageaddress指定的頁,pageaddress必須頁對齊,即pageaddress%8為0
unsigned?char?AT24C02_writepage(?unsigned?char?pageaddress?unsigned?char?*c)
{
unsigned?char?i;
IIC_start(); ?//發送起始信號

IIC_sendbyte(?AT24C02_DEVICE?); ?//發送器件地址
if?(?IIC_receiveack()?==?0?) ?//等待應答信號
return?FAIL;

IIC_sendbyte(?pageaddress?); ?//發送頁地址
if?(?IIC_receiveack()?==?0?) ?//等待應答信號
return?FAIL;

for?(?i?=?0;?i? {
IIC_sendbyte(?c[i]?); ?//寫入一個字節數據
if?(?IIC_receiveack()?==?0?) ?//等待應答信號
return?FAIL;
}

IIC_stop(); ??//發送停止信號
delay_ms(15); ??//延時10ms等待EEPROM操作完成

return?SUCCESS; ??//寫入成功
}

//寫入strnum字節到wordaddress開始的單元
unsigned?char?AT24C02_writestring(?unsigned?char?wordaddress?unsigned?int?strnum?unsigned?char?*str?)
{
unsigned?char?begin;
unsigned?char?rest;
unsigned?char?pageaddress;

unsigned?char?i;
unsigned?char?*strpoint;

strpoint?=?str;
rest?=?strnum;

//前面非頁對齊的字節處理,一頁為8個字節
begin?=?wordaddress?&?0x07; //屏蔽地址中的高5位,只留低3位,得到頁內偏移0x07=0000?0111
if?(?begin?) //如果頁面偏移不為0,表示非頁對齊
{
for?(?i?=?0;?i? {
if?(?AT24C02_writebyte(?wordaddress?+?i?*strpoint?)?==?FAIL?) //寫入一個字節
return?FAIL;
strpoint++; //更新數據指針
rest--; //還剩rest個字節要寫入AT24C02
}
}

pageaddress?=?wordaddress?&?0xF8?+?1; //準備整頁寫入?xF8=1111?1000,高5位為頁地址,pageaddress指向下一頁
while?(?rest?>=?8?) //剩余的rest個字節大于一頁(8字節)則進入循環進行整頁寫操作
{
if?(?AT24C02_writepage(?pageaddress?strpoint?)?==?FAIL?) //寫入一頁
return?FAIL;
strpoint?=?strpoint?+?8; //數據指針指向后移8字節;
rest?=?rest?-?8; //剩余數據減少了8個字節

pageaddress?=?pageaddress?+?0x08;
if?(?pageaddress??>?0xF8?) //AT24C02總共32頁(0~31),?如果寫完最后一頁(31)
pageaddress?=?0; ????//則循環到從第0頁開始
}

//最后不夠一頁的處理
if?(?rest?>?0?) ??? //還有剩余的數據沒寫入
{
?for?(?i?=?0;?i? ?{
? if?(?AT24C02_writebyte(?pageaddress?+?i?*strpoint?)?==?FAIL?) ??//逐個字節寫入
return?FAIL;
strpoint++;
?}

}

return?SUCCESS;
}

//從AT24C02中的wordaddress單元讀取一個字節
unsigned?char?AT24C02_readbyte(?unsigned?char?wordaddress?)
{
unsigned?char?c;

IIC_start(); ???//發送起始信號

IIC_sendbyte(?AT24C02_DEVICE?); ?//發送器件地址
if?(?IIC_receiveack()?==?0?) ?//等待應答信號
return?FAIL;

IIC_s

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-05-06?14:17??綜合實驗\
?????文件?????????246??2020-05-06?14:13??綜合實驗\README.txt
?????文件?????????162??2020-05-06?14:13??綜合實驗\~$綜合實驗.docx
?????目錄???????????0??2019-01-21?20:44??綜合實驗\電子鬧鐘\
?????文件????????5138??2019-01-06?15:28??綜合實驗\電子鬧鐘\AT24C02.c
?????文件?????????823??2018-09-01?10:22??綜合實驗\電子鬧鐘\AT24C02.h
?????文件???????74482??2019-01-21?20:44??綜合實驗\電子鬧鐘\Clock.uvgui.Aaron
?????文件????????7327??2019-01-06?15:49??綜合實驗\電子鬧鐘\Clock.uvopt
?????文件???????14848??2019-01-06?15:49??綜合實驗\電子鬧鐘\Clock.uvproj
?????文件?????????382??2018-12-27?18:07??綜合實驗\電子鬧鐘\common.c
?????文件?????????125??2018-09-01?10:23??綜合實驗\電子鬧鐘\common.h
?????文件????????8331??2019-01-02?19:29??綜合實驗\電子鬧鐘\DS1302.c
?????文件????????3155??2018-12-29?11:50??綜合實驗\電子鬧鐘\DS1302.h
?????文件????????3822??2018-09-01?10:22??綜合實驗\電子鬧鐘\IIC.c
?????文件?????????349??2019-01-06?15:28??綜合實驗\電子鬧鐘\IIC.h
?????文件????????5233??2018-12-31?14:16??綜合實驗\電子鬧鐘\LCD1602.c
?????文件????????2970??2018-12-28?11:11??綜合實驗\電子鬧鐘\LCD1602.h
?????目錄???????????0??2019-01-21?20:35??綜合實驗\電子鬧鐘\Listings\
?????文件????????9293??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\AT24C02.lst
?????文件??????118244??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\Clock.m51
?????文件????????1595??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\common.lst
?????文件???????15453??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\DS1302.lst
?????文件????????7594??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\IIC.lst
?????文件????????9001??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\LCD1602.lst
?????文件???????52159??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\main.lst
?????文件????????9711??2019-01-16?20:44??綜合實驗\電子鬧鐘\Listings\temp.lst
?????文件???????27661??2019-01-21?20:44??綜合實驗\電子鬧鐘\main.c
?????文件????????4341??2018-12-30?22:29??綜合實驗\電子鬧鐘\Music.h
?????文件???????15354??2018-12-29?17:10??綜合實驗\電子鬧鐘\music_code.h
?????目錄???????????0??2019-01-21?20:35??綜合實驗\電子鬧鐘\objects\
?????文件???????10690??2019-01-16?20:44??綜合實驗\電子鬧鐘\objects\AT24C02.obj
............此處省略13個文件信息

評論

共有 條評論