日本欧美一区-日本欧美一区二区三区片-日本强好片久久久久久AAA-日本-区一区二区三区A片-日本人伦一区二区三区-日本人妻A片成人免费看

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

炫彩LED二進制時鐘

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2011-12-18
學習數字電路的二進制之后,覺得二進制數很神奇,例如現在的電腦都是采用二進制。二進制容易實現,運算規則簡單,只有0和1,兩種狀態的轉換速度極快,從而由簡單的0和1構成了復雜的計算機世界。我國古代的一本奇書《易經》中說“萬事萬物都有陰陽”,似乎有異曲同工之妙,這些都讓我對二進制數產生好奇。直到有一天我在網絡上看到一個這樣的題目:


 單片機二進制時鐘電路

    一片果林的成熟季節又到了,大批量的水果就要和買主交易,然而,買主來收購之前給農戶出了一個“難題”:將1000個水果事先放在10只籮筐里,待其到來時如果能整筐整筐地搬出來并湊夠臨時指定的數量,買賣照做還堅持長期合作;如果做不到,預約好的買賣取消,今后也不來打交道了。
 

    題目出得很巧妙,我一想想不出來就查看答案,原來是一個跟二進制數相關的問題,第一個籮筐裝1個,第二個箱子裝2個,后面的籮筐的數量都是前一個籮筐的一倍(最后一個除外),所以各個籮筐的數量分別為:1、2、4、8、16、32、64、128、256和489,這樣的話就可以任意取出所需的數量了。一看答案,驚嘆二進制數的神奇之處,竟然能這樣任意表達出所需的數量。


二進制時鐘誕生記


    正好這幾天研究著用DS1302時鐘芯片和單片機制作一個時鐘,突然想到,既然二進制能用“10個箱子”任意取出“1000內的數”,那么是否可以制作出一個跟二進制數相關的時鐘呢?當兩種思維結合在一起的時候,就可以產生出很多有趣的事情來。這么一來,就很自然地想出了制作一個二進制時鐘,但是用什么方式來顯示呢?看到手頭上有多種顏色的LED燈,于是想到就用發光二極管唄,燈亮就是“1”,燈滅就是“0”,一排LED的亮就形成一個二進制數,從而讀出相應時間。這個想法讓我興奮不已,于是我開始著手單片機的編程,用單片機把在DS1302上取出的時間的BCD碼轉換成10進制數直接放在一組I/O口上面,單片機會自動把十進制數轉換成以1和0表示的數放在一組的8個I/O口上,這樣一來,在相應I/O口上連接LED燈就能顯示出“時間”來了。由于小時最多為“24”,因此只需要5個LED燈就可以完整表示,而“分”和“秒”部分要6個LED燈才能完整表示。


注意事項

    因為我們一般采取上拉電流方式接正極驅動LED燈, 輸出為“0”時LED燈亮,所以我們還要把取來的數進行取反放在相應組位,單片機C語言中的取反為“~”,例如取來的“秒”放在P1組口,就這樣表示:“P1=~miao”,用“~”號就可以輕易取反。

    還有需要注意的地方是,我們平常讀數是從左到右讀高位數到低位數,但是大多單片機的I/O口組是從低位到高位的,因此我們制作時要特別注意焊接LED燈的順序,或者把單片機翻轉擺放就可以解決這個問題。

讀時鐘的方法

    如題圖所示的每組數就是“10110”、“101011”、“100001”,在腦袋里進行簡單的運算就可以得出時間為:“22:43:33”。科學發現,經常運算可以防止老年癡呆癥^_^,因此,二進制時鐘就有了它的意義所在了。

Tags:單片機,二進制,時鐘電路  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢