日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
高精度實(shí)時(shí)時(shí)鐘-SD2001驅(qū)動(dòng)程序
高精度實(shí)時(shí)時(shí)鐘-SD2001驅(qū)動(dòng)程序
 更新時(shí)間:2008-8-17 16:48:59  點(diǎn)擊數(shù):9
【字體: 字體顏色

函數(shù)說(shuō)明:私有函數(shù),I2C專用
LSB
---------------------------------------------------------------------------------*/
void SD2001_I2CSendByte1(unsigned char ch)
{
unsigned char i=8;
while(i--)
{
SD2001_SCL=0;_nop_();
SD2001_SDA=(bit)(ch & 0x01); ch>>=1; SomeNOP();
SD2001_SCL=1; SomeNOP();
}
SD2001_SCL=0;
//WaitAck();
}
//ACK
bitout()
{
SD2001_SDA=0;
SD2001_SCL=0;
SD2001_SDA=0;
SomeNOP();
SD2001_SCL=1; SomeNOP();
SD2001_SCL=0;
}
//接受時(shí)鐘的1位
bit bitin()
{
bit temp;
SD2001_SDA=1;
SD2001_SCL=0;
SomeNOP();
temp=SD2001_SDA;
SomeNOP();
SD2001_SCL=1;
SomeNOP();
SD2001_SCL=0;
return(temp);
}
//接受時(shí)鐘的1個(gè)字節(jié)
unsigned char rx()
{
unsigned char i=8;
unsigned char dat=0;
while(i--)
{
dat>>=1;
if(bitin())
dat=dat 0x80;
}
return(dat);
}
/*-------------SRAM-------------*/
SRAMACK()
{
SCLE=0; SomeNOP(); //ACK
SDAE=0; SomeNOP();
SCLE=1; SomeNOP();
SCLE=0; SomeNOP();
}
void SRAMSent(unsigned char ch) //發(fā)送一個(gè)字節(jié)給RAM
{
unsigned char i=8;
while(i--)
{
SCLE=0;_nop_();
SDAE=(bit)(ch&0x80); ch<<=1; SomeNOP();
SCLE=1; SomeNOP();
SCLE=0;
}
SDAE=1;
SCLE=0; SomeNOP(); //ACK
SCLE=1; SomeNOP(); //ACK
while(SDAE==1){} //ACK
SCLE=0;
}
SRAMRX() //接收一個(gè)字節(jié)從RAM
{
unsigned char i=8,dat=0;
SCLE=0;SomeNOP();
SDAE=1;SomeNOP();
while(i--)
{
SCLE=1;SomeNOP();
dat<<=1;
dat =SDAE;
SCLE=0;
}
return(dat);
}
/*==============================*/
//改時(shí)鐘
void initSD2001Time(unsigned char year,unsigned char month,unsigned char day,unsigned char date,unsigned char hour,unsigned char minute,unsigned char second)
{
SD2001_I2CStart();
SD2001_I2CSendByte(0x64); //從年開始寫
bitout();</P><P> SD2001_I2CSendByte1(year); //寫入年
bitout();
SD2001_I2CSendByte1(month);
bitout();
SD2001_I2CSendByte1(day);
bitout();
SD2001_I2CSendByte1(date);
bitout();
SD2001_I2CSendByte1(hour);
bitout();
SD2001_I2CSendByte1(minute);
bitout();
SD2001_I2CSendByte1(second);
bitout();
SD2001_I2CStop();
}</P><P>//讀時(shí)間
ReadSD2001_Time()
{
unsigned char time[8]=0,i;
SD2001_I2CStart();
SD2001_I2CSendByte(0x65); //從年開始讀
bitout();
i=8;
while(i--)
{
time[i]=rx();
bitout();
}
SD2001_I2CStop();
SD2001_year =time[7];
SD2001_month =time[6];
SD2001_day =time[5];
SD2001_date =time[4];
SD2001_hour =time[3]&0x7F;
SD2001_minute=time[2];
SD2001_second=time[1];
}
//時(shí)鐘初始化
InitSD2001()
{
SD2001_I2CStart();
SD2001_I2CSendByte(0x62);//寫狀態(tài)寄存器
bitout();
SD2001_I2CSendByte1(0xC2);//Power 12/24 INT1AE INT2AE INT1ME INT2ME INT1FE INT2FE
// 1 1 0 0 0 0 1 0
SD2001_I2CStop();
}</P><P>//向ram寫入數(shù)據(jù)
SaveToSRAM(unsigned int Address,unsigned char SRAM_Dat)
{
unsigned char AddrH,AddrL;
AddrL=Address;
AddrH=Address>>8;
I2CStartRAM();
SRAMSent(0xA0); //送關(guān)鍵字
SRAMSent(AddrH); //送高地址 已經(jīng)含ACK
SRAMSent(AddrL); //送低地址
SRAMSent(SRAM_Dat);
I2CStopRAM();
}//從ram中讀取數(shù)據(jù)
LoadFromSRAM(unsigned int Address)
{
unsigned char AddrH,AddrL,Dat;
AddrL=Address;
AddrH=Address>>8;
I2CStartRAM();
SRAMSent(0xA0); //送關(guān)鍵字
SRAMSent(AddrH); //送高地址 已經(jīng)含ACK
SRAMSent(AddrL); //送低地址 
I2CStartRAM();
SRAMSent(0xA1);
Dat=SRAMRX();
I2CStopRAM();
return(Dat);
}
////////////////////////////////////////
main()
{
unsigned char a;
InitSD2001();
//initSD2001Time(0x03,0x01,0x20,0x01,0x15,0x50,0x00);//對(duì)表
ReadSD2001_Time();
SaveToSRAM(5,20);
a=LoadFromSRAM(5);</P><P>
while(1)
{
ReadSD2001_Time();
_nop_();
}
}

  • 上一篇: 串口FLASH--AT45DB041
  • 下一篇: 直接輸入二進(jìn)制常數(shù)的KEIL C補(bǔ)丁,如輸入B0000_0101;則宏替換后就是0x05
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1