標題: 對單片機初入門級的理解及應用 [打印本頁]
作者: 慢慢思考 時間: 2018-1-8 20:11
標題: 對單片機初入門級的理解及應用
本帖最后由 慢慢思考 于 2018-1-8 20:45 編輯
單片機這東西,它是人設計出來的,而人設計出來的東西,必然是根據人的實際需要來設計,所以,我們可以從“需要”來從頭理解,也就是先從“知道它能做什么”開始學習,然后再學習“怎么讓它做到”,之后如果你有興趣,你可以去學習“它是如何做到的”,猶如汽車,我們知道它能裝著你在路上跑,然后你再學習如何操作這東西在路上跑,至于它為什么能在路上跑,你需不需要知道,那要看你的需要。
比如說流水燈吧,我們知道燈要亮就必須給它加上電即一頭接高電位一頭接低電位,要它滅就必須斷開電(嚴格說是讓兩頭的電位一致),沒有其它方法的。實現它的基本電路,就是燈加開關加電源,一個燈上一個開關,8個燈就接8個開關,然后順序操作各個開關進行開關,讓燈兩端電位一致或不一致。最簡單的操作方法,就是用你的手嘛。
真讓你去做這個事你肯定煩,其實老板也煩,這點小事,付不起工資啊。于是,可以用單片機啊,怎么用?前面說了,除了用開關的辦法來實現流水燈外沒別的辦法,所以,單片機在這里,它就是起個開關以變換電位的作用。
如何實現開關功能?我們知道單片機的引腳是實現各種功能的應用途徑,也就是說要實現這些功能,實際上就是對引腳的應用。
單片機的引腳,其中的電源端、晶振端(也許有也許沒有)那是為其自身能夠工作而設置的,其它的引腳才是應用引腳即稱為端口。其實端口的功能很簡單:輸出、輸入、檢測。簡單解釋就是自身輸出高電位或低電位或者不輸出、接收對方送過來的高電位或低電位或者拒絕接收、檢測自身是處于高電位還是低電位,就這,沒別的,真沒別的。然后我們要知道,通過程序,我們可以控制端口做這些事。
下面我們就清楚了,即然單片機的端口的電位可以高可以低,那么我們可以將8個燈(假設是8個燈)的一頭全部接高電平,而另一頭接單片機的8個端口,在程序中首先將8個端口全部設為高電位,然后將第一個端口在程序中設為低電位——拉高為高電位——將第二個端口設為低電位——拉高為高電位......順序執行下去并循環,流水燈就形成了。當然,你每一步操作之后,要停留一段時間,不然的話,你的眼睛是看不到變化的(太快了之后看不到變化,那是人的問題,不是單片機的問題)。單片機就這么簡單。
前面說了,要讓燈不亮,是要讓其兩頭的電位一樣,所以,你也可以將所有燈的一頭全部接低電平,讓端口輸出高電平亮、低電平滅也行,當然,你硬要混著來那沒人能攔著你,因為這樣也能實現流水燈。
在程序設計時,對于初學者,我的建議是:一個步驟一個步驟地硬寫,這樣你會很快地上手并實現你所想實現的功能,否則,你會因為對編程技巧的不熟練而在編程中消耗很多時間,進而會直接影響你的興趣,比如說流水燈的編程,你要一條一條地逐個端口寫操作程序,等你熟練后再去對程序進行優化。
另外,一定要從自己搭建電路開始,開發板可以買,只是在買時加一個面包板、一些線、數碼管、幾個LED、電阻就行了(最節省的做法,這個可以玩轉LED燈及數碼管和點陣屏,再買一個可調電阻還可以玩1602及12864屏。當然你也可以買更多的東西用于搭建其它類型實驗電路),至于電源及下載則從開發板上的接點引出,包括晶振也可以從開發板上引出。用這些東西搭建電路的目的是快速入門,之后就用開發板上的東西了。
以上知識,足夠你在數碼管、點陣屏上顯示出你想要顯示出來的東西了。同樣的,在編程時,先一條一條地硬編,這樣你就可以很快地將數碼管、點陣屏的顯示玩轉,同時學習編程技巧,然后再從頭設計程序。然后呢?就是學習程序設計語言,領略單片機的內部功能了。
PS:個人認為,學習單片機,首先得能理解其端口的功能并熟練地操作端口,然后再進階。
作者: 慢慢思考 時間: 2018-1-8 21:12
我寫的東西,都是站在初學者的角度,為解決初學者的疑惑并開拓思路,并非是因為我也是個初學者,而是因為自己的習慣喜歡究其原因卻又在書本上找不到,又不喜歡跟在別人后頭跑(自我感覺良好,認為書本上沒有)。
單片機不過是數字電路,完全沒什么神秘的,有多簡單?中國第一套數字化可視化半自動加油系統,不過是一個小學文化程度在上世紀八十年代中期設計制造的,他當時的條件,不過是讓現代人完全不入眼的陶瓷封裝邏輯器件和單色攝像頭。咳,怎么度娘沒有?
作者: 慢慢思考 時間: 2018-1-8 21:44
這里對開發板的廠商倒是有個建議,那就是考慮購買者自建電路的需要,并出元器件搭配建議和相應搭建電路圖及搭建教材。有些元器件,基于自建電路需要可以考慮用插座。反正開發板也可以當作下載器及電源的。
作者: izhineng 時間: 2018-1-9 04:02
正如樓主的網名一樣,樓主寫的東西都是值得深思的,看了以后對于工作和學習都是絕對有好處的,謝謝分享,大贊一個
作者: 花花騎士 時間: 2020-11-30 08:31
學習了,雖然搞到現在有一點理解,但沒樓主說的那么清楚
作者: 嗷嗷嗷.12 時間: 2020-11-30 19:26
說的對!
作者: 湯勇輝 時間: 2023-2-22 14:25
受益匪淺,謝謝
作者: LhUpBJT 時間: 2024-12-25 11:58
雖沒天賦,不太感興趣,也用不著,但既然是主流科技,去學學又何妨,
誰料,居然沒有開發板售賣,我也是醉了,關鍵工具得不到,我還能怎樣。
作者: lzw991101 時間: 2024-12-31 10:50
立創上有很多開發板售賣啊,而且站內資源也有仿真開發板可以用
作者: D1ngevice 時間: 2024-12-31 15:10
感謝樓主 非常有用,最近正好在學習51單片機
作者: cy123321 時間: 2025-1-1 15:53
說的很對,學到了很多
作者: 譚1234 時間: 2025-1-4 10:04
就如同我現在設計產品功能就是要如何簡化復雜度一樣,你需要讓使用者玩上幾次就明白,哦是這樣玩的,而不是玩上10幾次才明白,那么我就不是一個合格的設計者。如同偶爾的三級菜單可接受但是大量的三級那么這就是一個失敗的產品
作者: 電子保險 時間: 2025-1-10 21:05
感謝作者幫我打消了對單片機編程的畏懼心理,雖然我還沒有接觸單片機,以后我肯定好好學習單片機,提高自己。
歡迎光臨 (http://m.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
伊人久久在线
|
国产又粗又猛视频免费
|
久久成人毛片
|
国产女人高潮毛片
|
精品一区二区三区免费看
|
激情视频一区
|
午夜av福利
|
人人干人人看
|
国v精品久久久网
|
黄色片网站视频
|
欧美黄色录像
|
国产中文在线观看
|
亚洲一区视频
|
91国产丝袜在线播放
|
国产一级片免费观看
|
日韩影音|
伊人操
|
看黄网站在线观看
|
日韩一级片视频
|
日韩av免费在线观看
|
特黄一级视频
|
岛国av在线免费观看
|
男人的天堂在线视频
|
中文字幕在线观看网址
|
欧美成人激情
|
午夜激情小视频
|
国产欧美久久久
|
人人综合
|
国产精品网站在线观看
|
亚洲91av|
天堂一区二区三区
|
欧美日韩四区
|
欧美亚洲国产精品
|
欧美在线|
欧美成人激情
|
国产精品美女毛片真酒店
|
国产成人a亚洲精品
|
亚洲精品久久久久久久久久久
|
亚洲超碰在线
|
午夜欧美
|
亚洲精品免费在线
|