人生除了謀生賺錢之外,您是否有感受到一點修行的感覺啊?!無論是『施』與『受』之間!
版主的另一個技術發表的網頁:
http://chamberplus.myweb.hinet.net/technicality.htm
其中所涵蓋的內容:MP3 晶片技術的基本概念,USB DIY 園地 (這個應該是最暢銷的議題)
及引擎控制系統解說以及 FPPA 多核心微控器系統應用的發源地
(雖然FPPA這一項已經移除了!)。
學無止境--- 無論是電子技術或是以外的領域---溫故知新,精益求精。 還有賈老師的作品,可以讓我這個充滿科技,較生硬的部落格有一點人文的氣息! (2024 年加註 : 技術講不完,但想知道技術人生以外還有很多工程師感性內容,來這裡就對了!) ---- 賈老師的真老公!
人生除了謀生賺錢之外,您是否有感受到一點修行的感覺啊?!無論是『施』與『受』之間!
版主的另一個技術發表的網頁:
http://chamberplus.myweb.hinet.net/technicality.htm
其中所涵蓋的內容:MP3 晶片技術的基本概念,USB DIY 園地 (這個應該是最暢銷的議題)
及引擎控制系統解說以及 FPPA 多核心微控器系統應用的發源地
(雖然FPPA這一項已經移除了!)。
請問板大USBFirmware疑問 -- TIGER99 (a081599@pchome.com.tw)
我看完USB DIY 還是有點不懂
DEVICE端:
1.housekeeping Firmware: 是怎樣的語言寫的 怎樣存 ?存在哪?
2.AN firmware:是8051的組語 *.HEX嗎? 怎樣存 ?存在哪?
煩請您 抽空回答一下
或者有哪位大大也可以回答我的 THX~!
1. 一般所謂 USB housekeeping Firmware 主要就是拿來控制USB基本流程的韌體,據我所知,有些公司或是有些特定用途的USB控制晶片會用硬體直接作掉,而無須寫韌體。但一般通俗型的USB Controller 倒是會保留這些供使用者自行調整的韌體。哪些韌體部分是屬於USB Housekeeping 呢?就是在程式終老是去填一些USB Control 專用的Registers部分的程式就是!!譬如:當我們韌體收到Setup Token 中斷時,我們就知道我們韌體的下一個步驟該是要收資料還是回資料,這些基本的USB Control 流程部分就是了:
像我的程式中的中斷向量位置:
USB_ISR:
REG_RD USBIntSt1A ;; read USB INT 1 flag
mov B,A
REG_RD USBIntEn1A
anl A,B
jb A.0, EP0_Tx_F ;;表示中斷是EndPoint0 傳送In Command 完成了
jb A.1, EP0_Rx_F ;;表示中斷是EndPoint0 接收Setup或Out Command 完成了
jb A.2, EP1_Tx_F ;;表示中斷是EndPoint1 傳送out bulk data 完成了
jb A.3, EP1_Rx_F ;;表示中斷是EndPoint1 接收in bulk data 完成了
jb A.4, EP2_Tx_F ;;表示中斷是EndPoint2 傳送out bulk data 完成了
jb A.5, EP2_Rx_F ;;表示中斷是EndPoint2 傳送in bulk data 完成了
...
或是Cypress 中的: ezusb.lib 所包的那一大串都算是吧!
而他往往跟我們所要寫的一般控制韌體是寫在一起的!主要的差別是:一般USB Housekeeping 韌體會把我們一般8051 的中斷Interrput0 給全佔用了!---- 因為USB Controller 的韌體的最高指導原則:就是不能因為您的一般8051 的控制韌體來影響到USB Housekeeping 基本運作的!所以,往往我們在寫一般應用程式時(譬如控制LED或步進馬達時),會時常被USB的 Housekeeping 程式中斷給叫回來!這是一件很討厭的事情。但這也是沒辦法的事滴~因為一般USB Device 都是屬於Slave 模式,所以就必須聽命於Host的-- 這又往往又是被PC端的上層的應用程式(像是BCB 或是一般Visual C++ 所控制的)!~所以,USB 的韌體程式不好寫啊!
瞭解嗎?!
......
一般USB Controller 的程式大部分是8051 base 的!為什麼?!因為當初南橋晶片廠就是Intel 先發表的,他就是利用8051為範例的,所以大家往後都以此為規臬!早期是用組語寫的!因為比較好說明USB的基本流程,但是後來大家都喜歡用高階的 C 語言了,但是大家反而比較難去理解USB這一部份的程式了!這是一定的,因為學習絕對沒有捷徑的--- 您想省略組語的痛苦,您就必須忍受USB的基本概念建立的困難度。
----
至於這些韌體存在哪?!就像一般8051 一樣,您可以外掛EPROM 或是像 Cypress 那樣:他內部有個類似cache 的SRAM 用來隨時更新程式碼的。但大部分那些如作USB 隨身碟的控制晶片廠都是開所謂MASK Code ,就是一次燒死在IC內部的---成本最低,但工程師們最累:因為要把所有可能碰到的問題一次盡量解決乾淨,所以就生活沒品質了--- 早早去上班,晚晚才能下班,又怕被測到韌體有錯-- 因為一層錯誤的MASK光罩,可能就會讓公司虧好幾百萬了!要不然就要降價求售,也就是為什麼USB 隨身碟或是讀卡機控制晶片的單價值直落的原因!!!
這是一位常來版主相關網頁的潛水讀者所提的問題:
版主的回答如下:---因為發現自己講得太好了,所以就分享給更多人!
----
至於新公司的問題,那鐵定比舊公司更難說,尤其是大公司!因為您是完全很難插上嘴的,那怕您一進入公司就是處長級的人物,而且還可以帶著一班自己班底的人。都未必能夠一時進入狀況的。大公司資源比較豐富,學習環境絕對比較好這是一定的(這要看個人的利用率!您如何善加利用大公司的資源來充實自己?這是完全會決定您在大公司的成長空間,就像版主就是在大公司內培養出大環境的人脈與市場機會,反而在大公司沒有學到比較多的技術。因為大公司分工比較細,對於新手來說,比較難發揮系統整合能力,尤其您還是技術新手來說)。
其實,版主學到一句蠻有用的一句話或許可以供您參考:愚者轉境;智者轉心!
個人覺得最重要的還是要培養個人獨力判斷能力及一定程度的組織能力,無論您是在大公司或是小公司。因為不管是大公司的主管或是小公司的老闆,他們肯定一定是比較喜歡不用花大多心思來教導您的人或是您能夠直接對他有所助益的人。--所以以個人走過的經驗:無論公司大小都有所值得學習的地方與空間,就看您用什麼角度來學習?!調整自己的心態,去發現自我並調整自己,或許對您來說:或許會有不同的際遇也說不定。---譬如說:這公司值得學的是專業技術本身,您就保握機會往專業技術學習。若這公司是在市場推廣或是組織作戰能力很強的公司,或許也是您值得學習的地方,然後您也發現:自己也有這方面的天分也說不定,或許從此您人生的際遇就不同了,因為未來的人生是需要更全面的您!!所以,許多事情倒不必太過於憂心與預測未來。所有最佳的武器就是武裝自我的心理建設,以相信自己與肯定自己來因應未來的挑戰是最好的對策! ---供您參考。
------
無論您的工作如何,希望您都能夠用自信與學習的態度來面對。唯有武裝充實自我,才是面對所有工作挑戰的最佳武器!
----版主不是開玩笑說:以前當學徒嗎?!因為師傅是自己老爸,所以沒得選擇,,只好硬的頭皮從小學跟著老爸學電弧銲,車床及所有西工技能(就是機械學的冷作啊)---師傅老爸常開玩笑說:什麼嘛都要學!您怎麼知道您哪天要碰到什麼事?我就吐他嘈的說:那當小偷要不要學?!所以啊~就從小養成凡事都是以學習的態度成長。也使得個人的人生閱歷從小就『多采多姿』啊!--還是非常感謝我的師傅老爸,雖然他已經不在了,而且為了學會電弧銲每一天晚上睡覺時,眼睛都痛得受不了。!
我們來談一下關於在一般USB I/O 常用的 Vendor command 觀念。
上回有很簡單的提到關於USB I/O 簡單一個執行範例:
--
http://chamberplus.myweb.hinet.net/usb_diy5.htm
--
但是還是有許多讀者朋友還是不是很清楚關於這一部份的觀念,就打電話過來提問題。
雖然版主目前的工作目標是在全球各地大力推行關於FPPA單晶片多核心微控器。
但基於提攜後生晚輩的功德完滿的慈悲心,還是都很樂意的一一回答。
----
為什麼這一部份會是很重要的觀念呢?!因為您只要弄清楚這一部份,您大概就不會想用一般所謂HID 的USB Device 來開發一個簡單的純USB I/O COntroller 的東西,而且這一部份就是USB 很基礎的東西,只要您搞懂之後,您大概USB的基本精髓就搞懂了,至少,我個人是這樣認為的。(但是,有時候,說起來很容易,但是要說到每位入門者都懂的話,真的要大家實際去演練一下!所謂:師傅引進門,修行在個人啊!)
好,我們就開始簡單的說明一下:
一般我們都希望透過USB介面來下命令來執行一些簡單的I/O 控制,譬如:點個LED燈啊 ;或是去控制一個步進馬達... 等等。其實,這一部份的答案就在版主的另一篇文章中:
--
http://chamberplus.myweb.hinet.net/usb_diy2.htm
--
但是可能許多人還是一時沒有悟到箇中的精髓,那版主就在此簡單的整理一下以上這兩篇文章的意義。
首先我們來看以下這兩張圖,並結合USB Controller 韌體來說明:
--
一般在控制系統中,往往我們下完命令後,就想知道我們的控制系統有沒有收到我們的命令就是一個簡單的命令的通訊協定。只要控制系統可以準確的接到我們的命令,他當然就可以準確的執行我們要求的指令了!但是,在USB 中我們該如何完成這個動作呢?!
以USB 的Control pipe 來說:是不能只用一組 Setup- token 來完成的。這是您所必須首先瞭解的。
我們PC端(主控機)該如何下命令呢?因為這一部份是屬於我們自製命令範圍,所以在USB 的規格中就幫我們預留了一個所謂Vendor Command 介面:在Chapter 9 中的那個 Table 9-2 Format of Setup Data (記住:當初版主學USB時,也是一手規格書,一手寫程式的!) --- Offset 0 他定義了什麼?就是 bmRequestType !!
Bit7 : 是定義一般命令的方向:是由PC 下給USB Device 的呢?還是USB Device 要回給 PC 的!?
Bit6..5 :就是說明上述所謂:是一般標準Command (一般來說就比較屬於Emuneration 用的)!或是Class Command 用的?(就是我們所謂 MSDC 或HID 的特殊命令,這一部份,您就要另外看相關Class 規格書!),剩下的就是我們所謂的Vendor Command !! 所以,由此我們就知道:一般來說:Setup token 的第一個Byte 中我們的命令是不是Vendor Command 了:
若是 0x40 的話:就是PC要下給 USB Device 的 Vendor Command ; 0xc0 就是PC要求 USB Device 要回給 PC 的命令!(注意喔:還是PC 要求USB Device 的喔~因為USB的觀念還是主從觀念,PC 沒有要求USB Device 回命令,USB Device 還是不能主動回的喔!!)
所以一個簡單的程式流程:
PC 端的程式:
int i;
for(i=0;i<8;i++) STICommandString[i]=0x00;
STICommandString[0]=0x82; // SET USB Controller P1
STICommandString[1]=(UCHAR)(USB_P1&0x00FF); // SET USB Controller P1
USB_DEVICE_SEND_STI_COMMAND(STICommandString);
就是要下一個Vendor Command !
我們在 USB 的分析儀上就可以清楚的可以看到我們所下的命令:注意喔:我們在Setup Token 看到的是: 0x40 0x01 0x12 0x20 0x40 0x3F 0x40 0x00 !! 第一個所謂的 0x40 就是要告訴USB 驅動程式,我們這一個USB Command 是Vendor Command !
所以,在相對的韌體中就可以找到所謂:
SetupToken:
REG_RD bmRequestType ;;讀取bmRequestType Register
mov B, A ;;避免破壞原有的值,先存放在 B Register中
anl A, #00011111b ;;為了以後要用,先把Bit0~4存到bmReqTypeCopy中
mov bmReqTypeRec, A
mov A, B
anl A, #01100000b ;;因為只先判斷Bit5和6,所以把其它的Bit清掉
DoRequestStandar:
cjne A, #00h, DoRequestClass;;比較是不是Standard Command
ljmp RequestStandard ;; 00 01 02 80 81 82
DoRequestClass:
cjne A, #20h, DoRequestVendor ;;比較是不是Vendor Command
ljmp RequestClass
DoRequestVendor:
cjne A, #40h, DoRequestReserved ;;如果不是上述兩種就表是有錯誤!!!
ljmp RequestVendor
DoRequestReserved:
ljmp RequestReserved ;; Other
-----
對不起,我們是老人家,還會用所謂組合語言,我們是比較落伍了。(但是我們學 C 語言 會很快呢!也會C 語言! 所以,我們活得比您快樂,還有競爭優勢:
void CTLSETUP_Packet(void) USING_1
/*++
Routine Description:
process setup packet of control pipe
Arguments:
none
Return Value:
none
--*/
{
UCHAR type;
if (G_ucCtrlPhase != K_CommandPhase)
{
//phase transition error - setup packet should not appear
// at current phase
//Since hardware will reset the control pipe whenever
//setup packet arrives, we just force the phase to command phase.
G_ucCtrlPhase = K_CommandPhase;
}
CTLSETUP_GetSetupPacket(); //read setup packet
G_usCtrlDataLength = G_pCtrlCommand->wLength;
G_usCtrlDataIndex = 0x0000;
//check Type of bmRequestType
type = G_pCtrlCommand->bmRequestType & 0x60;
if (type == 0x00)
{
CTLSETUP_StandardRequest(); //Standard Request
}
else if (type == 0x20)
{
CTLSETUP_ClassRequest(); //Class Request
}
else if (type == 0x40)
{
CTLSETUP_VendorRequest(); //Vendor Request
}
else //if (type == 0x60)
{
CTLSETUP_ReservedRequest(); //Reserved Request
}
}
怎樣?!版主不唬您吧!版主也寫過的哩~但在這一次用C 語言作USB 的東西,沒有第一次用組合語言寫 USB 程式快樂!
-------------------------------------------------------------------------------------------------
然後我們的韌體就可以解 PC 端下給我們的命令內容了~就是上圖中那一大串的 64 Bytes 的內容,夠長了吧!看來還不只可以傳命令,還可以傳資料呢!!您覺得光是Setup Token 就可以讓我們用 USB 作多少DIY 的東西啊?!
;;-----------------------------------------------------------------------------
ScanSTIOutData:
REG_RD USBDsrr0
mov Command, A
mov R0, A
lcall STITxDataClear
lcall USBSTIAPI
call SetUSBSTITxData ;;; Assign Status(Zero or Non-Zero) to Echo Cmd
call SetUSBSTITxData2
ret
;;==============================================================================
....
...
我們就可以解PC端的命令的!
USBSTIAPI:
MessageCmdInAPI:
mov A, Command
;------------------------------------------------------------------------------
USB3Cmd41: ;;Cancel_cmd
cjne A,#41h,USB3Cmd25
ret
;------------------------------------------------------------------------------
USB3Cmd25: ;; Test Command
cjne A,#25h,USB3Cmd35
....
簡單吧!
-----
不過,這裡還有一個很重要的學問:您看到我上述解USB Vendor Command 時,還Call 其他副程式:
call SetUSBSTITxData ;;; Assign Status(Zero or Non-Zero) to Echo Cmd
call SetUSBSTITxData2
就是還要負責 回 USB Protocol 的東西,就是我在USB 簡介中所提到的 USB House-keeping 的管理程式。往往一般人會被兩者給搞亂的。其實,這些USB House-Keeping 成是就是拿來管USB 什麼時候開關USB Setup - Out- In 的那個 通訊協定。記住:USB的Protocol 都是很快的~我們是透韌體還控管的。其實,在一般USB Controller 中(像 Cypress這一種),就是去填一大堆的 USB Registers的!
-----------------------------------------------------------------------------------------------
所以,當我們收完PC 端的命令後,往往PC還會下個確認命令,要我們USB Device Echo 我們所收到的命令,所以就會有另一組Setup Token : 0xc0 0x01 0x13 0x20 0x00 0x3F 0x40 0x00 !
這個0xc0 就是PC 端要跟USB Device 要一組 命令資料。(不過,這裡版主比較偷懶,所以用 8 bytes 回的 圖中為0x02 0x80 0x00 0x00 0x00 0x00 0x00 0x00 ~照一般的習慣是:64 Bytes 下,就用 64 Bytes 收會比較習慣一點!)
------------------------
所以,這個一來依往的命令就可讓我們的韌體聽從PC 下過來的命令,來執行PC 端所要求的指令了!
夠簡單吧 !
--------
其實,這其中還要交代一個很重要的觀念:您可別以為這樣子,您PC 端就可以拼命的下命令,或是傳資料喔!因為在USB 的命令傳輸是很快的,而往往我們韌體在執行一些命令時(如:控制步進馬達等這種快不得的指令時!)是需要一點時間的,您如果拼命下命令,您的USB Controller 就必須常常被叫去解USB Command ,結果,哈~哈~ 不是馬達轉起來怪怪的,就是USB 介面不小心就給當掉了!...您的PC端 應用程式還死的不明不白呢!!....您總覺得為何USB 怎麼這麼奇怪?!那這一部份,說真的,版主因為不知道您真正的應用為何?所以,我也沒辦法幫上您什麼忙呢!!這不是版主不負責,真的,我也不知道! 就像版主現在在推多核心的微控器時,我也不知道客戶拿這麼一顆微控器要作什麼啊?!或許,您可以告訴我,我們可以研究研究一下。----所以您會有一種感覺說:怎麼版主您怎會懂這麼多東西?!因為我們不會藏私什麼?我們是以更寬廣的心,去迎接更寬廣的視野。我們所得到的資訊就越廣!您一直抓著您手上的東西,您怎麼可以還可以抓別的東西呢?!您不幫助別人解決問題,人家怎麼會跟您說他的想法呢?!為什麼我們會相信神明呢?!因為祂們一直在聆聽大家的說法,也看多人們的作法,所以,祂們是用更寬厚的慈悲心來看待我們!而我們自私的人們呢?!由衷的期望我們會有一個處處無私的社會自然就會有競爭力的國家!共勉之!
---
一堆老外到中國觀光要看什麼?!就是在號稱古剎前面來個中國功夫:作作樣子也可以。
不好玩,大家還散了吧!
在中國內地都是無奇不有的:在無錫我們常看到車子的顏色是:灰色的!
反正大家都習以為常了,只要把重點擦一下,讓大家看得到這班車是哪裡到哪裡的就可以了!
大家要不要再猜一下:為何他後面的車廂是掀起來的?! 答案是:裡面擺的是:我們公交車師傅的腳踏車!
車子總是灰色的,您會不會覺得去大陸賣洗車精會有生意嗎?!
-----------------------------------------------------------------------------------------
隔天要搭車回上海:去無錫車站搭車:又是另一奇景:
一般我們都是在車站的指定門口(Gate)等車子過來,而依序上車的。但在無錫這(我想在大陸許多地方都是如此!)不好意思,檢票員剪完票就跟您說:車號幾號,然後您就自個去整個停車場找自己要坐的那班車。為什麼?!以下四張照片分別是從我坐的車內往外拍的(左右前後)!我都有點懷疑,我們的車子怎麼開得出去呢?!
左邊是我們的檢票口,已經淹沒在車陣中了!
至於,右邊要放行李的地方,不好意思,因為開不了車廂門,所以麻煩自己想辦法。
前方則是等我們的車子開動後才流出來的空間。
至於,車子的後方就是一部緊接著一部。千萬別搭錯車喔。
---
其實,我們許多台商出差大陸,人家都會有專車接送或是搭高級一點的車,很少會這麼在地化的。自從上回在上一家公司有一次業務也是帶我去上海火車站搭車去昆山時,跟我說:Chamber~我們來體會一下Localize 的生活~哈~哈~果然不同凡嚮。當您進入上海火車站搭車時,對於這種情景就見怪不怪了。
----- 有時倒覺得許多人都說要去大陸,機會有多好又多好,我覺得應該多鼓勵大家去大陸,因為在台灣有時也會覺得太擁擠了~人太多了,或許,台灣人少一點還比較清新一點,至少上高速公路開車,反而變成一種另類的清爽享受。
-------------------------------------------------------------------------------------------------------------------
回到上海時,熱情的大陸同胞(其實就是一般生意的朋友)很熱情的幫我們訂了老錦江飯店!嘩~我理咧!在茂名南路上,兩人房打完折還要RMB850 元 !! ---
房間也沒比較大,但倒有那股民初上海那股風華,不過,還是老話一句:有五星級的硬體,卻未必有五星級的享受與服務品質。
這種老外喜歡住的飯店有個好處就是:電視節目比較好看一點,HBO、CNN 或是NHK 比較開放一點。運氣還不錯的是:當晚NHK剛好有作一個關於機械人專題的節目。嘻~嘻~剛好這次有個翻譯可以在身邊幫我做節目內容直譯!還蠻不錯的,增廣見聞一下-- 謝謝我們業務: Mr. Hira 桑。
(講個八卦笑話,我問我們的 Mr.Hira 桑,當初退伍後,一句日文都不會,怎麼在日本學日文的呢?!他跟我說:就是打工兼差翻譯日本的色情影片,日文就會突飛猛進了!-- 靠,比我還唬爛!)
----
不過,實在是創業維艱,所以,我們還是婉拒的客戶的熱情,隔天就Check out了~改住到一般的平價的飯店。人家客戶還很訝異的說:咦!您們台灣人出差不都喜歡住這種飯店,而且還要一人一間!我們問他是哪家台灣公司啊~這麼闊氣啊。聽完後,喔~原來是園區的某高科技公司喔!難怪這家公司快掛了~出門裝闊氣,亂花投資人的錢,不把公司的錢當自己的錢花,這種花錢如流水的公司要小心喔。
而我們兩個台灣來傻B ~改飯店就算了~跑客戶還是搭上海地鐵呢。讓我們這位上海客戶直呼太意外了~不過,人家也持正面的態度,直呼這樣的公司,才是務實與真誠的公司。當然,您會說:出門搭計程車是比較有效率。錯~上海這種地方,搭車還是很容易塞車的。尤其是下雨天:
不好意思,人贓俱獲,買光碟!唉~
----這趟上海之行,很不幸的幾天來都遇上下雨天。當然也沒有閒情逸致的閒逛。就匆匆忙忙的準備行囊回台了。
----------------------------------------------------------------------
後記:這次除了跑了熟悉的深圳外,這個地方已經不值一提了。去了比較內地一點的無錫與大陸標榜對外大門的樣版城市--上海!(喔~我去上海也不是一次兩次而已!)
無論在哪,我想能否與全球資訊接軌才是重點,也不是繁華的硬體建設,重要的還是那個軟體的文化。大陸一直標榜改革開放,但是還是有許多小地方還是無法作到全面的開放,這是他們本質上的宿命,這也是讓我們這些從小接觸比較多西方文化或是說海洋文化的台灣人有著更開放的視野。我想這應該是我們保有一定程度的領先局面。因為我們看事情的態度與視野是的確比較全面的。
我個人是比較憂心的是:許多台灣人都號稱企業第二代,去大陸承接家族事業,結果不懂得時局的變化,也沒有比較寬廣的視野,只是一味地的維持家族企業。結果,就是慢慢的淹沒在大環境的洪流。像這樣的家族企業的承接不知是喜?!還是憂?!或許,有些產業真的已經不是適應現今的世界潮流,或許,幫下一代結束企業-- 轉換資金與投資觀念,讓他們重新出發,或許會有另一番事業也說不定。
另外,就是我們位於太平洋邊緣,本身就比較兼具多那麼一點海洋文化,所以我們在吸收新知與冒險犯難的精神會多一點。我們就應該好好利用這一點優勢,讓我們更具多一點競爭能力。尤其是我們這些工程師出身的------ 就像我的小孩子,相對於大陸內地的小孩們--- 我的小孩,我讓他多接觸書局,圖書館,翻翻當期雜誌,他會不斷的受到新知的刺激,他會去閱讀與思考。我們沒辦法跟他說:未來的世界是如何?但他們慢慢的會獨立思考與判斷能力。我們這一代的宿命就由我們自己承當,但小孩的未來是不可限量的。
這也是版主一直在呼籲的~當您在大公司,死領薪水或坐領股票時,您幫您小孩安排了什麼樣的視野呢?!就像您身處大陸內地一般,您只是把自己鎖在一個自我的封閉環境,朝九晚五~您也自認會給小孩很好的教育,但是,您小孩的視野會在哪?!您要不要每天跟小孩說:USB 或是高科技的東西?!他們那個時代還有什麼東西?您幫他準備了什麼呢?!
我不會擔心來自大陸的競爭會加注在我小孩身上的壓力,因為我們幫準備好了一顆不同視野的心。而您覺得呢?!
這是出差的第一站:香港玩具展!
喔~照片裡的帥哥,不是版主本人。我們的業務:Mr. Hira 桑 ! .. 孔您擠哇!
去香港就不得不去跑一下廣華街:
其實他就在洗衣街附近,就是中國旅行社附近,我們是去補扮台胞證的啦!
去廣華街看什麼?當然是大人的玩具:
----
其實跟業務出門是很辛苦的。因為下一餐會在哪都不知道:我終於知道,為什麼我們的業務先生怎麼會這麼會吃:
他還說:下回再帶我去日本,但他說:日本的槍店就沒有像香港的這麼開放。不過,玩具的種類就比較多了。.... 業務說:萬一生意都沒做成,我們兩就去秋葉原擺地攤賣電路版~哈~哈~
就在深圳跑了幾天就轉往華東地區 !
也剛好適逢假日,所以就順便去無錫找個老朋友:
這張照片是要告訴各位:若從虹橋機場到無錫需要兩小時的車程,票價七十元。不過,我們是在浦東上車的!
到了無錫已經晚上八點多了~幸好無錫有一大堆韓國人,所以有一大堆韓國菜食館可以吃飯。
這是我們在無錫的飯店:一晚只有158 RMB 還好,2007 年元旦才開幕的。
白天再拍一次!
----
大家要不要猜一下:去無錫能幹嘛?!就是遊太湖:不過,因為太湖橫跨三個省分,在無錫這邊只有黿頭堵可以看而已。
大家都覺得大陸消費便宜,所以可以到處走走看看的,答案是錯的!大家看到沒:門票是 105 RMB !
大家要不要猜一下原因?!據朋友表示:因為這種重點旅遊景點不提高票價的話,鐵定一定一大堆大陸人擠進來,屆時大家都不用看什麼了~這點我可以作證,上回去杭州西湖走蘇提。因為蘇堤是一個開放空間,結果,走蘇提時,因為人多而完全體會不到古人那股人文風雅的感覺。唉~
反正,大陸這些標榜古剎或是道觀~總是讓我這個來自台灣鄉下人來說:總是覺得缺少那一份:肅穆,隆重的感覺!
或許,這些工匠們,先修心的十年,再來著手畫樑雕棟會比較好的!~有些東西可不能速成的!
前天晚上剛從香港趕回來。結果韓國人比我們還早到台灣,還真讓我見識到韓國人作技術開發窮追不捨的精神。
或許,現在台灣的企業或是每個公司股票太好賺了,這些作技術的工程師們變得就比較遲鈍一點嗎?其實,這次出差也去了上海,看到上海三十幾歲的年輕小伙子,看到我們所做的FPPA(多核心微控器)就很積極的華東,華北跑市場,一副生怕機會流失似的,也讓我看到早期台灣企業那種一隻皮箱海外打天下的精神。
而我們呢?我們地處海洋,比來就應該比較受外來文化刺激而生生不息,而現在在我們台灣的年輕工程師們呢?卻都像大陸內地的老百姓一樣,安於現狀,不懂得敞開心胸,迎接挑戰。還真的有愧於先民跨海開疆闢土的精神。實為感慨。
等這一兩天有空把這次出差的心得再寫下來。
最後,呼籲一下:不知對於玩機器人同好們,不知有沒有興趣集體採購一下類似KONDO 人形機器人?!我這次去香港有趣接觸到: 香港BDS 公司。他們對於FPPA非常有興趣,他們也很願意提供優惠價給我們,所以,有興趣者可以跟我聯絡,仿KONDO ,所有的伺服機都是Futaba 3000 系列。他們願意給折扣價:約7000港幣。我想多收集一些同好的採購數量,跟他們殺價。有興趣者跟我聯絡吧!
http://www.bds-tech.com/authRobots.php
謝謝!
昨天韓國人三個人浩浩蕩蕩的從韓國跑過來看作品:
http://www.youtube.com/watch?v=Nx6meWamnIE
其實,他們原本是希望我能夠提供以下的解決方案:
http://chamberplus.myweb.hinet.net/fppa_sa7.htm
但是,因為S公司不太想理我們這種客戶,他們是只想作USB Disk + MP3 ,雖然這個產品已經血流成河了,而且S公司也稱不上主流供應商。但是他們還是想進一步殺入戰場。唉~版主,當初就是不願意身陷泥沼作困獸之鬥,所以才毅然退出。--當然也是毅然退出,才使得兩三年後才有機會在看另一個市場,人家韓國人才會自掏腰包跑來。
結果,韓國人也把他們的MP3 方案帶來,他們是用SamSung 的MP3方案 ,我是很好奇的問他們說:Samsung 也有Release Source Code 供他們修改嗎?他們說有!還問我有沒有興趣他們的Source Code ?!我只是苦笑的說:哈~哈~我做過一次的就怕了~不用了,謝謝!
Samsung 的 MP3 方案是用一顆 16bit RISC +24 bits DSP 作出來的。好像大家都是如此,比較好奇的是:其實,samsung 也是ARM 的合法授權公司,但他們還是不用ARM的!畢竟主流殺戮戰場的產品線,可不是這種動不動就要收權利金的ARM可以玩的。
其實,現在人家玩MP3 已經避開主流殺戮戰場的市場了,而是作特殊應用市場了--機械人搭配MP3 方案。而我們老中呢?包括台灣許多廠商還在為了那一顆約一元美元的MP3 IC在大陸那個市場玩著您爭我奪的低階市場。--- 哪有時間去研究人家已經轉向作別的應用呢?!當發現時,又要回頭再作一次同樣的殺戮戰場的生意。唉~泛中國的工程師們,您們什麼時候才會覺醒呢?!
多子媽媽真偉大?
【賈美娟(新竹讀者)】
王太太在我們社區中,被公認最忙碌的母親。她同時有高中、國中、國小和剛滿一歲的四個孩子。由於先生是高薪族,所以她可以無後顧之憂,做一個全職媽媽。
環顧少子化的今天,生養四個孩子的家庭並不多見,更何況還屬於不同的年齡層,外人想來,總覺得既棘手又佩服。不免好奇,她有何育兒良方?
「這倒簡單,除了一歲的小兒子還需要大人照顧,其他三個孩子,我自小就訓練他們幫忙做家事,替我分擔責任。我的工作,大概只有定時煮三餐和簽聯絡簿罷了!」聽者莫不睜大眼睛,好想知道孩子自動自發的祕訣。
「一旦孩子拖延或偷懶,我就力行不給吃飯、不給零用錢、不准上床睡覺的策略,幾次懲罰後,孩子們唯命是從,我也樂得輕鬆。只要不學壞,成績好壞,我是不太勉強啦!」
王太太一番「金玉良言」,我實在無法完全認同。訓練孩子分擔家務,養成自動自發的習慣,的確有必要。但如此心態和策略,實在值得商榷!畢竟不同個體,想法和性情也大不相同。多花心思在親子交流上,似乎更重要。
看著王太太白天將稚子託給娘家照顧,逕自參與各項義工活動而忙得不亦樂乎,我想問:是不是「暫時」將對別人的愛,挪多一些在自家孩子身上,比較妥當?
【2005/11/24 聯合報】
教育真的是十年樹木,百年樹人!許多教育的問題決都不是短時間或是一代之間就可以看出成效的!還是由衷的希望大家能夠把眼光放遠一點。 --- Chamber
年輕熱情的老師 被告了一狀
賈美娟/國中教師(新竹市)
小如是我的表妹,也是個年輕未婚的國中老師。
因為無家累,又熱愛教育工作,所以,小如幾乎用盡全部的精力在這群狂飆期的少年男女身上。
她本身是數學老師,除了教好自己的專業科目,更常常雞婆的犧牲午休時間,緊釘班上孩子的其他科目。常常在放學後,特別留下需要個別加強課業的孩子義務指導。每逢長假,更可見她精力充沛,帶著班上孩子到戶外郊遊、烤肉。而私下苦勸行為偏差、冥頑不靈學生,向家長報告孩子在校狀況,更是家常便飯。
如此無怨無悔的付出,常見小如偷得空閒便護嗓、紓解壓力。連資深的同事,都不得不豎起大拇指讚嘆小如對教育的高度熱忱。
沒想到,因一名叛逆學生,以老師放學後留下來義務指導功課為藉口,流連網咖、與不良少年起糾紛而打群架。憤怒的家長,一紙告狀函越過導師直接寄交校長,甚至準備向教育局投訴:小如「天天午餐後複習小考,剝奪發育階段孩子的午睡權;疾言厲色數落違規孩子,甚至偶用體罰,傷害孩子自尊,常常放學後留第八節,致使孩子藉故晚歸,在外遊蕩;舉辦數次的戶外教學,令孩子玩心大增……」
小如知悉後的悲憤之情可想而知,她是不求回報的付出呀!哎!整個教育環境變了,教師和家長的互動逐漸變質,這或許就是近年來教師們紛紛辦理提早退休的原因之一吧!
【2003/08/09 聯合報】
|
【旅遊筆記】振興觀光 商家多用心
◎文/賈美娟(新竹市)
周休二日,全家同遊南投,算是為九二一之後的災區,略盡棉薄之力。走累了,挑了一家門面看來不錯的餐廳享用午餐。不大的店內,已有客人在大快朵頤。我們在等候上菜的空檔,習慣欣賞餐廳內部的裝潢。
冷不防,瞥見老闆娘從布簾後的廁所出來,用力擤了鼻涕,將就抹在圍裙上,逕自到前頭下麵去了。更可怕的是,廁所門邊的地上,擺了一個大鋁盆,油膩的碗盤堆積如山,不知從哪兒冒出一隻野貓,正貪婪地看著盤中黏附的菜屑,蠢蠢欲動。我當場倒胃口,一刻也不想停留。
南投的觀光業極欲振興風光,當地的商家,勢必得多用心,才能留住更多客源呀!
原來Hinet 的網頁已經無法容下新的文章,所以就移至此處,再繼續大家所關心的技術話題,
也希望舊雨新知,能夠繼續支持與鼓勵!謝謝!
PS: 原來的Hinet 網頁: http://chamberplus.myweb.hinet.net/