91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內(nèi)不再提示

如何使用三個4位7段顯示制作學(xué)校倒計時日歷

454398 ? 來源:wv ? 2019-09-03 15:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

步驟1:4位7段顯示

明顯的出發(fā)點是熟悉4位7段顯示器。這些單元來自我們?yōu)榻淌沂褂枚徺I的一些Elegoo stater套件,但最有可能與您在上圖中看到的部件一起購買。除了上面的物理設(shè)備圖像,您還可以看到該設(shè)備的引腳和原理圖。將Arduino編程為單獨的顯示字符非常簡單,但是要同時顯示整個單詞或數(shù)字是有趣的。與任何7段顯示一樣,可以通過打開字母段的不同組合來顯示數(shù)字和一些字符;使用4位7段單元的扭曲是每個數(shù)字的所有單個段都連接在一起,每個數(shù)字只有它自己的共用陰極或陽極單獨控制。實際上,使這些單元顯示單詞或數(shù)字的唯一方法仍然是一次一位數(shù);然而,數(shù)字的開啟和關(guān)閉速度都很快,以至于人眼看起來一直都在。

第2步:理解(和使用)Arduino端口

為了避免使用數(shù)以千計的“digitalWrite”命令打開和關(guān)閉我需要的所有組合,我決定熟悉Arduino上端口的使用平臺。使用此命令(例如:PORTA = B01110101;)可以同時打開和關(guān)閉8個數(shù)字I/O引腳,其中1表示等于向該引腳寫入“高電平”,0表示與寫入“低電平”相同到針。每個端口對應(yīng)Arduino上的8個引腳,可以用二進制(我使用的)或十六進制寫入。一個簡單的例子是上面的引腳輸出中顯示的Arduino Mega上的端口F和K,PORTF對應(yīng)于模擬引腳A0-A7和PORTK,對應(yīng)于模擬引腳A8-A15。非常感謝Adafruit社區(qū)在這個壯觀的引腳上的工作!

第3步:全力以赴

雖然上面的圖片很難看,但我決定未來編程的最合理布局是將每個4位7段分成上半部分和下半部分,然后將每一半分配給特定端口。這將允許我輕松查看我需要的數(shù)字,然后使用二進制輸出打開相應(yīng)的段到相關(guān)端口。使用port命令的十六進制版本會使每個命令(實際上是命令調(diào)用的2D數(shù)組)更短但在布局代碼時看起來更容易看到高/低組合而不是必須以十六進制轉(zhuǎn)換那些相同的組合,即使代碼從長遠來看會更緊湊。為了幫助完成這個過程,我創(chuàng)建了一個圖表來顯示哪些數(shù)字/段與哪個端口分配相關(guān)聯(lián)。您還可以在上圖中看到,通過每個數(shù)字的共陰極引腳實現(xiàn)限流,而不是限制每個單獨的電流。

步驟4:代碼 - CountUpDownTimer

在幾次嘗試運行一系列嵌套for循環(huán)以控制時序和顯示失敗后,我開始研究適用于Arduino的并行處理。最后我遇到了一個名為“CountUpDownTimer”的預(yù)先存在的庫,可以在這里找到Arduino Playgound。該庫在后臺為您執(zhí)行計時,允許您在需要時撥打小時,分鐘和秒。然后將這些值作為參數(shù)傳遞給一個數(shù)組,該數(shù)組打開適當?shù)亩我燥@示相應(yīng)的數(shù)字。唯一的復(fù)雜因素(除了創(chuàng)建數(shù)組 - 下一步更多)是我必須修改庫以添加“ShowDays”方法,該方法不是原始代碼的一部分。

#include

CountUpDownTimer T(DOWN, HIGH); //Create the timer object void setup(){

//Setting all digital pins as outputs

for (int i=3; i《=53; i++)

pinMode(i, OUTPUT);

//Setting all analog pins as outputs

for (int a=A0; a《=A15; a++)

pinMode(a, OUTPUT);

T.SetTimer(52,07,17,00); // (days, hours, minutes, seconds)

T.StartTimer();

} void loop() {

T.Timer();

int stepDelay = 50;

long sm = T.ShowMinutes();

long sh = T.ShowHours();

long sd = T.ShowDays();

for(int c = 0; c 《 4; c++){

PORTB = upperArray[sm][c];

PORTL = lowerArray[sm][c];

PORTA = upperArray[sh][c];

PORTC = lowerArray[sh][c];

PORTF = upperArray[sd][c];

PORTK = lowerArray[sd][c];

delayMicroseconds(stepDelay);

}

}

步驟5:代碼 - 2D數(shù)組

驅(qū)動端口的值被放置在一個單獨的2D陣列中,該陣列分成兩半,一個用于顯示器的上半部分,另一個用于下半部分。部分。端口分配基于顯示器的引腳,每列代表相應(yīng)的數(shù)字。這里的關(guān)鍵是將高點和低點的適當組合應(yīng)用于每個連續(xù)數(shù)字的各個段和適當?shù)墓碴帢O。 2D陣列長270行,占整個學(xué)年,四列寬,每個顯示四位數(shù)。盡管小時和分鐘從不調(diào)用陣列的大多數(shù),但使用相同的結(jié)構(gòu)來驅(qū)動這些顯示器而不是每個部分的自定義陣列似乎更容易。上半部分和下半部分的前幾行如下所示。我還創(chuàng)建了您在上面看到的圖表,顯示哪些端口輸出與哪些段相對應(yīng),以最大限度地減少錯誤并保持理智。

byte upperArray[270][4]

{B00011111,B00111011,B00111101,B00111111}, //00u

{B00011111,B00111011,B00111101,B00100111}, //01u

{B00011111,B00111011,B00111101,B00110111}, //02u

{B00011111,B00111011,B00111101,B00110111}, //03u

{B00011111,B00111011,B00111101,B00101111}, //04u

{B00011111,B00111011,B00111101,B00111110}, //05u

{B00011111,B00111011,B00111101,B00111110}, //06u

{B00011111,B00111011,B00111101,B00110111}, //07u

{B00011111,B00111011,B00111101,B00111111}, //08u

{B00011111,B00111011,B00111101,B00111111}, //09u

{B00011111,B00111011,B00100101,B00111111}, //10u byte lowerArray[270][4]{

{B00110101,B00110101,B00110101,B00110100}, //00

{B00110101,B00110101,B00110101,B00000100}, //01

{B00110101,B00110101,B00110101,B00110010}, //02

{B00110101,B00110101,B00110101,B00010110}, //03

{B00110101,B00110101,B00110101,B00000110}, //04

{B00110101,B00110101,B00110101,B00010110}, //05

{B00110101,B00110101,B00110101,B00110110}, //06

{B00110101,B00110101,B00110101,B00000100}, //07

{B00110101,B00110101,B00110101,B00110110}, //08

{B00110101,B00110101,B00110101,B00010110}, //09

{B00110101,B00110101,B00000101,B00110100}, //10

步驟6:LCD屏幕 - 后想法

我最初并不想包括靜態(tài)顯示倒計時的日期/時間結(jié)束的LCD屏幕;然而,當我為該項目購買BASE時,有一個大小與小面包板大小相當?shù)拈_放空間,因此它似乎是該項目的合理添加。該顯示器是標準的16x2單色白色藍色顯示屏,也來自Elegoo套件。除了數(shù)據(jù)和控制線的附加布線外,代碼修改也很簡單;我添加了預(yù)處理器功能,包括庫和定義用于每個所需連接的引腳,以及在void設(shè)置中顯示靜態(tài)消息的代碼,這樣只運行一次而不影響時序計數(shù)器。兩種修改如下所示:

#include

const int rs = 17, en = 16, d4 = 21, d5 = 20, d6 = 19, d7 = 18;

LiquidCrystal lcd(rs, en, d4, d5, d6, d7); lcd.begin(16, 2);

lcd.setCursor(0, 0);

lcd.print(“Countdown Ends:”);

lcd.setCursor(0, 1);

lcd.print(“5/30/19 @ 3:10pm”);

第7步:結(jié)論 - 問題和教訓(xùn)

這個項目中有問題的部分是迄今為止繁瑣的部分。首先,在硬件方面,使得所需的40多條數(shù)據(jù)線的布線看起來很整潔;接下來是2D陣列的創(chuàng)建,它包含顯示正確數(shù)字所需的高低組合。我必須做的一個小的硬件修改是調(diào)整我在每個顯示器的第四個數(shù)字上使用的限流電阻的大小;由于時間(并假設(shè)視覺的持續(xù)性),數(shù)字總是比其他數(shù)字亮一點,所以我增加該值,直到所有四位數(shù)的外觀看起來均勻。我確信通過某種時間共享或多路復(fù)用可能有一種更優(yōu)雅的方式來實現(xiàn)這一目標,但我從經(jīng)驗中學(xué)到了很多東西,并意識到我剛剛開始劃清我們所說的這個神奇工具的表面“ Arduino“能夠完成。

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

    關(guān)注

    0

    文章

    21

    瀏覽量

    44136
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6526

    瀏覽量

    197092
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    單面日歷子鐘怎么選?公共場所時間同步經(jīng)驗分享

    在醫(yī)院的走廊、學(xué)校的操場、或者剛剛踏進火車站的一瞬間,抬頭看向那個顯示著年月日與時分秒的單面日歷子鐘,我們早已習(xí)慣這種“理所當然”的精準。但是,對于弱電工程師或后勤采購來說,選對一款子鐘,遠比看時間復(fù)雜得多。
    的頭像 發(fā)表于 03-10 14:53 ?70次閱讀

    倒計時3天!利爾達攜“王炸”方案出征MWC,亮點搶先看

    倒計時3天!全球移動通信領(lǐng)域的年度盛事——MWCBarcelona2026將于3月2日至5日在西班牙巴塞羅那FiradeBarcelonaGranVia展館盛大開幕。本屆大會以“TheIQEra
    的頭像 發(fā)表于 02-28 11:53 ?261次閱讀
    <b class='flag-5'>倒計時</b>3天!利爾達攜“王炸”方案出征MWC,亮點搶先看

    倒計時2天!1月29日 K3 新品發(fā)布會

    倒計時2天!1月29日 K3 新品發(fā)布會
    的頭像 發(fā)表于 01-27 16:53 ?637次閱讀
    <b class='flag-5'>倒計時</b>2天!1月29日 K3 新品發(fā)布會

    IPv6 Only 進入倒計時 ,單棧替代雙棧成網(wǎng)絡(luò)演進必然選擇

    導(dǎo)向明確及全球?qū)嵺`加速,IPv6單棧替代IPv4/IPv6雙棧的進程已進入倒計時。長期以來,IPv4/IPv6雙棧并行模式作為過渡階段的權(quán)宜之計,在推動網(wǎng)絡(luò)協(xié)議平
    的頭像 發(fā)表于 12-23 09:59 ?1572次閱讀
    IPv6 Only 進入<b class='flag-5'>倒計時</b> ,單棧替代雙棧成網(wǎng)絡(luò)演進必然選擇

    虹科峰會 | 虹科峰會 | 倒計時一周!群英集結(jié)上海虹橋,虹科邀您共赴盛會!

    11月25日,虹科Pico波形診斷技術(shù)峰會即將在上海虹橋·愷暢酒店拉開序幕!這場匯集了全國頂尖波形診斷大師與免拆診斷愛好者們的年終盛會,將會予你一場怎樣的學(xué)習(xí)之旅?倒計時一周!虹科Pico帶你提前直
    的頭像 發(fā)表于 11-19 17:52 ?1424次閱讀
    虹科峰會 | 虹科峰會 | <b class='flag-5'>倒計時</b>一周!群英集結(jié)上海虹橋,虹科邀您共赴盛會!

    未來工業(yè)AI發(fā)展的三個必然階段

    與優(yōu)化 能力的深層革命。 未來十年,工業(yè)AI的發(fā)展將經(jīng)歷三個清晰的階段:? 智能輔助 → 智能決策 → 自主優(yōu)化 。這次進化,構(gòu)成了工業(yè)從“人控機器”到“機器共智”的核心路徑。 一、第一階:智能輔助(AI for Assis
    的頭像 發(fā)表于 10-27 15:47 ?506次閱讀
    未來工業(yè)AI發(fā)展的<b class='flag-5'>三個</b>必然階段

    廣汽集團創(chuàng)新科技產(chǎn)品護航重大體育賽事

    近日,第十五屆全國運動會開幕式迎來倒計時50天,“廣汽賽事用車交付暨十五運會倒計時50天活動”在廣汽集團番禺總部舉行。活動上,廣汽集團被十五運會和殘?zhí)貖W會執(zhí)委會授予“官方合作伙伴”牌匾。
    的頭像 發(fā)表于 09-25 14:10 ?667次閱讀

    CDW04 4檢測芯片規(guī)格書

    電子發(fā)燒友網(wǎng)站提供《CDW04 4檢測芯片規(guī)格書.pdf》資料免費下載
    發(fā)表于 09-19 16:13 ?0次下載

    DIY 流體模擬吊墜(二):第二、第三個、更多的吊墜......

    “ ?上文?DIY 流體模擬吊墜(一):理論與第一吊墜的制作?介紹了流體模擬的理論并打造了第一吊墜,現(xiàn)在繼續(xù)制造第二、三個吊墜......? ” 第二
    的頭像 發(fā)表于 09-17 23:17 ?2304次閱讀
    DIY 流體模擬吊墜(二):第二<b class='flag-5'>個</b>、第<b class='flag-5'>三個</b>、更多的吊墜......

    ?倒計時!米爾-安路飛龍派創(chuàng)意秀獎品等您領(lǐng)~~

    創(chuàng)意秀活動進入倒計時階段?2025年米爾-安路飛龍派FPGAFPSoC創(chuàng)意開發(fā)大賽即將于8月15日正式收官(原定于6月15日,已延期到8月15日)。作為國產(chǎn)工業(yè)級FPGA領(lǐng)域的賽事,本次活動已吸引多
    的頭像 發(fā)表于 08-08 08:04 ?888次閱讀
    ?<b class='flag-5'>倒計時</b>!米爾-安路飛龍派創(chuàng)意秀獎品等您領(lǐng)~~

    16*8/8*4按鍵陣矩 具有按鍵掃描LED專用電路

    顯示設(shè)備。特點:#CMOS工藝#低功耗#顯示模式:16 x8 #鍵掃描矩陣:8x4 按鍵矩陣#8
    發(fā)表于 08-06 16:30

    零知開源——STM32F4實現(xiàn)ILI9486顯示屏UI界面系列教程(二):日歷功能實現(xiàn)

    本教程將指導(dǎo)您在STM32F4平臺上實現(xiàn)一功能完善的日歷應(yīng)用,通過ILI9486電阻觸摸屏提供直觀的日期查看和交互體驗。該日歷應(yīng)用是智能設(shè)備UI系統(tǒng)中的核心組件,具有以下核心功能:
    發(fā)表于 06-25 17:51

    STM32驅(qū)動碼屏,有一14數(shù)字,有4段位沒有顯示是怎么回事?

    背景:STM32L433驅(qū)動37引腳的碼,第7數(shù)字和8數(shù)字某些顯示。不
    發(fā)表于 06-20 06:26

    熱力再燃!2025 NEPCON China萬人沸騰的電子制造盛宴,今日收官倒計時!

    。 NEPCON China 2025熱力再燃!六大特色專區(qū),20 + 國際品牌原廠獨家展示尖端技術(shù),30場論壇活動,100行業(yè)技術(shù)大咖蒞臨,百款新品首發(fā)等硬核亮點,感受萬人沸騰的電子制造年度盛宴。明日收官倒計時,4月24日上
    發(fā)表于 04-24 11:32 ?327次閱讀
    熱力再燃!2025 NEPCON China萬人沸騰的電子制造盛宴,今日收官<b class='flag-5'>倒計時</b>!

    正點原子ND1核輻射檢測儀支持檢測x,γ,β射線的輻射強度,高靈敏度J321蓋革-米勒計數(shù)管,支持約100萬輻射值記錄!

    ,使用高靈敏度J321蓋革-米勒計數(shù)管,支持檢測x射線,γ射線,β射線的輻射強度。集成溫濕度檢測,時鐘日歷,鬧鐘,倒計時功能。 適用范圍廣,功能豐富,一機多用,可玩性高;深圳計量院校準證書,權(quán)威機構(gòu)檢測認證
    發(fā)表于 04-15 11:09