衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內不再提示

基于FPGA的實時時鐘設計

FPGA技術江湖 ? 來源:FPGA技術江湖 ? 2025-01-06 16:06 ? 次閱讀

大俠好,歡迎來到FPGA技術江湖,江湖偌大,相見即是緣分。大俠可以關注FPGA技術江湖,在“闖蕩江湖”、"行俠仗義"欄里獲取其他感興趣的資源,或者一起煮酒言歡。

今天給大俠帶來基于FPGA實時時鐘的設計,附源碼,獲取源碼,請在“FPGA技術江湖”公眾號內回復“基于FPGA實時時鐘的設計源碼”,可獲取源碼文件。話不多說,上貨。

本次設計采用了美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路 DS1302,它可以對年、月、日、周、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。

DS1302芯片的封裝如下:

e4e45486-cbc1-11ef-9310-92fbcf53809c.png

DS1302芯片有8個引腳,在本次的設計中只要驅動3個引腳就可以了,其他的引腳都是和硬件相連接的,和FPGA連接的有時鐘sclk,串行數(shù)據(jù)數(shù)據(jù)接口IO,以及CE。

工作原理就是在數(shù)據(jù)的傳送過程中先把CE拉高,在每個數(shù)據(jù)的上升沿寫入數(shù)據(jù),在下降沿輸入數(shù)據(jù),一次只能讀寫一位數(shù)據(jù)。最初我們通過一個8位的控制指令來選擇讀寫,如果控制指令是單字節(jié)模式,連續(xù)的8個脈沖上升沿寫入,下降沿讀出數(shù)據(jù),一次只能讀取一個字節(jié),如果是突發(fā)模式通過連續(xù)的脈沖一次性的寫完7個字節(jié)的時間寄存器也可以一次性的讀完8--328位的ram數(shù)據(jù)

控制指令有8位,第七位必須為高,如果是0寫入被禁止,第六位0是對時鐘寄存器的讀寫操作,為1對是控制對RAM區(qū)的讀寫操作。

bit1 -- 5 是對相關寄存器的操作,bit0是讀寫操作。

e4fce3fc-cbc1-11ef-9310-92fbcf53809c.png

各個寄存器的的設置,和每位的表示如下圖,從圖中我們了解到讀寫時控制字是多少以及寫入寄存器的地址,和寫入的8位的時間表示。我們可以通過下表來設置一個初始的時間。

e529a9a0-cbc1-11ef-9310-92fbcf53809c.png

涓流寄存器主要決定了DS1302的充電特性,涓流充電選擇位4--7位,1010涓流充電其他禁止充電,二級管選擇位3--2位,電阻選擇1--0位具體的選擇如下表。

e557bbe2-cbc1-11ef-9310-92fbcf53809c.png

突發(fā)模式下,表示我們可以連續(xù)寫,連讀,連續(xù)寫時必須寫滿7個時鐘寄存器。時序圖如下,SPI通信。

e5769800-cbc1-11ef-9310-92fbcf53809c.png

下表表示數(shù)據(jù)傳送過程中數(shù)據(jù)的延遲,時鐘的周期等時間。

e5a9c504-cbc1-11ef-9310-92fbcf53809c.png

e5d31602-cbc1-11ef-9310-92fbcf53809c.png

本次設計是通過配置DS1302芯片來實現(xiàn)實時時鐘的監(jiān)測,通過控制2個按鍵來選擇我們要在數(shù)碼管上顯示的時間,按下按鍵1來顯示周幾,按下按鍵2來顯示年月日,不按顯示時分秒,這樣顯示符合實時鐘的顯示。思路是先打開寫保護,一個一個寄存器的寫進去,然后關閉寫保護,然后再讀出數(shù)據(jù)。 設計架構圖:

e5ea16b8-cbc1-11ef-9310-92fbcf53809c.png

設計代碼:(源碼文件可從公眾號內部獲?。?總模塊:

e5fcd078-cbc1-11ef-9310-92fbcf53809c.png

控制模塊:(由于控制模塊代碼較多,只展示部分關鍵信號,具體代碼如有需要,請公眾號內自行獲取)

e61e5a04-cbc1-11ef-9310-92fbcf53809c.png

e63fbd98-cbc1-11ef-9310-92fbcf53809c.png

數(shù)碼管模塊:

e6672b80-cbc1-11ef-9310-92fbcf53809c.png

e68a4746-cbc1-11ef-9310-92fbcf53809c.png

e6a61098-cbc1-11ef-9310-92fbcf53809c.png

測試模塊:(Mmodelsim 仿真

e6d090ca-cbc1-11ef-9310-92fbcf53809c.png

仿真圖:

e6e563f6-cbc1-11ef-9310-92fbcf53809c.png

從仿真測試圖中,可以清楚的看到在發(fā)送的寄存器命令時,收回總線控制權,讀數(shù)據(jù)時,釋放了總線控制權。 下圖是突發(fā)讀的時序圖,此次設計是一個一個的寫寄存器,必須寫滿7個時鐘寄存器,然后突發(fā)的讀,突發(fā)讀的時候拉高CE,然后不停的讀接收數(shù)據(jù)。拓展也可以做突發(fā)讀寫,原理一樣,感興趣的可以試一試。

e70c2a54-cbc1-11ef-9310-92fbcf53809c.png

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

    關注

    1630

    文章

    21796

    瀏覽量

    605969
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121147
  • 實時時鐘
    +關注

    關注

    4

    文章

    248

    瀏覽量

    65960
  • 時鐘電路
    +關注

    關注

    10

    文章

    239

    瀏覽量

    50795

原文標題:源碼系列:基于FPGA實時時鐘的設計(附源工程)

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32 RTC實時時鐘(一)

    STM32處理器內部集成了實時時鐘控制器(RTC),因此在實現(xiàn)實時時鐘功能時,無須外擴時鐘芯片即可構建實時時鐘系統(tǒng)。
    的頭像 發(fā)表于 07-22 15:41 ?4826次閱讀
    STM32 RTC<b class='flag-5'>實時時鐘</b>(一)

    【自制】Arduino:oled0-96實時時鐘顯示(mini桌面時鐘part12

    實時時鐘Arduino
    新創(chuàng)司XLOT
    發(fā)布于 :2022年03月01日 16:24:34

    基于FPGA實時時鐘設計

    基于FPGA實時時鐘設計
    發(fā)表于 12-06 20:40

    實時時鐘是什么

    定義:實時時鐘的縮寫是RTC(Real Time Clock).實時時鐘是一個獨立的定時器。RTC模塊擁有一組連續(xù)計數(shù)的計數(shù)哭奮,在相應軟件配置下,可提供時鐘日歷的功能。修改計數(shù)器的值可以重新設置系統(tǒng)當前的時間和日期。...
    發(fā)表于 08-09 06:18

    實時時鐘模DS1302程序列子

    實時時鐘模DS1302程序列子     /*********************************************************************//* 實時時鐘模塊
    發(fā)表于 07-08 16:26 ?142次下載

    ARM基礎應用實驗_實時時鐘

    ARM嵌入式應用程序架構設計實例精講--ARM基礎應用實驗03實時時鐘
    發(fā)表于 07-08 11:08 ?0次下載

    基于實時時鐘模塊 時鐘芯片DS1302

    基于實時時鐘模塊 時鐘芯片DS1302
    發(fā)表于 10-16 11:35 ?40次下載
    基于<b class='flag-5'>實時時鐘</b>模塊 <b class='flag-5'>時鐘</b>芯片DS1302

    實時時鐘芯片有哪些_實時時鐘芯片選型介紹

    本文主要介紹了時鐘芯片有哪些、時鐘芯片結構與工作原理,其次介紹了時鐘芯片布線與時鐘芯片的作用,最后介紹了時鐘芯片選型以及愛普生
    發(fā)表于 01-29 08:44 ?4w次閱讀
    <b class='flag-5'>實時時鐘</b>芯片有哪些_<b class='flag-5'>實時時鐘</b>芯片選型介紹

    實時時鐘芯片應用

    對于一些測控系統(tǒng)或者手持式設備,經(jīng)常需要顯示以及設定時間。目前,市場上有多種實時時鐘芯片提供了這類功能。這種可編程的實時時鐘芯片內置了可編程的日歷時鐘以及一定的RAM存儲器,用于設定以及保存時間
    發(fā)表于 03-16 15:31 ?14次下載
    <b class='flag-5'>實時時鐘</b>芯片應用

    實時時鐘的硬件結構_實時時鐘故障怎么解決

     實時時鐘的縮寫是RTC(Real_Time Clock)。RTC 是集成電路,通常稱為時鐘芯片。
    的頭像 發(fā)表于 11-16 17:10 ?7256次閱讀
    <b class='flag-5'>實時時鐘</b>的硬件結構_<b class='flag-5'>實時時鐘</b>故障怎么解決

    淺談RTC實時時鐘特征與原理

    一、RTC實時時鐘特征與原理 查看STM32中文手冊 16 實時時鐘(RTC)(308頁) RTC (Real Time Clock):實時時鐘 實時時鐘是一個獨立的定時器。RTC模塊
    的頭像 發(fā)表于 06-30 15:54 ?1.1w次閱讀

    實時時鐘RTC】MSP430系統(tǒng)實時時鐘RTC學習日志(完善中)

    2012.1.11 讀取實時時鐘: 1、 RTCRDY 為0時,不能取讀取實時時鐘 RT0PS源于ACLK,為了實時時鐘日歷的正確的運行,ACLK必須是32768Hz。(易出錯) 定時
    發(fā)表于 12-16 16:56 ?10次下載
    【<b class='flag-5'>實時時鐘</b>RTC】MSP430系統(tǒng)<b class='flag-5'>實時時鐘</b>RTC學習日志(完善中)

    CW32實時時鐘(RTC)介紹

    CW32實時時鐘(RTC)介紹
    的頭像 發(fā)表于 10-24 15:36 ?1230次閱讀
    CW32<b class='flag-5'>實時時鐘</b>(RTC)介紹

    Arduino篇—實時時鐘

    DS1307時鐘模塊:** DS1307串行實時時鐘(RTC)是低功耗,全二進制編碼的十進制(BCD)時鐘/日歷以及56字節(jié)的NV SRAM。
    的頭像 發(fā)表于 11-01 16:49 ?2329次閱讀
    Arduino篇—<b class='flag-5'>實時時鐘</b>

    使用實時時鐘

    電子發(fā)燒友網(wǎng)站提供《使用實時時鐘庫.pdf》資料免費下載
    發(fā)表于 10-22 10:09 ?0次下載
    使用<b class='flag-5'>實時時鐘</b>庫
    澳门百家乐公试打法| 百家乐庄闲和收益| 百家乐牌盒| 3U百家乐官网娱乐城| 元朗区| 犹太人百家乐官网的玩法技巧和规则 | 線上投注| 镇坪县| 尊龙百家乐官网娱乐| 百家乐正负计算| 百家乐官网赌博在线娱乐| 百家乐娱乐网址| 大发888打法888| 百家乐官网如何买大小| 大发888赌场网址| 星河百家乐官网的玩法技巧和规则 | 有钱人百家乐官网的玩法技巧和规则| 大发888代理| 澳门百家乐官网必胜看| bet365 论坛| 百家乐牌机的破解法| 高碑店市| 庄闲和百家乐桌布| 扶风县| 天猫百家乐娱乐城| 网上百家乐官网内| 大发888娱乐总代理qq| 百家乐大赢家书籍| 百家乐官网2号技术打法| 百家乐现金网最好的系统哪里有可靠吗| 百家乐官网娱乐城优惠| 百家乐倍投软件| 实战百家乐官网十大取胜原因百分百战胜百家乐官网不买币不吹牛只你能做到按我说的.百家乐官网基本规则 | 威尼斯人娱乐城客户端| 新时代百家乐官网娱乐城| 大发888游戏官方下载客户端 | 太阳百家乐官网3d博彩通| 大发888娱乐城俄罗斯| 属虎属鼠做生意可以吗| 永利百家乐官网现金网| 威尼斯人娱乐平台赌|