2019年9月28日 星期六

Hinet 網頁系列 --- USB DIY 系列(六)---USB DIY 講座 (四)

(補充說明:以下這篇內容,不要說你看了都想笑版主,這個老古板,甚麼時代了,

還在想這種東西啊?是啊~連我自己看了,也想挖個洞往下鑽啊。沒辦法,科技業就是如此。

很多過去的東西,不用幾年還真的變成"骨董"了。而且還不能拿出來講,否則,會被別人笑。

不過呢。為了忠實於當年的想法與一個歷史紀錄,我還是把這篇文章給保留下來了。

最重要的還是在於幾個重點:


第一:這一生中,你到底要學多少控制器或MCU 才覺得夠用呢?常常換 MCU 是一件好事?

還是壞事?那如果要換MCU  的話,那你又認為要多久換一次?其實,這就只有一個簡單的答案

而已。"我到底可以從這個過程中,可以"賺到錢"嗎?"。坦白講啦,每一個在網路裡搞開箱文的。

難免都想從這裡面撈到一點好處的,至少是要搏個機會吧。但我不一樣的的是:當初會選這一顆

Scanner USB SOC, 是我"已經"從它身上已經賺了我人生的第一桶金了。我也只不過不想再

花心思去搞一顆我不熟悉的MCU,是想利用它的"剩餘價值"。   但事實告訴我們:搞MCU 是

永遠看IC  原廠的臉色,最重要的還是你自己對於零件庫存的管理觀念。有很多創業或是搞系統

開發的,往往做到最後:都只是賺到一整間的零件庫存而以。不信的話:你也可以回頭看看

你現在自己的實驗室或工作間,有多少東西是想丟又不想丟的東西啊?或許你還年輕或資淺。

再過幾年,你就會懂我的意思的。

第二、我個人覺得如果有機會的話,最好能以自己的經驗或眼光,開出一顆屬於自己的SOC。

倒也不是真的要花錢去開 IC,是你自己做了這麼久了,到底自己能不能開出系統規格呢?

否則,當別人給你甚麼東西,你就用甚麼東西,這永遠是被動者,搞久了也沒啥創新的動力

與感覺。搞創新研發,講求的就多變豐富的創造力。不要讓別人覺得:"有甚麼好抗議的?

比賽游泳或跑步,別人做甚麼,你當然也是做一樣的啊!"

對啊~但你會老,你會有家累與生活瑣碎的鳥事,或是真的沒多的體力跟年輕人拚熬夜了。

那怎麼辦?是啊~游泳跑步,人家做甚麼,你就跟人家做甚麼啊。但真的未必做得來啊?

這一點以我個人走過的經驗,這絕對是一個老資深工程師的感觸啊。

>>>>>>>>>>>>>>>>>>>>>>>>>>>
USB DIY 講座 (四) --- 認識USB IC
--------------------------------------------------------------------------------------------------------
         在真正DIY 之前,我首先還是不免俗套的介紹一下USB Controller IC 。

不過,我不要講的太細,以免大家都睡著了,我以我實務的經驗來分析您若要

USB DIY 該用怎樣的IC 呢? 套一句我們小平同志講過的一句話

不管是黑貓或白貓,會捉老鼠的就是好貓!』以作產品的觀點來說:也是成立的。

一棵成功的IC,他之所以成功 倒也不是他是偉大或功能強大,而可能只是他某一個

特質剛好符合大眾市場的需求,而別人呢?可能要作也沒機會,或甚至說經濟效益不佳,

不值得投入。對您我DIY 一族來說:這種經濟規模跟所謂開新IC的經濟規模來說,

簡直是小小巫見大大巫。所以,對我們來說,只能在既有解決方案中去尋找出適合

我們需求的控制IC。
----------------------------------------------------------------------------------------------------

        我還是先分析一下CYPRESS IC 的成功之處。就以他 2005 年八月所發表的

CY7C64713 來說:(注意喔~他還出USB 1.1 的東西,是用來取代CY7C64613 的),

以下是他所公布的初步資料:


EZ-USB FX1(TM) USB Microcontroller


有人可能比較喜歡看 Block Diagram:

----
我把他的優質的特點給標示出來,再予以說明。

<<>>    8051 :這就符合了大眾市場,我想大家都可以同意的。

<<>>    8051 runs from internal RAM:這大概是他最成功的一點。您說國內的IC設計公司

為什麼不去做?答案在我的前言中,因為是CYPRESS 作的是全球市場,積少成多,

而且,您的應用文件要寫得好,這就是台灣不行的地方(應該說老美厲害地方)。

這個優點就決定了他為什麼CPU可以跑在 48MHz 的原因了。因為一般EEPROM 的

Access Time 是跑不了這麼快的。但程式容量就是一大挑戰了,因為會對IC的成本增加

得很快,就像在DRAM市場中一樣。所以,光這一點國內的IC設計公司大概十家有九家半

不會去做的原因。再來是:一般對DIY 一族或作TOOLS的人來說,最需要的是程式

更新功能,您從ISP(In-System Programming) 的趨勢來看絕對是正確的。

(應該是工程師都沒把握,而且現在開IC成本一直增加),所以,我想用CYPRESS 

方案的人不會笨到說:還要外掛EEPROM吧。若要外掛EEPROM 的IC 滿街都是又便宜

(像數位相機的IC就是啊)。所以,光是這一點他就打死一缸子的競爭對手了。

結論是:您既然要作USB產品,當然一定是用在HOST PC上,所以,當您用在不同的

場合時,您再決定由PC的應用程式來下載哪一支Firmware 去跑應用。厲害吧。

<<>>    當然啊,他支援Keil C 高階語言,但我還懷疑,用內部的SRAM可以寫多大的應用 ?

 難怪要從原來的8K 升級到16 KBytes。

<<>>   至於外部的接腳或介面來說,就如同我前一篇文章所說,不要去耽誤到USB的速度

的原因吧。

<<>>    對於其他的特性來說,我想都比不上第二點吧。


好吧,再來講我的方案,當然以CYPRESS 來說,我也是要尋尋覓覓這樣的方案,最好是比他還便宜,而且更好用。看一下他的方塊圖:

這是什麼IC啊 ?!不重要,他到底是不是一隻好貓?

看一下他的內容:

<<>>    一樣是8051 : 而且還是跑48MHz 的RISC耶(2T)。

<<>>    一樣是程式在內部SRAM跑,也可以透過USB 下載更新。

<<>>    他還有16 KBytes 的Data Buffer 比CYPRESS 中程式+Data 的16 KBytes 還大。
<<>>    他有三組A/D 輸入。譁,作Tools 最適合了。可拿來量電壓等。

<<>>    一樣可以外掛Memory ,而且是跟內部分開的。

<<>>    由支援EPP/ECP/SPP介面。真的嗎?我還真有點質疑呢?!

<<>>    一樣支援外掛BOOT CODE來修改VID/PID 的功能。

<<>>    支援一組Control 及Bulk-In/Bulk-Out 功能。

<<>>    眼尖的朋友應該看得出來,他是一棵掃描器的SOC吧。管他的,好用就好。

我將以此顆IC來作一些應用,進一步說明如何USB DIY !

沒有留言:

張貼留言