999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用FPGA設計實現創意番茄鐘

2021-06-29 06:56:26西安交通大學馬麗媛
電子世界 2021年10期

西安交通大學 馬麗媛

番茄工作法是一種簡單易行、更加微觀的時間管理方法,有助于提高工作效率,同時保證充足的休息。本文基于Xilinx公司的EGO1平臺,利用現場可編程門陣列FPGA芯片和硬件描述語言Verilog編程設計了一個番茄鐘,具有可設定和調節番茄時間、控制啟停、狀態切換、閃爍提醒、通用時鐘等多種功能,為番茄工作法的實現提供了一條切實可行的解決途徑。

隨著現代社會的飛速發展,勞動強度和工作任務也在不斷加大,如何充分利用和管理時間,提高工作效率的同時保證充足的休息是人們面臨的一個實際問題,為此,番茄工作法被提出并為越來越多的人所接受。

番茄工作法是一種簡單易行、更加微觀的時間管理方法。利用它可將任務分解,設定一個番茄時間,在番茄時間內專注工作,中途不允許做任何與該任務無關的事,直到番茄鐘響起,然后在紙上畫一個記號,如此視作種一個“番茄”;之后設定一個番茄休息時間,短暫休息一下,哪怕工作沒有完成,也要定時休息,然后再進入下一個番茄時間。結束一天的工作后,根據番茄記錄對當日的工作學習情況進行復盤。

可見,番茄工作法提高了注意力,減少了中斷,可以增強決策意識,精確地保質保量改進工作學習流程,對日常的時間管理提供了很大幫助。本文根據番茄工作法的特點和功能要求,基于Xilinx公司生產的Artix-7系列現場可編程門陣列(Field Programmable Gate Array,FPGA)芯片XC7A35T-1CSG324C以及EGO1開發平臺、利用Verilog硬件描述語言編程設計了一款簡便、實用的番茄鐘,為實現番茄工作法提供了便利。

1 番茄鐘的總體設計

1.1 功能設計

根據番茄工作法,本文設計的番茄鐘可實現25min和5min兩種倒計時。其中25min主要用于定時工作學習,5min用于定時休息。根據用戶需要也可通過調節時、分、秒、清零等按鍵自行設定其它番茄時間;25min倒計時結束,系統會自動轉為5min倒計時狀態。25min與5min可實現循環倒計時,也可通過start_stop和load按鍵分別控制時鐘的開始/暫停、狀態切換以及置數;每次倒計時至全零狀態時,數碼管閃爍15s用于提示前一階段的結束,并能自動切換至下一初值狀態;將一個“25min+5min”視為一個番茄周期,可記錄并顯示番茄周期數,供用戶總結當天的工作學習情況。此外,系統還設計了通用的時鐘功能,亦可作為正常的時鐘使用。

圖1 番茄鐘的系統結構

1.2 系統結構

整個系統采用自頂向下的層次化設計方法,頂層模塊調用分頻、開關消抖、有限狀態機及計時、動態顯示模塊以實現復雜的數字電路設計。系統總體結構如圖1所示,其中,最左側的第一級為一個100MHz的分頻模塊,經分頻后分別得到秒脈沖信號、用于顯示閃爍控制的2Hz時鐘信號、用于按鍵消抖的500Hz時鐘信號等。此后的第2級為5個按鍵的消抖模塊,有效按鍵輸出給后續第3級的狀態機和計數模塊,最右側第4級為動態顯示模塊,其輸出連接到8個數碼管的段和位,用于顯示結果。

2 各模塊的功能實現

2.1 分頻和消抖模塊

系統時鐘為100MHz,分頻模塊利用計數器分頻后分別得到1Hz、2Hz等不同頻率的信號供后續電路使用。按鍵消抖采用延時的方法,延時后當輸入的按鍵電平與之前電平一致時,判定為有效按鍵。

2.2 狀態機和計數模塊

該模塊是整個設計的核心,狀態轉換和倒計時、時間調節、番茄數的累計等都由該模塊完成。根據所要完成的功能,整個系統需要處理9種狀態,且相互之間有著復雜的轉換關系。若采用畫流程圖的思路設計,會很快陷入困境。因此,本文采用有限狀態機來描述對象,邏輯清晰,表達力強,且利于系統的結構化和模塊封裝。所謂狀態機是指一個系統或機器,由若干個狀態構成,觸發這些狀態會發生狀態相互轉移的事件。由于狀態往往是有限的,所以狀態機又稱為有限狀態機,它是一個非常有用的模型,可以模擬世界上大部分的事物。

有限狀態機在任意時刻都處于有限狀態集合中的某一狀態。當其被觸發時,將從當前狀態轉換到另一個狀態,或者仍然保持在當前狀態。任何一個有限狀態機都可以用狀態轉換圖或狀態轉換表來描述。本文根據番茄鐘的功能,列出了9種狀態及其相互之間的轉換關系,如表1所示,其中包括:25min初態、倒計時25min開始、25min倒計時暫停、25min倒計時結束時閃爍提醒、5min初態、倒計時5min開始、5min倒計時暫停、5min倒計時結束時閃爍提醒、以及全0狀態。

根據表1,對狀態進行編碼,然后采用兩段式描述方法編寫程序。如圖2所示,先使用一個always塊(圖(a))描述狀態的轉移關系,如現態cstate處于S1狀態時,若觸發條件為開始/暫停按鍵key1,則轉向次態(nstate)S2,否則維持;然后,再用另一個always塊(圖(b))描述狀態轉移的條件和狀態輸出,如現態為S1時,計數使能端cnt_en置為1,置數端置為0。以此類推,實現9個狀態及其關系的描述。

表1 狀態轉換表

圖2 狀態機程序設計例程

2.3 顯示模塊

系統用8個數碼管構成動態掃描的方式顯示結果。它接收計數模塊送來的時鐘、番茄數等信號,編程實現動態掃描數碼管的位、查段碼表并輸出段碼的方式將信號輸出給數碼管。時間顯示在右側數碼管上,番茄數顯示在左側數碼管上。

結論:本文基于FPGA、利用層次化的編程方法和有限狀態機的設計思想,實現了一個番茄鐘。產品具有可設定和調節番茄時間、控制啟停、狀態切換、閃爍提醒、通用時鐘等多種功能,便于日常學習工作的時間管理,可滿足番茄工作法的市場需求。

主站蜘蛛池模板: 亚洲综合香蕉| 亚洲一区二区黄色| 青草娱乐极品免费视频| 97一区二区在线播放| 亚洲欧美日韩天堂| 久久亚洲AⅤ无码精品午夜麻豆| 少妇精品久久久一区二区三区| 国产成人免费视频精品一区二区 | 18禁黄无遮挡网站| 日韩欧美国产另类| 免费精品一区二区h| 亚洲天堂777| 久久国产免费观看| 久青草免费在线视频| 香蕉在线视频网站| 18禁不卡免费网站| 看国产一级毛片| 无码日韩视频| 国产一区二区在线视频观看| 午夜不卡视频| 亚洲精品视频免费看| 欧美一区二区精品久久久| 国产乱人伦AV在线A| 亚洲天堂日韩在线| 久久先锋资源| 国产精品尹人在线观看| 国产精品成人观看视频国产 | 亚洲人成色在线观看| 欧美a级完整在线观看| 亚洲综合网在线观看| 欧美97色| 一区二区三区高清视频国产女人| 国产丝袜丝视频在线观看| 日韩中文字幕亚洲无线码| 国产午夜看片| 亚洲国产日韩在线观看| 亚洲午夜国产精品无卡| 嫩草在线视频| 成人免费网站在线观看| 美女被狂躁www在线观看| 爱色欧美亚洲综合图区| 亚洲综合色区在线播放2019| 国产真实乱了在线播放| 日韩精品毛片人妻AV不卡| 亚洲av综合网| 国产素人在线| 亚洲成人www| 色亚洲成人| 亚洲an第二区国产精品| 国产精品香蕉| 国产高清在线精品一区二区三区 | 欧美不卡在线视频| 国产精品va| 亚洲精品无码人妻无码| 超碰91免费人妻| 国产性精品| 无码高潮喷水在线观看| 国产精品主播| 91美女视频在线观看| 亚洲天堂在线免费| 欧美一区中文字幕| 国产成人精品亚洲日本对白优播| 超薄丝袜足j国产在线视频| 成人亚洲国产| 久久一色本道亚洲| 成人精品午夜福利在线播放| 亚洲精品成人7777在线观看| 99精品免费欧美成人小视频| 三上悠亚一区二区| 日本爱爱精品一区二区| 国产91久久久久久| 亚洲啪啪网| 亚洲h视频在线| 久久人体视频| 激情無極限的亚洲一区免费| 黄色成年视频| 美女裸体18禁网站| 在线观看网站国产| 制服丝袜亚洲| 国产区91| 中文字幕2区| 亚洲香蕉久久|