最近工作上於測試時遇到一問題點,那就是要把TTL/CMOS訊號轉換到ASCII呈現於電腦,一版來說需要透過一個RS232或是USB來作介面以及其它如PS2接頭,問題來了如何轉換呢?其實有很多方式啦!如圖所示為訊號輸入由RS232輸出。
其中IC MAX232可以換成HIN232 PIN是一樣的,輸入電壓一樣,範圍是可以到DC 6V但是我的問題來了,奇怪怎麼我的待測物不會動呢?另外的模組為何可以動呢?
我的GP接收產品輸入電壓是5V,所以我把MAX232 VCC部份改成5V,這部份沒問題,想一想應是沒有錯。
GPS模組線路是DC 5V經過REGULATOR轉成3.3V供給接收模組使用。
經過研一步一步研究結果原因是:訊號LEVEL
為何呢?
MAX232 INPUT是吃3.3V~6V沒問題我的輸入電壓5V也沒問題。
5V電壓經由REGULATOR轉成3.3V後供給GPS模組所以輸出的訊號LEVEL也是3.3V。
MAX232之後因為這顆IC目前所DRIVER是5V所這顆MAX232 LEVEL是5V。
GPS模組LEVEL3.3V的訊號沒辦法由MAX232作轉換,LEVEL不一樣,這也是常常作轉換時出現的問題。
為何以前的GPS接收產品沒問題,因為那產品輸入電壓是3.3V當然沒問題
解決方式:
1. 問過同事說:『需要一個轉換線路由LEVEL 3.3V轉成LEVEL 5V後再傳給MAX232作TTL訊號轉換成ASCII』。
2. 把電源部份分開,MAX232部份與GPS模組LEVEL相同。
作法:REGULATOR部份輸入5V,MAX232為3.3V,分開輸入電源,記得5V與3.3V的地要接在一起,這樣才不會有問題喔!
後記:
其實有很多問題是在於LEVEL沒有考慮清楚,只要把輸入訊號和轉換的LEVEL設計為相同就沒問題了。也有可能LEVEL 5V對LEVEL3.3V的訊號可以動,但是我的線路上是沒辦法動作啦~或許還有很多方式,如果有也希望各位可以提供建議給大家喔!
留言列表