★由于每一個答辯老師都會有自己的想法見解,所以每一個老師問出來的問題都可能不同,本文將系統將設計中的常識常見的問題進行整理出來以供不時之需。就算在答辯中老師沒有問起這些問題但是這些問題讓大家對設計中的原理認識還是有所幫助的。另外根據個人的經驗告訴大家,在答辯中老師可能會問起一些比較奇葩的問題:例如做的一個手機藍牙小車,老師可能會問在操控的時候手機掉地上該如何辦?問是否能用別的手機進行繼續操控,如果可以,那么安全性又該如何解決?總之像這類的問題就是一個坑,大家可以隨機應變。在問答的時候大家千萬不要沉默,想到什么就大膽的回答。另外一定要對自己有信心,堅信設計為自己所做,在答辯的時候老師不會讓你現場制作,比較后面還有那么多同學等著答辯的,實在有點破綻那就說有讓學的比較好的同學幫忙。★☆.STC89C51/52、AT89C51/52、AT89S51/52之間的關系與區別?答: 共同點:都是采用MCU-51內核,引腳和編程方面都是一樣,所以統稱為51單片機。大家一定要記住51單片機不是單單指的是AT89C51或者STC89C51,51單片機是屬于一個系列都采用MCU-51內核。 不同點:從這些單片機型號上來認識它們。 ①:開頭的字母指的是生產的廠商。“STC”是宏晶科技、“AT”是Atmel公司; ②:“89C”和“89S”這個是單片機型號。‘9’表示內部含有Flash存儲器;‘C’表示CMOS產品;‘S’表示含有串行下載Flash存儲器; ③:“51”和“52”這是表示內部程序存儲空間大小。其中“51”表示有4K程序存儲空間,“52”有8K程序存儲空間,另外還有“54”、“55”、“58”、“516”等依次類推即可。。。所以這個也是在設計中選擇單片機具體型號上的一個關鍵地方。如果程序的大小為5K,那么用“51”的只有4K就裝不下不可行,所以只能使用“52”。如果程序只有2K,那么使用“51”有4K的存儲空間那就足夠了,那么會問使用“52”行嗎,這個當然是可以的,只有芯片的程序存儲空間大于實際程序的大小就可以,這個好比U盤的大小,大家想下就知道了。 ☆.如果將程序下載到單片機中?答: 首先,下載程序你就的有一根線將板子上的單片機和電腦進行連接起來(大家要注意這個不是那個圓孔的電源線,電源線只能用于供電而不能下載程序),那么這根線就叫作下載器。 然后,電腦上需要裝上下載器對應的驅動。(這個不難理解,就好比,你鍵盤或鼠標你買回來第一次插到電腦上沒有安裝驅動是不能用的,等驅動安裝好才能使用)。 再來,電腦上需要有下載程序的軟件。下載程序的時候就只要再軟件中選擇好需要下載的程序然后點擊下載就可以下載進入。(切記STC的單片機需要冷啟動才能下載,所謂能啟動就是板子上先關閉電源,在電腦上點擊下載后,在將板子的電源打開。如果沒有冷啟動這個是沒辦法下載的) 具備以上三個點就可以將程序從電腦下載到單片機中了。 備注:STC和AT這兩個單片機的下載程序方法是不一樣的,STC單片機用串行下載線(如:PL2303)就可以了,而AT單片機需要用專門的下載器(如:SP200)。對應的下載器驅動也需要安裝對應的。下載軟件也是需要對應支持。我們下載程序的時候下載軟件(STC采用
1.001.jpg (1.71 KB, 下載次數: 181)
下載附件
2016-6-18 15:37 上傳
,AT采用
1.002.jpg (1.41 KB, 下載次數: 183)
下載附件
2016-6-18 15:37 上傳
)。具體的教程可以下載資料中《11-相關軟件下載》文件夾中《程序下載軟件《普中下載軟件》》的下載鏈接進行下載,里面有具體的下載教程。 ☆.單片機上一共具有多少個引腳,多少個IO口?答: 我們使用的單片機STC89C51/52、AT89C51/52、AT89S51/52中的任何一種都是具有40引腳。其中32個IO口,分為P0、P1、P2、P3四組八位IO口。P0、P1、P2這三組只能作為普通IO口用(正常的輸入輸出操作),而P3具有普通IO的功能外還可以使用第二功能(如串口通訊,計數器輸入,外部中斷觸發等)。 ☆.P0口的上拉電阻(排阻)是否有必要加上?或者為什么需要加上拉電阻(排阻)?答: 51單片機的P0口時漏極開路輸出。 作為輸出:如果沒有接上拉電阻(排阻)的話輸出電流非常低,輸出低電平的時候為0,但是輸出高電平是處于高阻態并非5V,也就是說輸出高電平不穩定。所以需要添加上拉電阻(排阻)(即:一端連接到VCC),由VCC通過這個上拉電阻給負載提供電流,使得高電平輸出穩定。 作為輸入:當P0作為輸入時可以不加上拉電阻(排阻),不過需要在讀之前先將P0置1,使P0口處于高阻浮空狀態,這樣所輸入高電平才能被讀取,否則無法正確讀取到高電平。 綜合以上,P0加上拉是有必要的,不管作為輸入還是輸出。輸入這個必須的加,輸出的話如果沒有加在每次讀取都得先置1程序上顯得麻煩,添加了上拉就不需要多余這一步。 ☆.晶振是如何選擇?或者說為什么要選擇12MHZ或者11.0592MHZ?答: 在51單片機上晶振通常采用的是12MHZ或者11.0592MHZ。采用6MH、24MHZ等也是可以,只要再單片機晶振頻率范圍之內就可以。 如果采用12MHZ晶振的話,經過12分頻后一個指令周期剛好1us,這樣對于需要計時的程序就非常有幫助了。剛好1us計算非常方便。 如果采用11.0592MHZ晶振的話,對于波特率的產生可以作為理論0誤差(晶振本身也不可能剛好11.0592MHZ,所以不可能說百分百的)。而采用12MHZ或者別的晶振的時候就可以產生非常大的誤差這樣就會導致通訊失敗。所以在紅外遙控,串口通訊上我們都是采用11.0592MHZ。 我們在除了以上兩種特殊情況選擇11.0592MHZ外,其余的都一致采用12MHZ。 ☆.51單片機共有幾個中斷,分別是什么?答: 5個。分別為:外部中斷0、定時/計數器中斷0、外部中斷1、定時/計數器中斷1、串口中斷。優先級(也就是同時發生情況下先執行哪一個中斷):外部中斷0>定時/計數器中斷0>外部中斷1>定時/計數器中斷1>串口中斷。 ☆.為什么仿真圖看上去和實物(或原理圖)有差別?(這問題針對可以仿真的設計,不可以仿真的設計可以了解下或者忽略)。答: 原理圖采用的是DXP軟件繪制,而仿真圖采用的是Proteus軟件繪制。大家會問如果焊接是看哪一個圖?焊接的時候最好就是看PCB圖,PCB圖上的元件尺寸和布局都是最接近實物的,而原理圖和仿真圖是沒有布局,原理圖上的元件也沒具體的尺寸,仿真圖上可能有的元件使用別的代替所有。 首先仿真這只是一個模擬現實的虛擬環境,它是處于理想的一個環境下模擬現實情況,然后在顯示中可能會出現各種各樣的問題,所以告誡大家仿真可行的,你做出東西來也不一定可以運行,大家千萬別以為仿真可以的做出來的東西就可以(不過大家仿真我們做的仿真和實物都是經過調試OK的)。 比如:在仿真中的單片機你不用接VCC和GND,而在事物上你沒接連電都沒有還怎么運行;在仿真中復位電路和晶振電路也可以不接,而在實際上不接就等同于一個人沒有心臟(無法運行);還有仿真中DS1302時鐘芯片在每次開啟仿真時都會自動校準電腦上的時間(也就是電腦上時間多少仿真里就多少),而實際就沒辦法只能靠備用電池提供電源繼續供電,才能保持時間的準確;還有仿真中可能很多器件是沒有的比如酒精傳感器、煙霧傳感器、震動傳感器等等,沒有怎么辦?那就得根據這些傳感器特性找到對應的起來來替代,酒精傳感器、煙霧傳感器這兩種可以用電位器來模擬輸出的電壓,震動傳感器可以用按按鍵來模擬實際中是否震動產生。。。 除了以上列舉的幾種不一樣的地方還有很多這里就不一一列舉。 ☆. LCD1602左上角的藍白色東西時什么?作用是什么?答: 電位器。 作用:首先這個電位器接入的是LCD1602第3引腳,查閱LCD1602手冊可以知道第3引腳是調節灰度的,而且是采用電壓進行控制,在0.5~1V左右顯示正常。所以我們采用一個電位器通過連接電源進行分壓后輸入第3引腳,然后調節電位器就可以得到合適的電壓值使得顯示清晰。 可是有人會問那為什么不直接計算一個合適的電阻進行分壓接進去就好了,用電位器多麻煩。這個也是考慮過但是為什么還選擇電位器,而不是固定電阻,不是省什么成本。而是,供電電壓可能不會那么穩定的是5V,那么我們計算的時候就按一個電壓進行計算出來這樣就進去就一小范圍的適合。如果是電位器的話我不管你電源電壓多少,我調節電位器都可以調節出合適的電壓值出來。 ☆.LCD1602采用的是串口還是并口?能夠同時顯示多少內容的?答: 并口通訊。最多能夠同時顯示16*2字符(字符就是像數字、字母這種)內容。 ☆. MQ-3酒精傳感器的輸出電壓和酒精濃度的關系?答: MQ-3是半導體氣敏傳感器,它的電導率會隨著空氣中酒精氣體濃度的增加而增加,輸出的電壓與環境中的酒精濃度呈現出近視線性的關系,電壓每升高0.1V,氣體濃度增加20PPM。 ☆.LED燈串聯的電阻有何作用?阻值又是如何計算出來得到?答: 首先要知道LED燈上串聯的電阻為分壓作用。而LED燈工作電流在4~20ma,工作電壓3V。根據串聯的原理,下圖中R1電阻上的電流也應該為4~20ma,而電阻兩端的電阻就為:電源電壓VCC - LED燈工作電壓3V=2V。根據R=U/I,可以得到R1阻值在100~500Ω。而如果采用500Ω電阻的話LED燈過于亮,長時間容易燒壞,所以加大了R1阻值到1K。
1.003.jpg (2.89 KB, 下載次數: 186)
下載附件
2016-6-18 15:37 上傳
☆.設計中蜂鳴器采用有源還是無源?有源和無源的區別是什么?答: 采用的是有源蜂鳴器。 有源蜂鳴器在控制的時候只需要施加高低電平(具體看驅動電路的設計)就可以控制發出聲音。 無源蜂鳴器在控制的時候需要脈沖信號才能控制蜂鳴器鳴叫。 ☆.蜂鳴器驅動為什么要采用PNP三極管(S8550、9012)?而不采用NPN三極管(S8050、9013)?還有這個三極管的作用?答: 單片機剛上電的時候所有的IO口會處于短暫的高電平狀態。如果采用NPN三極管的話是高電平三極管導通,蜂鳴器鳴叫,這時在上電的時候就會出現鳴叫一聲。如果采用PNP三極管的話是低電平三極管導通,蜂鳴器鳴叫,這時在上電的時候處于的高電平并不會對蜂鳴器造成影響。 作用:由于單片機的IO口輸出電流比較低,而蜂鳴器的工作電流又比較大所以需要三極管進行放大電流才能使得蜂鳴器正常的工作。 ☆.ADC0832是幾位(分辨率多少)AD轉換芯片,有幾個通道?答: 8位AD轉換芯片。具有兩個通道輸入。可以實現四種采集方式,即通道0、通道1、通道0為正通道1為負差分輸入、通道0為負通道1為正差分輸入。 |