資料介紹
描述
這個(gè)項(xiàng)目是我之前構(gòu)建的更新版本。以前版本的主要問題是,除非背光打開,否則您無法讀取顯示。要打開背光,您要么必須編譯代碼以使其永久打開,要么實(shí)際按下其中一個(gè)按鈕。前者不適合,因?yàn)槲也幌M业姆块g在我晚上睡覺時(shí)被點(diǎn)亮,而后者意味著我必須停止我正在做的事情才能按下其中一個(gè)按鈕來查看時(shí)間。
檢測(cè)環(huán)境光
為了解決上述問題,我添加了一個(gè)帶有比較器電路的光敏電阻 (LDR)。LDR 會(huì)根據(jù)其是暗還是亮來改變其電阻。當(dāng)光線充足時(shí),它將具有低電阻,并且背光打開,從而可以讀取屏幕。在黑暗的房間中,電阻很高,它將允許背光關(guān)閉。您仍然可以通過按任何按鈕將其打開 10 秒鐘。
我使用了一個(gè)帶有微調(diào)電位器的簡(jiǎn)單比較器電路來將光照水平設(shè)置為背光應(yīng)該永久打開的位置。當(dāng)光照水平接近閾值時(shí),比較器電路會(huì)在有少量光照變化時(shí)開啟和關(guān)閉。即 ON 閾值和 OFF 閾值相同。為了解決這個(gè)問題,少量的輸出被反饋到輸入以增強(qiáng)變化(正反饋)。這稱為滯后,根據(jù)反饋量,這會(huì)使 ON 閾值升高,OFF 閾值降低,

時(shí)鐘功能
- 十種不同的展示風(fēng)格
- 設(shè)置時(shí)間、當(dāng)前日期、出生日期和鬧鐘
- 水銀開關(guān)關(guān)閉警報(bào)
- 自動(dòng)和手動(dòng)背光控制
- DHT21溫濕度傳感器
使用時(shí)鐘
時(shí)鐘有三個(gè)按鈕——設(shè)置、增量、減量和一個(gè)傾斜開關(guān)。
當(dāng)背光關(guān)閉時(shí),按任意按鈕將打開背光。如果在背光打開時(shí)未按任何按鈕,則在黑暗的房間中,它會(huì)在 10 秒后自行關(guān)閉。當(dāng)房間光線充足時(shí),背光將自動(dòng)打開。背光打開時(shí),按鈕將執(zhí)行以下任務(wù):
SETUP - 這將打開 SETUP 屏幕。右尖括號(hào)字符是光標(biāo)。按 INCREMENT 或 DECREMENT 按鈕將分別增加或減少光標(biāo)所在的值。再次按下 SETUP 按鈕將使光標(biāo)在小時(shí)、分鐘、日、月、年、出生日、出生月、出生年、鬧鐘小時(shí)、鬧鐘分鐘之間循環(huán)并返回時(shí)鐘模式。

INCREMENT - 當(dāng)不在設(shè)置屏幕中時(shí),此按鈕在各種時(shí)鐘樣式之間切換。

減量- 當(dāng)不在設(shè)置屏幕中時(shí),此按鈕可打開或關(guān)閉警報(bào)。
TILT SWITCH - 當(dāng)鬧鐘響起時(shí),傾斜時(shí)鐘或按下任何按鈕將關(guān)閉鬧鐘。
構(gòu)建一個(gè)完整的時(shí)鐘
首先,您需要一塊印刷電路板 (PCB)。如果您希望將 PCB 商業(yè)化制造或像我一樣自己制造,請(qǐng)附上 Eagle 文件。我使用了碳粉方法。
注意:由于 LCD 1602 顯示器使用直角排針連接到主 PCB,因此當(dāng)電路板和顯示器已經(jīng)焊接在一起時(shí),很難將它們插入外殼中。擁有一個(gè)帶通孔電鍍的雙面板可以讓您將顯示器就地焊接到板上。

該處理器是使用 Arduino UNO 引導(dǎo)加載程序編程的 ATmega328 DIL。ATmega328 的振蕩器使用一個(gè) 16MHz 晶體和兩個(gè) 22pf 陶瓷電容器。5V穩(wěn)壓器為7805 TO-220型,100uF 16V電容用于平滑。RTC 是一個(gè)帶有 32.768 kHz 手表晶體的 DS1302。揚(yáng)聲器為無源蜂鳴器,采用 10uF 16V 電容進(jìn)行直流隔離。0.1uF和1uF電容為獨(dú)石陶瓷電容(5mm孔距)。電阻為 1/8 瓦。水銀開關(guān)可以是任何尺寸。安裝在電路板背面的三個(gè)觸覺按鈕為 6mmx6mm,軸為 13mm。


外殼是 3D 打印的,層高為 0.2 毫米,沒有支撐。使用 2.5 毫米鉆頭鉆出 PCB 安裝孔,并使用 3 毫米絲錐創(chuàng)建螺紋。使用 M3 6mm 螺釘將板固定到位。我還將 PCB 上的兩個(gè)安裝孔鉆出 4 毫米,以便在固定電路板時(shí)進(jìn)行任何必要的調(diào)整,以防止按鈕粘在外殼上。

我使用的 LDR 標(biāo)記為 P1241-05。它的尺寸約為 5 毫米 x 3 毫米,在強(qiáng)光下的電阻約為 200 歐姆,在黑暗時(shí)的電阻約為 4000 歐姆。DHT21 傳感器安裝在機(jī)箱背面。您需要從 DHT21 的底座上去除少量塑料,以便電線可以穿過提供的孔并仍然隱藏在護(hù)罩下。

編程
將 FTDI 編程器連接到 PCB 上的 FTDI Basic 接頭,并上傳通過 Arduino IDE 提供的軟件。

請(qǐng)參閱以下有關(guān)更改代碼以定制消息時(shí)鐘和世界時(shí)鐘的部分。
生物節(jié)律鐘面

據(jù)推測(cè),根據(jù)我們的出生日期,生物節(jié)律可能決定我們生活的高潮和低谷。生物節(jié)律包括三個(gè)周期:23天的身體周期、28天的情緒周期和33天的智力周期。生物節(jié)律時(shí)鐘將每個(gè)狀態(tài)顯示為條形。

該條顯示生物節(jié)律處于正循環(huán)(頂部條)或負(fù)循環(huán)(底部條)。條形的長(zhǎng)度顯示了它在周期中的積極或消極程度。
消息鐘面

此鐘面在第二行顯示一個(gè)旋轉(zhuǎn)的消息欄。在代碼中有一個(gè)表格,其中包含日期和消息,以便在這些日期過去時(shí)顯示。
const char D00[] PROGMEM = "Today is ";
const char D01[] PROGMEM = "Your Brithday";
const char D02[] PROGMEM = "New Years Day";
const char D03[] PROGMEM = "Australia Day";
const char D04[] PROGMEM = "Good Friday";
const char D05[] PROGMEM = "Easter Monday";
const char D06[] PROGMEM = "Anzac Day";
const char D07[] PROGMEM = "Mother's Day";
const char D08[] PROGMEM = "the Queen's Birthday";
const char D09[] PROGMEM = "Father's Day";
const char D10[] PROGMEM = "Labour Day";
const char D11[] PROGMEM = "Xmas Day";
const char D12[] PROGMEM = "Good";
const char D13[] PROGMEM = "morning";
const char D14[] PROGMEM = "afternoon";
const char D15[] PROGMEM = "evening";
const char D16[] PROGMEM = ", it is ";
const MSG msgs[] = {
{ 0, 1, 1, D02 },
{ 0, 1, 26, D03 },
{ 2021, 4, 2, D04 },
{ 2021, 4, 5, D05 },
{ 0, 4, 25, D06 },
{ 0, 5, 9, D07 },
{ 2021, 6, 14, D08 },
{ 0, 9, 5, D09 },
{ 2021, 10, 4, D10 },
{ 0, 12, 25, D11 },
{ 0, 0, 0, NULL }
};
在msgs數(shù)組中,每個(gè)元素由 4 個(gè)組件組成。第一個(gè)是年份。值為零的年份表示所有年份。接下來是月份(1 到 12),然后是日期(1 到 31)。最后是對(duì)應(yīng)該顯示的消息的引用。該表目前是為澳大利亞新南威爾士州 2021 設(shè)置的。您可以通過添加和刪除項(xiàng)目來修改它。確保您保留表中的最后一個(gè)條目不變。軟件使用它來確定表格的結(jié)尾。
一般形式的消息是:
好[morning|afternoon|evening] ,現(xiàn)在是[ day of week ] [ day ][st|nd|rd|th] [ month name ] [ year ] {今天是[ message ]}
世界時(shí)間的臉

世界時(shí)鐘顯示當(dāng)前時(shí)間和另一個(gè)城市的時(shí)間。此時(shí)鐘完全支持使用時(shí)區(qū)庫(kù)的夏令時(shí)。您需要設(shè)置本地時(shí)區(qū)和要顯示的其他時(shí)區(qū)。
//Australia Eastern Time Zone (Sydney, Melbourne)
#define LOCAL_CITY_ABV "SYD" //3 Character city name
#define LOCAL_TIMEZONE(loc) ausET.toUTC(loc) //Function to access Timezone function
TimeChangeRule aEDT = {"AEDT", First, Sun, Oct, 2, 660}; //UTC + 11 hours
TimeChangeRule aEST = {"AEST", First, Sun, Apr, 3, 600}; //UTC + 10 hours
Timezone ausET(aEDT, aEST);
//US Eastern Time Zone (New York, Detroit)
#define WORLD_CITY_ABV "NYC" //3 Character city name
#define WORLD_TIMEZONE(utc) usET.toLocal(utc) //Function to access Timezone function
TimeChangeRule usEDT = {"EDT", Second, Sun, Mar, 2, -240}; //UTC - 4 hours
TimeChangeRule usEST = {"EST", First, Sun, Nov, 2, -300}; //UTC - 5 hours
Timezone usET(usEDT, usEST);
首先,您需要設(shè)置 TimeChangeRules。有關(guān)如何執(zhí)行此操作的完整說明以及一些示例,請(qǐng)參閱GitHub 上的Ardino 時(shí)區(qū)庫(kù)。
接下來修改兩個(gè)#define 語(yǔ)句。第一個(gè)包含時(shí)區(qū)所在的 3 個(gè)字符的城市名稱,第二個(gè)需要知道賦予 Timezone 對(duì)象的名稱。僅更改句點(diǎn)左側(cè)的名稱。
學(xué)分
這個(gè)時(shí)鐘是各種制造商多年來制造的許多時(shí)鐘的混搭。
該時(shí)鐘的基礎(chǔ)是帶鬧鐘功能的 Arduino 數(shù)字時(shí)鐘(定制 PCB)。我修改了箱子,所以它打印成兩件而不是四件。
- Michalis Vasilakis的標(biāo)準(zhǔn)屏幕設(shè)計(jì)
- Arduino World的 Dual Thin 字體
- Arduino 論壇的 Dual Beveled 字體
- Carrie Sundra的 Dual Trek 字體
- Arduino World的 Dual Thin 字體
- LAGSILVA的詞概念
- 約翰布拉德南的生物節(jié)律時(shí)鐘
- ARDUinoautoMOTIVE的天氣時(shí)鐘
- 約翰·布拉德南 ( John Bradnam)的消息時(shí)鐘
- 約翰布拉德南的世界時(shí)鐘
- LED鬧鐘開源項(xiàng)目
- 辛迪的鬧鐘/錄音氣象站開源分享
- 帶秒表的鬧鐘開源硬件
- 諾基亞模擬數(shù)字鬧鐘開源分享
- 平視顯示器鬧鐘開源分享
- 液晶記憶游戲開源分享
- 咖啡鬧鐘開源分享
- 液晶弓箭游戲開源分享
- 液晶游戲開源分享
- 液晶EEPROM開源項(xiàng)目
- 康佳35016963液晶彩電電源圖紙參考 18次下載
- 電子鬧鐘源碼文件下載 11次下載
- 12864液晶電子鐘_具有按鍵可調(diào)、鬧鐘、溫度顯示 125次下載
- RTC鬧鐘喚醒實(shí)驗(yàn) 19次下載
- 多功能鬧鐘原理圖
- 液晶電視原理與維修 液晶電視和led電視哪個(gè)好 1413次閱讀
- 基于51單片機(jī)的鬧鐘系統(tǒng)設(shè)計(jì) 2269次閱讀
- 鬧鐘的ESD整改案例 833次閱讀
- 前沿開源技術(shù)領(lǐng)域的開源大數(shù)據(jù)一一解讀 1180次閱讀
- CubeMX配置RTC實(shí)現(xiàn)日歷和鬧鐘實(shí)驗(yàn) 1965次閱讀
- 基于樹莓派3B實(shí)現(xiàn)智能鬧鐘的設(shè)計(jì)方案 3294次閱讀
- 組裝液晶、雜牌液晶常用總線的進(jìn)入方法 2.3w次閱讀
- 液晶電視屏和液晶顯示器的區(qū)別 2w次閱讀
- EDA實(shí)現(xiàn)鬧鐘鈴聲設(shè)計(jì) 2004次閱讀
- STM32實(shí)現(xiàn)對(duì)RTC鬧鐘喚醒的設(shè)計(jì) 1.4w次閱讀
- 液晶顯示器的優(yōu)缺點(diǎn)_液晶顯示器原理介紹 1.5w次閱讀
- 液晶面板怎樣切割_液晶面板切割工藝 1.6w次閱讀
- 2018液晶面板價(jià)格走勢(shì)_液晶面板行業(yè)分析 3.8w次閱讀
- 液晶電視電源pfc電路_液晶pfc電路維修技巧 8w次閱讀
- 淺述液晶顯示器與液晶面板的關(guān)系和區(qū)別 3577次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論