A. 單片機怎麼檢測好壞
單片機一般很少壞,壞一般都是外圍電路
B. 應該怎樣檢測單片機是否損壞啊
如果用的是stc的晶元 買過來就有跑馬燈程序.
其他好象不可以, 我用了幾萬個還沒有遇到買來就不可以用,一般不會出現這個問題 .
C. 如何判斷單片機是否正常工作
供電正常,RST能正常復位,晶振腳有正弦波,EA接5V(一般情況下),ALE腳有高頻方波輸出。
DS18B20就是個溫度感測器,具體用法之類的,網上太多,灰一樣. DS18B20原理與分析 DS18B20是美國DALLAS半導體公司繼DS1820之後最新推出的一種改進型智能溫度感測器。與傳統的熱敏電阻相比,他能夠直接讀出被測溫度並且可根據實際要求通過簡單的編程實現9~12位的數字值讀數方式。可以分別在93.75 ms和750 ms內完成9位和12位的數字量,並且從DS18B20讀出的信息或寫入DS18B20的信息僅需要一根口線(單線介面)讀寫,溫度變換功率來源於數據匯流排,匯流排本身也可以向所掛接的DS18B20供電,而無需額外電源。因而使用DS18B20可使系統結構更趨簡單,可靠性更高。他在測溫精度、轉換時間、傳輸距離、解析度等方面較DS1820有了很大的改進,給用戶帶來了更方便的使用和更令人滿意的效果。 1.DS18B20簡介 (1)獨特的單線介面方式:DS18B20與微處理器連接時僅需要一條口線即可實現微處理器與DS18B20的雙向通訊。 (2)在使用中不需要任何外圍元件。 (3)可用數據線供電,電壓范圍:+3.0~ +5.5 V。 (4)測溫范圍:-55 ~+125 ℃。固有測溫解析度為0.5 ℃。 (5)通過編程可實現9~12位的數字讀數方式。 (6)用戶可自設定非易失性的報警上下限值。 (7)支持多點組網功能,多個DS18B20可以並聯在惟一的三線上,實現多點測溫。 (8)負壓特性,電源極性接反時,溫度計不會因發熱而燒毀,但不能正常工作。DS18B20的測溫原理 DS18B20的測溫原理如圖2所示,圖中低溫度系數晶振的振盪頻率受溫度的影響很小〔1〕,用於產生固定頻率的脈沖信號送給減法計數器1,高溫度系數晶振隨溫度變化其震盪頻率明顯改變,所產生的信號作為減法計數器2的脈沖輸入,圖中還隱含著計數門,當計數門打開時,DS18B20就對低溫度系數振盪器產生的時鍾脈沖後進行計數,進而完成溫度測量。計數門的開啟時間由高溫度系數振盪器來決定,每次測量前,首先將-55 ℃所對應的基數分別置入減法計數器1和溫度寄存器中,減法計數器1和溫度寄存器被預置在 -55 ℃ 所對應的一個基數值。減法計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當減法計數器1的預置值減到0時溫度寄存器的值將加1,減法計數器1的預置將重新被裝入,減法計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環直到減法計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。圖2中的斜率累加器用於補償和修正測溫過程中的非線性,其輸出用於修正減法計數器的預置值,只要計數門仍未關閉就重復上述過程,直至溫度寄存器值達到被測溫度值,這就是DS18B20的測溫原理。 另外,由於DS18B20單線通信功能是分時完成的,他有嚴格的時隙概念,因此讀寫時序很重要。系統對DS18B20的各種操作必須按協議進行。操作協議為:初始化DS18B20(發復位脈沖)→發ROM功能命令→發存儲器操作命令→處理數據。各種操作的時序圖與DS1820相同,可參看文獻〔2〕。 DS18B20工作過程及時序DS18B20內部的低溫度系數振盪器是一個振盪頻率隨溫度變化很小的振盪器,為計數器1提供一頻率穩定的計數脈沖。高溫度系數振盪器是一個振盪頻率對溫度很敏感的振盪器,為計數器2提供一個頻率隨溫度變化的計數脈沖。初始時,溫度寄存器被預置成-55℃,每當計數器1從預置數開始減計數到0時,溫度寄存器中寄存的溫度值就增加1℃,這個過程重復進行,直到計數器2計數到0時便停止。初始時,計數器1預置的是與-55℃相對應的一個預置值。以後計數器1每一個循環的預置數都由斜率累加器提供。為了補償振盪器溫度特性的非線性性,斜率累加器提供的預置數也隨溫度相應變化。計數器1的預置數也就是在給定溫度處使溫度寄存器寄存值增加1℃計數器所需要的計數個數。DS18B20內部的比較器以四捨五入的量化方式確定溫度寄存器的最低有效位。在計數器2停止計數後,比較器將計數器1中的計數剩餘值轉換為溫度值後與0.25℃進行比較,若低於0.25℃,溫度寄存器的最低位就置0;若高於0.25℃,最低位就置1;若高於0.75℃時,溫度寄存器的最低位就進位然後置0。這樣,經過比較後所得的溫度寄存器的值就是最終讀取的溫度值了,其最後位代表0.5℃,四捨五入最大量化誤差為±1/2LSB,即0.25℃。溫度寄存器中的溫度值以9位數據格式表示,最高位為符號位,其餘8位以二進制補碼形式表示溫度值。測溫結束時,這9位數據轉存到暫存存儲器的前兩個位元組中,符號位佔用第一位元組,8位溫度數據占據第二位元組。DS18B20測量溫度時使用特有的溫度測量技術。DS18B20內部的低溫度系數振盪器能產生穩定的頻率信號;同樣的,高溫度系數振盪器則將被測溫度轉換成頻率信號。當計數門打開時,DS18B20進行計數,計數門開通時間由高溫度系數振盪器決定。晶元內部還有斜率累加器,可對頻率的非線性度加以補償。測量結果存入溫度寄存器中。一般情況下的溫度值應該為9位,但因符號位擴展成高8位,所以最後以16位補碼形式讀出。DS18B20工作過程一般遵循以下協議:初始化——ROM操作命令——存儲器操作命令——處理數據① 初始化單匯流排上的所有處理均從初始化序列開始。初始化序列包括匯流排主機發出一復位脈沖,接著由從屬器件送出存在脈沖。存在脈沖讓匯流排控制器知道DS1820 在匯流排上且已准備好操作。② ROM操作命令一旦匯流排主機檢測到從屬器件的存在,它便可以發出器件ROM操作命令之一。所有ROM操作命令均為8位長。這些命令列表如下:Read ROM(讀ROM)[33h]此命令允許匯流排主機讀DS18B20的8位產品系列編碼,唯一的48位序列號,以及8位的CRC。此命令只能在匯流排上僅有一個DS18B20的情況下可以使用。如果匯流排上存在多於一個的從屬器件,那麼當所有從片企圖同時發送時將發生數據沖突的現象(漏極開路會產生線與的結果)。Match ROM( 符合ROM)[55h]此命令後繼以64位的ROM數據序列,允許匯流排主機對多點匯流排上特定的DS18B20定址。只有與64位ROM序列嚴格相符的DS18B20才能對後繼的存貯器操作命令作出響應。所有與64位ROM序列不符的從片將等待復位脈沖。此命令在匯流排上有單個或多個器件的情況下均可使用。Skip ROM( 跳過ROM )[CCh]在單點匯流排系統中,此命令通過允許匯流排主機不提供64位ROM編碼而訪問存儲器操作來節省時間。如果在匯流排上存在多於一個的從屬器件而且在Skip ROM命令之後發出讀命令,那麼由於多個從片同時發送數據,會在匯流排上發生數據沖突(漏極開路下拉會產生線與的效果)。Search ROM( 搜索ROM)[F0h]當系統開始工作時,匯流排主機可能不知道單線匯流排上的器件個數或者不知道其64位ROM編碼。搜索ROM命令允許匯流排控制器用排除法識別匯流排上的所有從機的64位編碼。Alarm Search(告警搜索)[ECh]此命令的流程與搜索ROM命令相同。但是,僅在最近一次溫度測量出現告警的情況下,DS18B20才對此命令作出響應。告警的條件定義為溫度高於TH 或低於TL。只要DS18B20一上電,告警條件就保持在設置狀態,直到另一次溫度測量顯示出非告警值或者改變TH或TL的設置,使得測量值再一次位於允許的范圍之內。貯存在EEPROM內的觸發器值用於告警。③ 存儲器操作命令Write Scratchpad(寫暫存存儲器)[4Eh]這個命令向DS18B20的暫存器中寫入數據,開始位置在地址2。接下來寫入的兩個位元組將被存到暫存器中的地址位置2和3。可以在任何時刻發出復位命令來中止寫入。Read Scratchpad(讀暫存存儲器)[BEh]這個命令讀取暫存器的內容。讀取將從位元組0開始,一直進行下去,直到第9(位元組8,CRC)位元組讀完。如果不想讀完所有位元組,控制器可以在任何時間發出復位命令來中止讀取。Copy Scratchpad(復制暫存存儲器)[48h]這條命令把暫存器的內容拷貝到DS18B20的E2存儲器里,即把溫度報警觸發位元組存入非易失性存儲器里。如果匯流排控制器在這條命令之後跟著發出讀時間隙,而DS18B20又正在忙於把暫存器拷貝到E2存儲器,DS18B20就會輸出一個「0」,如果拷貝結束的話,DS18B20 則輸出「1」。如果使用寄生電源,匯流排控制器必須在這條命令發出後立即起動強上拉並最少保持10ms。Convert T(溫度變換)[44h]這條命令啟動一次溫度轉換而無需其他數據。溫度轉換命令被執行,而後DS18B20保持等待狀態。如果匯流排控制器在這條命令之後跟著發出讀時間隙,而DS18B20又忙於做時間轉換的話,DS18B20將在匯流排上輸出「0」,若溫度轉換完成,則輸出「1」。如果使用寄生電源,匯流排控制器必須在發出這條命令後立即起動強上拉,並保持500ms。Recall E2(重新調整E2)[B8h]這條命令把貯存在E2中溫度觸發器的值重新調至暫存存儲器。這種重新調出的操作在對DS18B20上電時也自動發生,因此只要器件一上電,暫存存儲器內就有了有效的數據。在這條命令發出之後,對於所發出的第一個讀數據時間片,器件會輸出溫度轉換忙的標識:「0」=忙,「1」=准備就緒。Read Power Supply(讀電源)[B4h]對於在此命令發送至DS18B20之後所發出的第一讀數據的時間片,器件都會給出其電源方式的信號:「0」=寄生電源供電,「1」=外部電源供電。④ 處理數據DS18B20的高速暫存存儲器由9個位元組組成,其分配如圖3所示。當溫度轉換命令發布後,經轉換所得的溫度值以二位元組補碼形式存放在高速暫存存儲器的第0和第1個位元組。單片機可通過單線介面讀到該數據,讀取時低位在前,高位在後。
D. 如何判斷單片機是否工作
供電正常,RST能正常復位,晶振腳有正弦波,EA接5V(一般情況下),ALE腳有高頻方波輸出。
DS18B20就是個溫度感測器,具體用法之類的,網上太多,灰一樣.
E. adc0809如何用單片機檢測
老大,adc0809是ad的,怎麼產生方波。用555吧。做一個電壓比較器,不過好像速度有點跟不上,反正以前沒做過,現在好多都忘得差不多了。
做頻率計,最好用avr的吧,速度比51快點。
我空間有一篇學生時做的數字電壓表,就用的adc0809,希望能對你有幫助,程序我自己寫的,c語言,應該能看懂。
ok,good luck。
F. 單片機上電沒運行,要檢查什麼
單片機上電後沒有運轉,首先要檢查什麼? 首先應該確認電源電壓是否正常。用電壓表測量接地引腳跟電源引腳之間的電壓,看是否是電源電壓,例如常用的5V。 接下來就是檢查復位引腳電壓是否正常。分別測量按下復位按鈕和放開復位按鈕的電壓值,看是否正確。 然後再檢查晶振是否起振了,一般用示波器來看晶振引腳的波形,注意應該使用示波器探頭的X10檔。另一個辦法是測量復位狀態下的IO口電平,按住復位鍵不放,然後測量IO口(沒接外部上拉的P0口除外)的電壓,看是否是高電平,如果不是高電平,則多半是因為晶振沒有起振。 另外還要注意的地方是,如果使用片內ROM的話(大部分情況下如此,現在已經很少有用外部擴ROM的了),一定要將EA引腳拉高,否則會出現程序亂跑的情況。有時用模擬器可以,而燒入片子不行,往往是因為EA引腳沒拉高的緣故(當然,晶振沒起振也是原因只一)。經過上面幾點的檢查,一般即可排除故障了。如果系統不穩定的話,有時是因為電源濾波不好導致的。在單片機的電源引腳跟地引腳之間接上一個0.1uF的電容會有所改善。遇到系統不穩定時,就可以並上電容試試(越靠近晶元越好)
G. 怎麼檢驗單片機是否合格
至於單片機嘛,也沒有什麼先進的儀器,如果你是自己用的話,也沒有必要,下個程序裝在板上試,別的也沒辦法了,一般新買的不可能是壞的!
H. 怎麼檢測STC89C52單片機的好壞
你可以編一個各IO口高低電平變化的程序,用LED指示,一般能下載程序進去,並且運行正常的就是好的。
I. 51單片機一直顯示真在檢查單片機,是程序問題嗎不是的話是什麼問題,型號對了,波特率試了很多
檢查:1.單片機最小系統供電是否正常。2.檢查晶振連接是否正常,可以用萬用表測量、正常情況下其他引腳都是高電平而晶振引腳約為1/2Vcc。3.檢查串口連接線纜是否正常,RXD、TXD是否錯接,USB轉串口下載線要求交叉連接。4.spi下載軟體中選擇使用外部晶振,核實串口號是否匹配。5.最小系統斷電狀態點擊下載而後上電。
J. 如何檢查單片機是否損壞
電壓正常只能說明晶元內部沒有短路,晶振腳沒有波形並不代表單片機壞了,現在的單片機都有內部RC振盪器,即使沒有晶振都能工作。
最可靠的方法是,如果單片機裡面有程序,上電,看程序是否在執行,能執行程序肯定是好的了;或者單片機連上下載器,看能不能正常下載程序,如果可以的話,單片機也是好的。
註:以上說的單片機是好的說的是CPU、存儲器這塊沒有問題,至於外設(有時壞一兩個外設,單片機其他部分沒問題也是能用的)這塊需要在CPU沒問題、能夠正常燒寫的前提下,自己寫程序測試外設了