2015年7月17日 星期五

關於 PL2303HX 在 win8 無法驅動的問題

為了給 Arduino Pro mini 灌程式, 今年 4 月在露天買了一條蠻好用的 PL2303HX USB-TTL 程式上傳線 (價格便宜 & 板子有封裝), 在 XP 或 Win7 安裝官網所下載的 1.8.0 版驅動程式都可以抓到 com port, 上傳都 OK, 參考 :

# 安裝 PL2303HX USB 轉 TTL 驅動程式
# PL2303HX 下載線 USB轉TTL 長1米 UART Arduino Pro mini 可

但是這條 PL2303HX 線一直無法被家裡的聯想桌電 Win8.1 與我的 Inhon Win8.1 筆電抓到 (錯誤代碼 Code 10 : 無法啟動此裝置), 所以我向賣家詢問是否無法在 Win8.1 系統使用, 其回答如下 :

"可以在win8使用,但要注意、Win8系統自帶的驅動程式均不支援PL2303HX, 必須要關閉Win8的驅動程式自動更新,請自行下載2009年以前的驅動程式才可正常使用哦!"

我也在谷歌搜尋到好幾個解答, 但其實都沒有啥用 :

https://drive.google.com/file/d/0BzdGbZCSZTdsdTh4dTFmUEF1bzQ/view
Prolific PL2303 USB-to-Serial port adapter driver fails to install
win8 PL2303驱动的问题(已经解决掉了),有问题的同学可以参考
PL2303 Prolific USB to TTL Driver for Windows 8.1

最後找到這個外國人的解答, 這才了解為何露天賣家說要找 2009 年以前的驅動程式安裝才行, 原來這條上傳/下載線裡面的晶片可能是仿製的 (原文用 Fake, 假冒的), 所以原廠旺玖科技 Prolific 已經在新版的驅動程式中封殺此類晶片, 參見 :

FAKE PL2303 – HOW TO INSTALL ON WINDOWS 8.1

"A quick investigation gave an unpleasant anwser – PL2303 chips are fake!
In the newest drivers Prolific blocked all fake chips and the driver in Windows 8.1 is also blocking my fake pl2303. But there is a solution – you have to install old drivers – version 3.3.2.105."

我照文中建議方法, 去下載 2009 年以前的驅動程式 :

# IO-Cable_PL-2303_Drivers-Generic_Windows_PL2303_Prolific

解開後執行其中的 PL2303_Prolific_GPS_1013_20090319.exe, 但這只是把驅動程式複製到系統裡, 還必須做更新驅動程式的動作, 才能把黃色驚嘆號去掉, 讓系統抓到 com port :


選下面那個 "瀏覽電腦上的驅動程式軟體" :


還是一樣選下方的 "讓我從電腦上的裝置驅動程式清單中挑選"


挑選剛剛安裝的那個 3.3.2.105 版驅動程式 (2008/10/27) :


再按下一步, 跑完 "正在安裝驅動程式軟體" 後, 即可抓到 com port 了 :


驚嘆號三角形消失, 大功告成.

關於 USB-TTL/UART 轉接線問題, 高手葉難寫過一篇很完整的文章, 詳見 :

Raspberry Pi:透過序列埠登入系統

20150722 補充 :

我量了 TXRX 線輸出為 3.3V (VCC 輸出為 5V), 似乎可用在 ESP8266 (但電源必須用 AMS1117 電源模組輸出的 3.3V 才夠力), 參考 PL2303HX 的 PDF 規格書,

http://www.prolific.com.tw/UserFiles/files/ds_pl2303HXD_v1_4_4.pdf

在 "3.0 Introduction" 中有提到可連接 3.3v 設備 :

" Flexible signal level requirement on the RS232-like serial port side also allows PL-2303HXD to connect directly to any 3.3V~1.8V range devices."

20150622 補充 :

我在露天找到這款可支援 Win10 的 PL2303TA 晶片的下載線, 要 88 元, 我當初買 PL2303HA 的才 34 元! 其實有網友照上面程序在 Win10 安裝 2008 年驅動程式 OK, 我今天也來試試看.

# ►474◄ PL2303TA USB轉TTL/RS232 4Pin 支持WIN7 WIN8 WIN10 $88


31 則留言:

  1. 非常感謝版主,我是在windows 10上遇到相同的問題

    最後參考您網誌的解決方法,已成功解決

    回覆刪除
  2. 太神啦~~
    在Win 8.1 可以成功運行
    省得我再去買新版的轉接頭

    回覆刪除
  3. 嘿!小狐狸!
    我也遇到一樣的問題~
    本來我下載了PL-2303 官網的Driver
    解壓縮並且安裝還是失敗~
    查看了他們給的Manual發現有提到大陸仿冒品的事情~
    所以也不確定自己是不是買到仿冒品 或者只是單純的晶片版本舊了
    搜尋一下舊版Driver就看到你的文章~
    隨即處理掉問題!
    謝謝您的分享~

    回覆刪除
  4. 感謝分享
    WIN10適用此解決方案

    回覆刪除
  5. Win10 也以嗎? 太好了, 最近正想升 win10 的說.

    回覆刪除
  6. 感謝分享
    我windows10也是如此解決的,謝謝.

    回覆刪除
  7. 感謝 !!
    解決在 win10 卡了很久的問題

    回覆刪除
  8. 謝謝你!! win8.1可以用 幫大忙了

    回覆刪除
  9. 非常感謝!!!Win10 解決+1。補充我這台電腦型號。

    我是使用ASUS T102HA,原本以為是變形平板有什麼功能限制,現在解決了console連線問題,現在這台又更好用了!!

    回覆刪除
  10. 贊一個! 解決了我 win8 無法使用的問題

    回覆刪除
  11. 終於解決了我的WIN10無法使用的問題,太棒了,感謝大大的分享

    回覆刪除
  12. 太感謝你了,真是幫了我大忙,最近在學習8051,買了金剛科技的開發版,卻一直無法使用,並解決這個pl2303的問題,花了一天多的時間找資料,所幸有大大無私地分享,我真得要跪鍵盤,對版大致敬了

    回覆刪除
  13. 哪裡, 何不學 Arduino 呢? 比 8051 簡單很多喔!

    回覆刪除
  14. 版大!!因為學校的課程規定要學習8051,arduino已經學習到一個程度,教授說要玩玩最原始的arduino,從8051開始了解原來arduino的構成。

    回覆刪除
  15. 喔! 原來是微處理機的進階課程! 我也買過一塊 8051 開發板, 但買來太久沒玩, 就算了. 因為可以玩的東西好多.

    回覆刪除
  16. 感謝分享 相當實用

    每一位前者累積的經驗 造就後面的人走的快速

    再次感謝分享經驗

    回覆刪除
  17. 實在是太感謝了,終於解決我的問題了!

    回覆刪除
  18. 請問PL2303HX可否轉成USB To RS232使用呢
    因為USB To RS232需有特殊晶片
    才能正常使用
    因手邊恰好有PL2303HX可以使用
    因此想要改成USB To RS232
    不知是否可行嗎??
    謝謝

    回覆刪除
  19. PL2303 是 USB TO TTL 轉換晶片, 不是 USB TO RS232. 事實上 TTL 與 RS232 協定部分相同, 僅僅物理層電壓不同, RS232 正邏輯用的是 -13V, 負邏輯是 +13V, 與 TTL 的正負 5V 不同. 所以若要改成 RS232, 必須進行位準轉換, 這部分要用 MAX232 等晶片處理, 參考 :
    https://www.sparkfun.com/tutorials/215
    https://www.crifan.com/summary_ttl_vs_rs232/

    回覆刪除
  20. 作者已經移除這則留言。

    回覆刪除
  21. 你好,先感謝大大的分享,我按照上文已成功連接並UPLOAD了程式進行測試,但想UPLOAD另一個程式時未能成功,並顯連接埠未能存取,請問知不知是什麼原因呢?

    回覆刪除
  22. 檢查 IDE 的埠設定是否跑掉了.

    回覆刪除
  23. windows7成功
    感謝分享

    回覆刪除
  24. 感謝分享,WIN7 已成功安裝,省下一條線的錢 >.O

    回覆刪除
  25. 感謝您的幫忙,我找了好久都不知道為何會找不到驅動程式 所有驅動程式都找過了 請受我一拜

    回覆刪除
  26. Hi, 歐弟, 不敢當, 我就只是多爬了些文而已, 順便記一下, 怕自己久了遺忘啦!

    回覆刪除