stc15w4k56s4單片機用USB串口線下載程序不成功一直提示正在檢測目標單片機的一個原因和解決
1、出現了什么問題
前一段時間,用USB轉TTL串口下載線(下稱USB串口線)給stc15w4k56s4下載程序,按照之前的做法:將USB串口線的RXD接單片機串口1的TXD引腳,將USB串口線的TXD接單片機串口1的RXD引腳,USB串口線的地線與單片機地線接到一起。
按照之前的工程經驗,在下載軟件里點擊“下載/編程”之后給單片機送電,就該執行下載的動作。開發定制:3w點yonko-tech點com
但是,下載軟件卻一直顯示“正在檢測目標單片機”,沒有執行編程的動作,這怎么回事呢?
2、尋找原因
(1)查看STC15手冊
找到STC15W4K系列的關于程序下載的章節的描述,一看,手冊里分了幾種情況:
情況1,假如是用RS232口下載,那么參考電路如下:
1.png (405.09 KB, 下載次數: 31)
下載附件
2024-1-7 15:51 上傳
情況2,假如是用USB轉串口芯片PL2303下載,那么參考電路如下:
2.png (405.32 KB, 下載次數: 40)
下載附件
2024-1-7 15:51 上傳
圖 2 用PL2303下載程序的電路
情況3,假如是直接用USB口下載,那么參考電路如下:
3.png (341.01 KB, 下載次數: 28)
下載附件
2024-1-7 15:51 上傳
圖 3 用USB直接下載程序的電路
(2)對照手冊檢查
由于本次下載使用的是CH340的USB轉串口下載線來下載程序的,其實方法與情況2相似,檢查接線:下載線的TXD接單片機的RXD,下載線的RXD接單片機的TXD,也進行了共地,其他接線也沒錯誤,那么是什么問題呢?
再看看情況3 USB直接下載的電路圖 3,手冊建議在P1.7和P1.6之間接一個24Mhz的晶振,這是什么意圖呢?是不是這晶振只是USB下載需要呢?看了一下手冊說這里加晶振不是必需的,那么應該可不接。
那么問題在哪里呢?是不是手冊里有些問題沒說到?只好問問廠家。
得到回復,原來這款單片機在下載程序時會檢測P1.7、P1.6是否有外部晶振,假如這些引腳沒接晶振而用作其他用處,又假如這些引腳的引線長,那么就會產生漂浮電壓信號,且一般這個漂浮電壓信號的頻率很小,很長時間才產生一個脈沖,那么下載時就會一直處在檢測狀態而無法下載。這也算這款單片機的一個BUG。開發定制:3w點yonko-tech點com
3、怎么解決
廠家給出一個解決方法:直接把P1.7引腳接高電平,不作其他用處。
按照廠家的方法:把P1.7引腳常接高電平,點擊“下載/編程”,給單片機上電,然后就順利地把程序下載到了單片機。
4.png (406.79 KB, 下載次數: 36)
下載附件
2024-1-7 15:52 上傳
圖 4 解決方法
4、總結
在使用串口1給stc15w4k56s4單片機下載程序時,P1.7需常接高電平,或者P1.7和P1.6外接晶振,或者P1.7和P1.6也可以空著不用,才能使串口下載程序成功。
舉一反三,這個系列的單片機,如stc15w4k16s4、stc15w4k32s4、stc15w4k40s4、stc15w4k48s4可能也是有同樣的問題。
沙鷗 于 成都
|