單片機軟件開發(fā)里面第一步當屬下載程序了,如果這一步都有問題,那么">

日韩精品中文字幕第1页,欧美日韩中文一区二区,日韩成人午夜精品,中文字幕一区日韩电影

大學校園網(wǎng)

大學生活網(wǎng) > 大學生學習 > 電氣工程

關于單片機的基礎知識總結(jié)

目前為止,接觸單片機已有不少,從選擇元器件、原理圖、PCB、電路硬件調(diào)試、軟件開發(fā)也算小有心得。

單片機軟件開發(fā)里面第一步當屬下載程序了,如果這一步都有問題,那么后面的一切便無從談起,記得當初剛接觸單片機時,對于下載電路方法及原理也是一頭霧水。好在隨著經(jīng)驗的積累以及自己的努力探求,現(xiàn)在對此問題算是有了點點自己的經(jīng)驗理解。故今天在此針對常用51單片機下載程序問題做下詳解,以求新手們少走彎路。

原理:單片機的TXD、RXD是TTL電平,所以你得萬變不離其宗的將其它信號轉(zhuǎn)成TTL電平,只有這樣給單片機下載程序才有可能成功!其中CH340、PL2303等芯片是直接將USB信號轉(zhuǎn)換為TTL電平,而MAX232等芯片是將TTL轉(zhuǎn)換為RS232信號或者將RS232信號轉(zhuǎn)換為TTL.下面請看利用這種原理的兩種常用方法:

方法一:

請看圖一,這是我們最常見的單片機下載電路了,其中從②到⑥屬于大家常用的USB轉(zhuǎn)串口線,用這種方案的好處是,如果自己的PC帶有串口(可能很老的機器沒有USB接口),那么就可以直接給單片機開發(fā)板下載程序,因為采用這種方法的開發(fā)板必定帶有串口接口嘛。當然,如果PC僅有USB接口而不帶串口,那么只能找根USB轉(zhuǎn)串口線了(其電路原理就是圖中②到⑥),這里我推薦大家使用采用CH340芯片的USB轉(zhuǎn)串口線,而不要采用PL2303的USB轉(zhuǎn)串口線,因為PL2303價錢便宜所以山寨的水貨較多,這會導致下載電路不穩(wěn)定,甚至無法正常下載。同時此方案的壞處是電路板上必定要做一個9針串口接口(太巨大了),這必將增加了電路PCB的面積,當然也就增加了成本啦!(順便發(fā)表下個人見解:那個9針接口實在太丑,又大又重,無形中便降低了自己的設計檔次,哈哈。所以不推薦這種方法!)

1.jpg

方法二:

請看圖二,這是我經(jīng)常采用的單片機下載電路。實踐證明效果非常好,幾乎沒出過任何問題!它的好處是只需要找根普通的USB2.0線(如圖二中②)就可以下載了,比找根USB轉(zhuǎn)串口線要輕松的多,同時由于將串口9針接口換成了USB接口,所以電路板的體積、重量也減少了不少,也顯得更美觀時尚,呵呵。在此強調(diào)一點:推薦使用CH340芯片(可以用CH340G,它引腳間距大很容易焊接)而不是PL2303,上文已說PL2303水貨多,況且PL2303的外圍電路比較復雜,這也給硬件電路的調(diào)試增加了難度。當然如果項目對成本特敏感,那么采用價錢相對較低的PL2303也無可厚非。大家看到?jīng)],圖二的電路結(jié)構(gòu)比圖一要簡化很多,那么是不是可以說明圖二的性能比圖一要更好呢?應該是吧!簡單的結(jié)構(gòu)出問題的概率當然更小了!

2.jpg

值得一提的是在使用CH340時,有些問題得注意下,因為很多同學反映用CH340下程序失敗,但其實一般都很容易解決的。經(jīng)本人總結(jié)常見原因有三:

1、某些CH340的引腳給單片機供了電導致單片機斷電不徹底(下載程序要斷電重啟),從而導致程序沒法下載。解決方案:在CH340的TXD引腳反向串聯(lián)一個二極管(推薦肖特基二極管)、在CH340的RXD引腳串聯(lián)一個約300歐姆的電阻。如此單片機可以徹底斷電,問題解決!!(特別注意:此種情況不適用于STM32等芯片)

2、有些同學在給單片機供電時,為了防反接保護電路,在電源處串聯(lián)了個二極管,由于二極管的正向壓降導致單片機供電不足,從而導致程序無法下載。解決方案:將二極管用0歐電阻代替或者采用正向壓降很小的二極管,以確保單片機的正常供電。問題解決!!

3、有些同學由于粗心將CH340的TXD引腳連接了單片機的TXD引腳,RXD引腳連接了單片機的RXD引腳,這自然不能下載程序了,一收一發(fā)不用多說吧,呵呵。解決方案:將CH340的TXD引腳連接單片機的RXD引腳,RXD引腳連接單片機的TXD引腳。問題解決!!
主站蜘蛛池模板: 密山市| 威海市| 沂南县| 雷州市| 靖宇县| 河东区| 江北区| 南通市| 响水县| 格尔木市| 栖霞市| 禄劝| 枣阳市| 深圳市| 锡林浩特市| 太保市| 香港 | 礼泉县| 三亚市| 岳池县| 大港区| 榆树市| 新河县| 沂南县| 昌黎县| 牟定县| 绥化市| 巴东县| 梧州市| 伊金霍洛旗| 东海县| 阜平县| 淮滨县| 淄博市| 清远市| 奉新县| 平阴县| 桑日县| 安达市| 克什克腾旗| 井研县|