日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32与DS1302的接口电路

發布時間:2025/6/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32与DS1302的接口电路 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
作者在某STM32的應用中外接了一塊DS1302,借鑒原來寫過的PIC代碼,很快移植成功。在這里與大家分享一下。(1)硬件 CLK---PA4, DAT--- PA5, RST--- PA6(2)硬件初始化 CLK與RST均為輸出,而DAT是開漏型的輸出。因為在這種方式下,IO口的讀仍然存在,因此是真正的雙向IO模式。/*DSCK -PA4 DAT PA5 RST DAT*/ #define ds1302Clk GPIO_Pin_4 //與時鐘線相連的芯片的管腳 #define ds1302Dat GPIO_Pin_5 //與數據線相連的芯片的管腳 #define ds1302Rst GPIO_Pin_6 //與復位端相連的芯片的管腳/* PA 4,6,為輸出*/GPIO_InitStructure.GPIO_Pin = ds1302Clk | ds1302Rst ;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);//PA5配置為開漏模式,此模式下可以實現真下的雙向IOGPIO_InitStructure.GPIO_Pin = ds1302Dat;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;GPIO_Init(GPIOA, &GPIO_InitStructure);(3)配置完畢,然后實現的代碼就很簡單了,從現成的代碼移植過來。#define WrEnDisCmd 0x8e //寫允許/禁止指令代碼 #define WrEnDat 0x00 //寫允許數據 #define WrDisDat 0x80 //寫禁止數據 #define OscEnDisCmd 0x80 //振蕩器允許/禁止指令代碼 #define OscEnDat 0x00 //振蕩器允許數據 #define OscDisDat 0x80 //振蕩器禁止數據 #define WrMulti 0xbe //寫入多個字節的指令代碼 #define WrSingle 0x84 //寫入單個字節的指令代碼 #define RdMulti 0xbf //讀出多個字節的指令代碼以上這些#define均放在一個ds1302.h文件中。void SendDat_1302(u8 Dat) { u8 i;u8 cTmp;for(i=0;i<8;i++){ cTmp=Dat&LSB; //數據端等于tmp數據的末位值if(cTmp) //1GPIO_SetBits(GPIOA,ds1302Dat);elseGPIO_ResetBits(GPIOA,ds1302Dat); Dat>>=1;GPIO_SetBits(GPIOA,ds1302Clk);uDelay(1);GPIO_ResetBits(GPIOA,ds1302Clk);} } /*寫入1個或者多個字節,第1個參數是相關命令 #define WrMulti 0xbe //寫入多個字節的指令代碼 #define WrSingle 0x84 //寫入單個字節的指令代碼 第2個參數是待寫入的值 第3個參數是待寫入數組的指針 */ void WriteByte_1302(u8 CmdDat,u8 Num,u8 *pSend) { u8 i=0;GPIO_ResetBits(GPIOA,ds1302Rst);uDelay(1);GPIO_SetBits(GPIOA,ds1302Rst);SendDat_1302(CmdDat);for(i=0;i<Num;i++){ SendDat_1302(*(pSend+i));}GPIO_ResetBits(GPIOA,ds1302Rst); } /*讀出字節,第一個參數是命令#define RdMulti 0xbf //讀出多個字節的指令代碼第2個參數是讀出的字節數,第3個是指收數據數組指針*/ void RecByte_1302(u8 CmdDat,u8 Num,u8 *pRec) { u8 i,j,tmp,cTmp;GPIO_ResetBits(GPIOA,ds1302Rst);//復位引腳為低電平uDelay(1);GPIO_ResetBits(GPIOA,ds1302Clk);uDelay(1);GPIO_SetBits(GPIOA,ds1302Rst);SendDat_1302(CmdDat); //發送命令for(i=0;i<Num;i++){ for(j=0;j<8;j++){ tmp>>=1;cTmp=GPIO_ReadInputDataBit(GPIOA,ds1302Dat);if(cTmp)tmp|=0x80;GPIO_SetBits(GPIOA,ds1302Clk);uDelay(1);GPIO_ResetBits(GPIOA,ds1302Clk); }*(pRec+i)=tmp;}uDelay(1);GPIO_ResetBits(GPIOA,ds1302Rst);//復位引腳為低電平 }/* 當寫保護寄存器的最高位為0時,允許數據寫入寄存器。 寫保護寄存器可以通過命令字節8E、8F來規定禁止寫入/讀出。寫保護位不能在多字節傳送模式下寫入。 當寫保護寄存器的最高位為1時,禁止數據寫入寄存器。時鐘停止位操作:當把秒寄存器的第7位時鐘停止位設置為0時起動時鐘開始 當把秒寄存器的第7位時鐘停止位設置為1時,時鐘振蕩器停止。根據傳入的參數決定相關命令,第一個參數:命令字,第2個參數:寫入的數據寫允許命令;8EH,00H寫禁止命令;8EH,80H振蕩器允許命令;80H,00H振蕩器禁止命令;80H,80H */ void WrCmd(u8 CmdDat,u8 CmdWord) { u8 CmdBuf[2];CmdBuf[0]=CmdWord;WriteByte_1302(CmdDat,1,CmdBuf); }main函數中調用如下:u8 Ds1302SendBuf[8]={0x30,0x32,0x01,0x10,0x01,0x01,0x08,33}; //發送數據緩沖區u8 Ds1302RecBuf[8]; //接收數據緩沖區WrCmd(WrEnDisCmd,WrEnDat); //寫允許WrCmd(OscEnDisCmd,OscEnDat); //振蕩器允許WriteByte(WrMulti,8,Ds1302SendBuf);//將時間值送到DS1302中RecByte(RdMulti,8,Ds1302RecBuf); // 讀出來看看

總結

以上是生活随笔為你收集整理的STM32与DS1302的接口电路的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天操人人 | 日韩中文av在线 | 日韩精品一区在线观看 | 草草色 | 美日韩精品一区二区 | 欧美色图1| 国产精品九九 | 999国产| 亚洲第十页 | 日韩欧美三级在线 | 99mav| 一个人看的视频www 色就是色网站 | 日韩av片在线播放 | 99久久人妻精品免费二区 | 国产精品人妻 | 6—12呦国产精品 | 91精品国产一区二区三区 | 黄色一级在线 | 国产又大又粗又爽的毛片 | 国产女在线| 久久人人爽天天玩人人妻精品 | 亚洲天堂视频在线观看 | 精品久久ai | 久久二 | 久久精品视频偷拍 | 东北女人av| 国产一区二区免费在线 | 中文字幕在线观看91 | 亚洲国产精品影院 | 大地资源影视在线播放观看高清视频 | av高清| 国产超碰人人爽人人做人人爱 | 国产美女免费看 | 少妇xxxx | 高潮疯狂过瘾粗话对白 | 91网站在线看 | 国产精品a级 | 亚洲天堂三区 | 欧美午夜理伦三级在线观看 | 成人免费精品视频 | 在线观看国产 | 蜜桃成人在线观看 | 九九热精品在线视频 | 一区二区三区免费在线视频 | 久久综合色鬼 | 欧洲精品久久久久毛片完整版 | 天天干夜夜添 | 老汉av网站 | 欧美日本色 | 成人在线午夜 | 国产污视频在线观看 | 91玉足脚交白嫩脚丫 | 日本黄色免费网站 | 国产成人毛片 | 欧美最猛性xxxxx(亚洲精品) | 欧美性三级 | 欧美黑人又粗又大的性格特点 | 久久av导航 | 日日爱886| 成人午夜视频网站 | 欧美xxxx黑人| 国产欧美一区二区三区在线 | 操校花视频 | 9色av| 一区自拍| y11111少妇 | 亚洲网在线 | 中文字幕8| 性欧美大战久久久久久久久 | 国产黑丝91 | 日韩小视频在线观看 | 夜夜狠狠| 亚洲黄色免费视频 | 国产精品一色哟哟哟 | np视频 | 中文字幕免费一区 | 欧洲做受高潮免费看 | 骚狐网站 | 人人干天天干 | 老熟妇午夜毛片一区二区三区 | 一级黄网站 | 91超碰在线 | www黄色com | 一区二区在线精品 | av中文一区 | 俺去草| 一级免费黄色大片 | 天堂网一区 | 超碰人人网 | 国产成人精品免费视频 | 天天想夜夜操 | 精品一区二区三区精华液 | 午夜你懂的 | 国产三级自拍视频 | 九九免费| 久草高清 | 美女扒开腿免费视频 | 久久久久久久麻豆 | 国产又大又黑又粗免费视频 |