文章目錄
- 前言
- 一、單片機導師常問問題
- 1. 本課題的選課背景、意義等等?
- 2. 電路的主要作業原理是什么,元器件的作用等等?
- 3. 數碼管采用的是什么掃描方式?
- 4. 蜂鳴器或繼電器的驅動三極管為什么選用pnp型的(9012、8550),而不是npn型的(9013、8050)?
- 5. 液晶三腳接的兩個電阻是怎么算出來的?
- 6. 為什么繼電器吸合或風扇轉動時,液晶螢屏會變暗?
- 7. 超聲波測距模塊的作業原理?
- 8. 有些電阻的阻值是怎么算出來的?
- 9. 晶振為什么選用12M?
- 10. 晶振為什么選用11.0592M?
- 11. 定時器的初值是怎么算的?
- 12. 仿真圖好像和實物圖有差別呢?
- 最后
前言
不少同學選擇單片機專案作為自己的畢業設計,比較適合自動化、通信、電器、還有物聯網的同學;由于較多同學向學長詢問和咨詢單片機專案問題,學長單獨開一個博客向大家詳細的全面的介紹單片機畢設專案,從單片機的基礎知識,到完整的單片機系統設計~
一、單片機導師常問問題
1. 本課題的選課背景、意義等等?
這個一般論文中都有,也都是一些套話,我就不答了,我整理的都是技術性的,
2. 電路的主要作業原理是什么,元器件的作用等等?
以模塊為粒度來解答,每個模塊對應相應的電路,購買模塊的時候記得向商家拿就行,或者百度模塊型號,基本都能解決,遇到陌生的模塊可以咨詢我,
3. 數碼管采用的是什么掃描方式?
一位數碼管的設計就是采用靜態掃描的方式,因為一位數碼管是8個段選1個位選,如果采用動態,那就是得用9個IO口,而且程式也比較麻煩,如果選用靜態那么位選接電源或地(共陽接電源,共陰接地),段選接IO口,就可以控制顯示了,這樣只用8個IO口就ok,而且程式比較簡單,多位一體的數碼管只能用動態掃描的方式,因為硬體本身就將每個位的段都接到一起了,所以只能動態控制了,
4. 蜂鳴器或繼電器的驅動三極管為什么選用pnp型的(9012、8550),而不是npn型的(9013、8050)?
因為單片機剛一上電的時候所有的IO口會有一個短暫的高電平,如果選用npn型的,即使程式上將IO口拉低,蜂鳴器或繼電器也會響一小下或吸合一下,為了避免這種情況發生,就選用pnp型的,因為我們想控制蜂鳴器或繼電器作業單片機的IO口要低電平,這樣就避免了,因為我們不可能剛一通電就讓蜂鳴器響或繼電器吸合,避免了不必要的麻煩,
5. 液晶三腳接的兩個電阻是怎么算出來的?
經過查閱資料得知(買液晶時給的資料),液晶3腳是灰度調節引腳,灰度正常時是0.5~1V左右,那么可以用兩個電阻分壓或電位器分壓,電位器得調節比較麻煩,采用10k接電源1k接地剛剛好,也不用調節,焊接好就可以用,
6. 為什么繼電器吸合或風扇轉動時,液晶螢屏會變暗?
從問題5中可以了解大概,就是液晶的灰度是電壓控制的,當繼電器吸合或風扇轉動時,需要的電流較大,而我們采用的電源線或電池盒供電會有一定的壓降,這樣液晶的3腳采集的電壓就高了,所以灰度就不合適了,解決的辦法是,電源盡量用好一點的,或換粗一點的電源線供電(主要的壓降都在電源線上),
7. 超聲波測距模塊的作業原理?
一個控制口發一個10US以上的高電平,就可以在接收口等待高電平輸出.一有輸出就可以開定時器計時,當此口變為低電平時就可以讀定時器的值,此時就為此次測距的時間,方可算出距離.如此不斷的周期測,就可以達到你移動測量的值了,測距部分的程式不是我們寫的,是買模塊的時候廠家給的例程,只需要移植應用就好,
8. 有些電阻的阻值是怎么算出來的?
比如是LED串聯的分壓電阻,計算方法是:R=U/I
Led作業電壓是3V左右,那么電阻的電壓就是(供電電壓-3v)=2v
Led點亮的電流是420ma,那么電阻的電流也是420ma
這樣電阻就是2除以0.0040.02=100500Ω
但是實際使用的時候用100~500Ω,led就太亮了,很容易啥訓,所以就適當的加大了電阻,
9. 晶振為什么選用12M?
12M是比較常用的晶振,51單片機是12分頻的,如果選用12M晶振,如果是單指令周期的陳述句,剛好是1us,其他陳述句正好是1us的整數倍,很輕松算出每個陳述句用了多長時間,
10. 晶振為什么選用11.0592M?
11.0592比較常應用在串口通信和紅外遙控電路中,
11.0592M是因為在進行通信時,12M頻率進行串行通信不容易實作標準的波特率,比如9600,4800,而11.0592M計算時正好可以得到,因此在有通信介面的單片機中,一般選11.0592M計算一下就知道了,如我們要得到9600 的波特率,晶振為11.0592M 和12M,定時器1為模式2,SMOD 設為1,分別看看那所要求的TH1 為何值,代入公式:11.0592M 9600=(2÷32)×((11.0592M/12)/(256-TH1)) TH1=25012M 9600=(2÷32)×((12M/12)/(256-TH1))TH1≈249.49上面的計算可以看出使用12M 晶體的時候計算出來的TH1 不為整數,而TH1 的值只能取整數,這樣它就會有一定的誤差存在不能產生精確的9600 波特率,
比如做GSM的設計時,用12M就是不可行的,就得用11.0592M,
11. 定時器的初值是怎么算的?
我們一般采用的是50ms的定時,那樣20個50ms就是1s,至于初值怎么算,課本上剛學的時候就交了,可以自己看下,如果看了會發現我們的初值好像和課本上的不一樣,那是因為我們是用軟體算的,計算初值有好多軟體,可以找度娘,軟體很方便,動動手就可以了哦,
12. 仿真圖好像和實物圖有差別呢?
仿真圖就是一個模擬用的,和實際效果是有點差別的,仿真中沒有晶振電路和復位電路都是可以作業的,焊接是按照原理圖來的而不是仿真,
最后
我能給你提供哪些幫助
本人計算機研究生,擁有豐富的計算機專案經驗和知識維度,幫助你順利畢業!
個人兼職,非中介,實力可測,可先進行免費技術講解!
任何關于技術的問題,都可以問學長,有空都會給同學們解答的,歡迎打擾!
祝各位同學順利畢業!
[關鍵詞]
單片機畢設 單片機畢業設計 畢業設計 畢業設計幫助 單片機設計 畢業設計單片機 畢設 物聯網 嵌入式 嵌入式畢設 嵌入式畢業設計 樹莓派 arduino stm32畢業設計 畢業設計stm32 開發板
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/289783.html
標籤:其他
