資料介紹
描述
介紹
讓我們構建一個鬧鐘。
基于Adam Taylor 的 MiniZed 電機控制項目,我們將添加一個 oled Pmod 并將定時器轉換為時鐘。要設置時間和鬧鐘時間,我們將使用串口。電機將用于發(fā)出警報聲。
Vivado 和硬件
從 MiniZed 電機控制項目開始,我們需要為其添加 oled Pmod 和時鐘。
下載Digilent Pmod Vivado Library 2019.1并將其放入項目的 IP 目錄中,如Digilent Pmod IP 入門指南中所示。
將如下所示的 PmodOLEDrgb 添加到 MiniZed 電機控制項目中:
	
將oled輸出添加到Pmod2。將附加約束文件。顯示器的所有接口引腳都是輸入(MiniZed的輸出)。FCLK_CLK0需要50MHz才能使Pmod IP正常工作。默認情況下,MiniZed上的頻率為50MHz。
硬件
將HB3 Pmod添加到Pmod 1連接器的頂行,這正是Adam Taylor設置原始項目的方式。然后,將oled Pmod添加到Pmod 2連接器,屏幕面朝上。
Vitis(軟件)
使用MiniZed電機控制代碼作為基準,Digilent的IP作為指南,該軟件(附件中)更改計時器,以作為時鐘的1Hz更新。當時間等于報警時間時,電機運行并鳴響警鈴。
代碼中發(fā)生了什么。。。
絕大多數(shù)代碼都在設置計時器和/或中斷。關于計時器和中斷,我從Adam的基線中唯一改變的是TICK_timer_FREQ_Hz的第15行從100 Hz變?yōu)?Hz,以及中斷函數(shù)在觸發(fā)后會做什么(稍后將詳細介紹)。有關計時器中斷代碼的更多信息,請參閱Adam Taylor的MicroZed編年史第15部分。
有幾個變量用于保存時間和報警值。大多數(shù)變量都是全局變量。這不是理想的情況,但考慮到這是我在ARM處理器上制作的第一個程序,請原諒這一混亂。
主要功能
主功能設置平臺,通過串行端口輸出歡迎消息,然后通過OLEDrgb_begin設置oled,這需要#include“PMODOLEDrgb.h”
然后調(diào)用從第91行開始的函數(shù)display_menu()。在這個程序中,它只被調(diào)用一次。這是設置時鐘和鬧鐘時間的地方。我很有意思地發(fā)現(xiàn),兩位數(shù)字/字符串行端口讀取需要scanf函數(shù),而不是用于一個字符輸入的讀取函數(shù)。
然后調(diào)用從第286行開始的update_oled()函數(shù)。這將輸出并格式化屏幕上的時間和報警時間。在display_menu()獲取值和每分鐘(在中斷函數(shù)中調(diào)用)后,在主函數(shù)中調(diào)用一次。
接下來,設置并啟用計時器中斷。然后電機控制引腳被設置,但不是像亞當?shù)某绦蚰菢颖幻钸\行。
然后main永遠在while循環(huán)中等待。其他一切都發(fā)生在TickHandler(void*CallBackRef)函數(shù)中。
中斷功能
時間更新和報警檢查發(fā)生在TickHandler(void*CallBackRef)函數(shù)內(nèi)部,從第227行開始。如果設置了1Hz TICK_TIMER_FREQ_HZ,則每個中斷等于一秒。60秒后,分鐘增加,就像一個普通的時鐘。每分鐘調(diào)用一次update_oled()函數(shù)來更改時間。根據(jù)時間檢查報警時間,如果時間相等,電機將打開(第287行)一分鐘,開始您的一天。
注意:時鐘功能有一個錯誤,12:59到1:00的滾動…如果你發(fā)現(xiàn)了問題,請告訴我。
后果
以下是最終項目的視頻:
結論
感謝Hackster和Adam Taylor的構建,并激勵我深入FPGA SoC。這是一次非常有趣的體驗,希望不久能做更多的項目!希望你學到了一些東西,創(chuàng)造了更大的東西。
?
- 使用Bolt構建鬧鐘的最簡單方法
 - 使用物聯(lián)網(wǎng)并構建簡單的螺栓鬧鐘
 - 圍繞WIZ750SR模塊構建的會說話鬧鐘
 - 使用單片機設計的多功能鬧鐘電路原理圖 45次下載
 - 電子鬧鐘源碼文件下載 11次下載
 - 如何使用單片機設置多個鬧鐘C語言程序免費下載
 - 使用51單片機進行鬧鐘制作的程序免費下載
 - DS1302按鍵調(diào)時和鬧鐘的C語言程序免費下載 50次下載
 - 基于單片機的定時鬧鐘設計 22次下載
 - 鬧鐘 16次下載
 - RTC鬧鐘喚醒實驗 19次下載
 - 基于labview鬧鐘的設計 0次下載
 - 多功能鬧鐘原理圖
 - 采用單片機設計的電子鬧鐘硬件方案
 - LCD電子鬧鐘
 
- 利用AI構建實用量子計算應用 385次閱讀
 - 手動構建Docker鏡像的方法 562次閱讀
 - 神經(jīng)網(wǎng)絡預測模型的構建方法 745次閱讀
 - 使用PyTorch構建神經(jīng)網(wǎng)絡 744次閱讀
 - 交換芯片的構建方式 494次閱讀
 - 使用WebLOAD構建負載測試方案 669次閱讀
 - 基于51單片機的鬧鐘系統(tǒng)設計 2269次閱讀
 - 鬧鐘的ESD整改案例 833次閱讀
 - CubeMX配置RTC實現(xiàn)日歷和鬧鐘實驗 1965次閱讀
 - 基于功能強大的子域收集工具 990次閱讀
 - 鏡像構建Dockerfile的介紹 1180次閱讀
 - 使用功率MOSFET的強大30A直流電機驅動器 4570次閱讀
 - 基于樹莓派3B實現(xiàn)智能鬧鐘的設計方案 3294次閱讀
 - EDA實現(xiàn)鬧鐘鈴聲設計 2004次閱讀
 - STM32實現(xiàn)對RTC鬧鐘喚醒的設計 1.4w次閱讀
 
下載排行
本周
- 1PFC電路與BOOST電路設計實例分享
 - 1.83 MB | 12次下載 | 4 積分
 - 2世平基于靈動微 SPIN560C 的低壓無刷電機應用方案
 - 10.93 MB | 11次下載 | 免費
 - 3電源測試報告-基于 國民技術 N32L406 和杰華特 JW3376+3330 的 BMS 方案
 - 6.47 MB | 11次下載 | 免費
 - 4PWM控制器的控制方法
 - 0.39 MB | 3次下載 | 4 積分
 - 5電流檢測芯片F(xiàn)P135應用說明
 - 1.24 MB | 3次下載 | 免費
 - 6全面解讀被動式與主動式PFC電路
 - 1.27 MB | 1次下載 | 4 積分
 - 7HC88L051F4低功耗芯片規(guī)格書
 - 4.76 MB | 1次下載 | 免費
 - 8CIU32D655x5數(shù)據(jù)手冊
 - 2.14 MB | 1次下載 | 免費
 
本月
- 1常用電子元器件使用手冊
 - 2.40 MB | 52次下載 | 免費
 - 2高功率密度碳化硅MOSFET軟開關三相逆變器損耗分析
 - 2.27 MB | 33次下載 | 10 積分
 - 3PFC電路與BOOST電路設計實例分享
 - 1.83 MB | 12次下載 | 4 積分
 - 4世平基于靈動微 SPIN560C 的低壓無刷電機應用方案
 - 10.93 MB | 11次下載 | 免費
 - 5電源測試報告-基于 國民技術 N32L406 和杰華特 JW3376+3330 的 BMS 方案
 - 6.47 MB | 11次下載 | 免費
 - 6USB拓展塢PCB圖資料
 - 0.57 MB | 11次下載 | 免費
 - 7MS1826 HDMI 多功能視頻處理器數(shù)據(jù)手冊
 - 4.51 MB | 9次下載 | 免費
 - 8HAL9303線性霍爾效應傳感器技術手冊
 - 0.70 MB | 9次下載 | 免費
 
總榜
- 1matlab軟件下載入口
 - 未知 | 935134次下載 | 10 積分
 - 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
 - 1.48MB | 420064次下載 | 10 積分
 - 3Altium DXP2002下載入口
 - 未知 | 233089次下載 | 10 積分
 - 4電路仿真軟件multisim 10.0免費下載
 - 340992 | 191424次下載 | 10 積分
 - 5十天學會AVR單片機與C語言視頻教程 下載
 - 158M | 183352次下載 | 10 積分
 - 6labview8.5下載
 - 未知 | 81600次下載 | 10 積分
 - 7Keil工具MDK-Arm免費下載
 - 0.02 MB | 73818次下載 | 10 積分
 - 8LabVIEW 8.6下載
 - 未知 | 65991次下載 | 10 積分
 
	                電子發(fā)燒友App
	            
	        
	        
          
        
        
	                    
                        
                        
                        
                        
                        


創(chuàng)作
發(fā)文章
發(fā)帖  
提問  
發(fā)資料
發(fā)視頻
上傳資料賺積分
           
            
            
                
            
評論