色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DS1302芯片與FPGA之間SPI通信原理

FPGA研究院 ? 來源:FPGA技術實戰 ? 作者:FPGA技術實戰 ? 2024-10-24 14:16 ? 次閱讀

引言:本文通過以DS1302芯片為基礎,介紹該芯片與FPGA之間SPI通信原理,詳細描述硬件設計原理及FPGA SPI接口驅動設計。

1. DS1302硬件設計原理

1.1 概述

DS1302是由美國DALLAS公司推出的具有涓細電流充電能力的低功耗實時時鐘芯片。它提供秒、分鐘、小時、天、日期、月份和年份信息,對于少于31天的月份,月末日期會自動調整,包括閏年的更正。時鐘以24小時或12小時的形式運行,帶有AM/PM指示器。它通過一個簡單的串行SPI接口與微處理器通信,如下圖所示。

wKgZomcZ5piATfbZAAD7wYL5wiM932.jpg

圖1:DS1302管腳定義及典型應用電路

圖2顯示了DS1302芯片內部的主要組件:電源控制、輸入移位寄存器、命令和控制邏輯、振蕩器、實時時鐘和RAM

wKgZomcZ5pmATsjaAAGP-xNenB8640.jpg

圖2:DS1302芯片內部框圖

1.2 管腳定義說明:

VCC2雙電源配置中的主電源引腳。VCC1連接到備用電源(通常為紐扣電池),以在沒有主電源的情況下保持時間和日期。DS1302從VCC1或VCC2中較大的一個操作。當VCC2大于VCC1+0.2V時,VCC2為DS1302供電。當VCC2小于VCC1時,VCC1為DS1302供電。

X1/X2:連接標準32.768kHz石英晶體,石英晶體負載電容典型值為6pF。DS1302也可以由外部32.768kHz振蕩器驅動,在該配置中,X1引腳連接到外部振蕩器信號,并且X2引腳懸空。

GND:地信號。

CE:使能信號,輸入CE信號必須在讀取或寫入期間被斷言為高電平。該引腳有一個內部40kΩ(典型值)下拉電阻器,用于接地。

I/O:輸入/推拉輸出。I/O引腳是3線接口的雙向數據引腳。該引腳有一個內部40kΩ(典型值)下拉電阻器,用于接地。

SCLK:SCLK用于同步串行接口上的數據通信。該引腳有一個內部40kΩ(典型值)下拉電阻器,用于接地。

VCC1:單電源和電池操作系統中的低功率操作以及低功率電池備份。

1.3 振蕩電路

DS1302使用外部32.768kHz晶體,由于芯片內部集成了負載電容,振蕩器電路不需要任何外部電阻器或電容器來操作。表1規定了外部晶體的參數要求。

表1:外部晶體的參數要求

wKgaomcZ5piATYZKAACHX03JWHQ380.jpg

1.4 時鐘精度

時鐘的精度取決于晶體的精度以及振蕩器電路的電容性負載與晶體的電容性負荷之間的匹配精度。溫度偏移引起的晶體頻率漂移將增加額外的誤差。耦合到振蕩器電路中的外部電路噪聲可能導致時鐘快速運行。圖3顯示了用于隔離晶體和振蕩器與噪聲的典型PC板布局。

wKgZomcZ5piABs0NAADq7RzC3Wo216.jpg

圖3:隔離噪聲的典型PCB板布局

1.5 原理圖設計

DS1302與FPGA通過三線SPI接口進行通信,信號連接較為簡單,信號對IO接口速率無要求。

wKgaomcZ5piAI59iAAGnx8P4KDs911.jpg

圖4:DS1302原理圖設計

2. FPGA軟件設計

2.1 SPI接口讀寫時序

SPI接口讀時序操作如圖5所示。讀操作分為兩個階段,第一階段進行寫命令操作,即往I/O數據線上寫入需要讀出的寄存器地址,第二階段是從I/O數據線上讀取當前寄存器數據。

wKgaomcZ5piANHcGAADFk3XeVJg173.jpg

圖5:SPI接口讀操作時序

(1)使能信號CE為高電平,開啟讀操作,啟動時,SCLK必須為低電平;

(2)在SCLK時鐘的上升沿寫入命令字節到I/O數據線;

(3)在SCLK時鐘的下降沿從I/O數據線讀取數據,要注意第一個讀取的bit D0是在寫命令最后一個bit時鐘的下降沿采樣的;

(4)使能信號CE為低電平,結束讀操作。

SPI接口寫時序操作如圖6所示。寫操作分為兩個階段,第一階段進行寫命令操作,即往I/O數據線上寫入需要寫入的寄存器地址,第二階段是往I/O數據線上寫入當前寄存器數據。

wKgZomcZ5pmAYkOYAACy6RkVH94833.jpg

圖6:SPI接口寫操作時序

(1)使能信號CE為高電平,開啟寫操作;

(2)在SCLK時鐘的上升沿寫入命令字節到I/O數據線;

(3)在SCLK時鐘的上升沿寫入數據字節到I/O數據線;

(4)使能信號CE為低電平,結束寫操作。

2.2 寄存器說明

命令字節

DS1302地址/命令字節如下表所示。

wKgaomcZ5pmAZdWfAACAsYWPKpY484.jpg

(1)bit7(MSB):必須是邏輯1。0:禁用對DS1302的寫入;

(2)bit6:0:選擇時鐘/日歷數據,1:選擇RAM數據;

(3)bit5~bit1:指定要寫或讀出的指定寄存器地址;

(4)bit0:0:寫操作,1:讀操作。

注意:命令字節總是從LSB(位0)開始傳輸。

時鐘和日歷寄存器

時間和日歷信息是通過讀取DS1302的寄存器字節來獲得的。表2說明了RTC寄存器。

表2:RTC寄存器

wKgaomcZ5pmAHlmEAAI61O6ZZ24897.jpg

寄存器說明:

(1)時鐘和日歷初始化:可以通過寫入適當的寄存器字節來設置或初始化時間和日歷。

(2)時間和日歷寄存器數據格式:二進制編碼十進制(BCD)格式。

(3)星期幾的寄存器在午夜遞增。與星期幾對應的值是用戶定義的,但必須是連續的(即,如果1等于星期日,則2等于星期一,依此類推)。不合理的時間和日期條目會導致未定義的操作。

(4)每當寫入秒寄存器時,就會重置倒計時鏈。寫入傳輸發生在CE的下降沿。為避免滾動問題,一旦重置倒計時鏈,必須在1秒內寫入剩余的時間和日期寄存器。

(5)DS1302可以在12小時或24小時模式下運行。小時寄存器的第7位定義為12小時或24小時模式選擇位。當為高時,選擇12小時模式。在12小時模式中,第5位為AM/PM位,邏輯高為PM。在24小時模式中第5位是第二個10小時位(20–23小時)。每當12/24位發生變化時,必須重新初始化小時數據。

(6)時鐘停止標志:秒寄存器的bit7被定義為時鐘停止(CH)標志。

1:振蕩器停止,DS1302進入低功耗待機模式,電流消耗小于100nA;

0:時鐘將啟動。

(7)WP寫保護位:控制寄存器的第7位是寫保護位WP。前7位(第0位至第6位)強制為0,讀取時始終讀取0。在對時鐘或RAM進行任何寫入操作之前,位7必須為0。當為高時,寫保護位防止對任何其他寄存器進行寫操作。因此,在嘗試寫入設備之前,應清除WP位。

2.3 軟件設計

軟件設計模塊劃分如下圖7所示。

wKgZomcZ5pmAG5KGAAEutthS76I652.jpg

圖7:軟件設計模塊劃分框圖

軟件主要實現功能:

(1)DS1302芯片SPI接口驅動功能;

(2)DS1302芯片寄存器讀寫控制功能,可以實現時鐘初始化設置;

(2)按鍵消抖功能;

(3)數碼管動態顯示功能。

各個模塊功能:

(1)ds1302_segma.v模塊為頂層模塊,用于實現模塊間互聯;

(2)spi_driver.v實現DS1302 SPI接口通信功能;

(3)ds1302_ctrl_m.v實現DS1302寄存器讀寫控制功能,包括將設置值寫入芯片和將芯片寄存器值讀出控制。

(4)set_init_time.v實現通過按鍵實現時間初始值設置;

(5)Segma.v實現數碼管動態顯示功能(數碼管位有限,只顯示時、分、秒);

(6)KeyJitters.v實現按鍵消抖功能。

3. 軟件實測

軟件下載至電路板,通過SignaTap II在線邏輯分析儀抓取數據如下圖所示。

wKgaomcZ5pmAQX6IAADatwE-BIU838.jpg

圖8:軟件設計模塊劃分框圖

wKgaomcZ5pmALRakAAa9omgpsBM726.jpg

圖9:數碼管顯示實時時鐘初始值

圖8顯示計時初始值正確寫入ds1302芯片寄存器,圖9數碼管顯示了正確的時、分、秒初始值。

來源:本文轉載自FPGA技術實戰公眾號

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1640

    文章

    21910

    瀏覽量

    611600
  • 芯片
    +關注

    關注

    459

    文章

    51891

    瀏覽量

    433202
  • 接口
    +關注

    關注

    33

    文章

    8873

    瀏覽量

    152922
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1748

    瀏覽量

    93949
  • DS1302
    +關注

    關注

    8

    文章

    450

    瀏覽量

    51329

原文標題:FPGA入門基礎之SPI接口設計

文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏

    評論

    相關推薦

    ds1302時鐘芯片

    請問高手,我用的ds1302做的萬年歷,為什么ds1302時鐘芯片的年寄存器的最高位上寫不到"1"阿??? 就是說只能在0~79之間顯示,是什么原因阿?
    發表于 08-11 19:13

    DS1302與單片機之間能進行通信

    DS1302 是DALLAS 公司推出的涓流充電時鐘芯片,內含有一個實時時鐘/日歷和31 字節靜態RAM ,通過簡單的串行接口與單片機進行通信。實時時鐘/日歷電路提供秒、分、時、日、周、月、年的信息
    發表于 08-13 08:58

    DS1302與單片機之間是如何進行通信

    藍橋杯單片機硬件基礎DS1302與單片機之間能簡單地采用同步串行方式進行通信,僅用到三個接口線:RST復位線、I/O數據線和SCLK串行時鐘線。DS1302時鐘寄存器和控制命令
    發表于 01-17 06:36

    DS1302通信線定義和 SPI 怎么這么像呢

    。前邊我們介紹過了 SPI 通信,同學們發現沒發現,這個 DS1302通信線定義和 SPI 怎么這么像呢?事實上,
    發表于 01-17 08:13

    SPI接口和DS1302實時時鐘(12864顯示)

    SPI接口和DS1302實時時鐘(12864顯示),有興趣的同學可以下載學習
    發表于 04-27 16:18 ?38次下載

    基于DS1302芯片的時鐘設計

    基于DS1302芯片的時鐘設計
    發表于 03-01 12:21 ?12次下載

    DS1302芯片中文資料

    DS1302芯片中文資料
    發表于 09-21 08:15 ?59次下載
    <b class='flag-5'>DS1302</b><b class='flag-5'>芯片</b>中文資料

    ds1302芯片介紹,ds1302工作原理解析

    時鐘小編相信大家見怪不怪了,那么時鐘芯片大家知道是什么嗎?今天我們就來談談最常用時鐘芯片ds1302,主要通過ds1302芯片的介紹和
    發表于 10-18 16:19 ?4.6w次閱讀

    DS1302芯片的使用,時鐘芯片DS1302功能匯總

    DS1302大家都知道他是時鐘芯片,知道了原理肯定想知道功能和操作方法,這篇文章就是主要來說DS1302芯片的功能以及時鐘芯片
    發表于 10-19 10:43 ?9820次閱讀

    DS1302時鐘芯片調試經驗,奉上調試時鐘芯片DS1302的程序

     時鐘芯片DS1302目前得到廣泛的應用,但是DS1302的調試還是很有難度的。這篇文章就來說說DS1302時鐘芯片的調試驚艷,奉上時鐘
    發表于 10-19 11:12 ?1.2w次閱讀

    ds1302是什么接口,DS1302時鐘芯片接口分析詳解

    DS1302是達拉斯公司出品的一款實時時鐘芯片。主要是針對年、月、日、周、時、分、秒進行計時,且具有閏年補償等多種功能。這篇文章主要就是說DS1302的到底是屬于什么接口的,同時分析詳解DS1
    發表于 10-19 14:34 ?1.5w次閱讀

    關于SPI串行口與DS1302特點介紹

    SPI串行口與DS1302
    的頭像 發表于 07-10 03:49 ?4919次閱讀
    關于<b class='flag-5'>SPI</b>串行口與<b class='flag-5'>DS1302</b>特點介紹

    SPI協議和DS1302的使用

    文章目錄一、DS1302電路圖二、SPI協議介紹三、SPI時序1.寫字節2.讀字節四、DS1302編程1、寫字節2、讀字節3.編程一、DS1302
    發表于 12-22 19:22 ?10次下載
    <b class='flag-5'>SPI</b>協議和<b class='flag-5'>DS1302</b>的使用

    DS1302 通信時序介紹

    。前邊我們介紹過了 SPI 通信,同學們發現沒發現,這個 DS1302通信線定義和 SPI 怎么這么像呢?事實上,
    發表于 01-18 09:41 ?7次下載
    <b class='flag-5'>DS1302</b> <b class='flag-5'>通信</b>時序介紹

    ds1302中文手冊 ds1302時鐘芯片引腳功能

    電子發燒友網站提供《ds1302中文手冊 ds1302時鐘芯片引腳功能.zip》資料免費下載
    發表于 09-15 15:44 ?29次下載
    <b class='flag-5'>ds1302</b>中文手冊 <b class='flag-5'>ds1302</b>時鐘<b class='flag-5'>芯片</b>引腳功能
    主站蜘蛛池模板: 日韩精品无码免费专区 | 成人短片迅雷下载 | 夜色视频社区 | 求个av网站| 肉肉的各种姿势高H细文 | 三级黄色小视频 | 一亲二脱三插 | 国产激情一级毛片久久久 | 黑人特黄AA完整性大片 | 无码99久热只有精品视频在线 | 九九热这里都是精品 | 91伊人久久大香线蕉 | 俄罗斯bbbb| 国产精品外围在线观看 | Y8848高清私人影院软件优势 | 蜜臀AV人妻久久无码精品麻豆 | 快插我我好湿啊公交车上做 | 青草久久久 | 亚洲三级视频在线 | 国产1广场舞丰满老女偷 | 久久xxxx| 国产欧美一区二区精品性色tv | 在线免费观看国产 | 国内自拍 在线 亚洲 欧美 | 亚洲蜜桃AV永久无码精品放毛片 | 后入到高潮免费观看 | 麻豆国产精品va在线观看约 | 中文字幕a有搜索网站 | 受坐在攻腿上H道具PLAY | 国产高清视频a在线大全 | 第一精品福利导福航 | 色狠狠色狠狠综合天天 | 一个人免费观看完整视频日本 | 中文字幕久精品视频在线观看 | 成人区精品一区二区不卡AV免费 | 亚洲国产在线精品第二剧情不卡 | 99无码熟妇丰满人妻啪啪 | 亚洲综合久久一本伊伊区 | 九九精品久久 | 伊人大香线蕉影院在线播放 | 国产亚洲欧洲日韩在线观看 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品