目前工作是單片機開發和C#上位機,未來該朝哪個方向發展,如何轉型嵌入式上層應用開發?

電子信息專業畢業不到一年,一直接觸的是單片機底層開發,公司主要做無線集抄,多用STM32、瑞薩這類單片機。最近領導讓我學習C#做上位機與下位機通信的軟體,我以前只有C和一點彙編基礎,上層語言都沒接觸過,只好從頭開始,試了下發現倒還挺有意思,OOP的思想確實很奇妙。

目前貌似進入了一個迷茫期,漸漸對曾經熱衷的底層開發失去了興趣,雖然我也只是剛剛入門,而且我對無線方向和集抄行業實在提不起興趣,更感興趣的是嵌入式系統上的應用開發,尤其是音視頻多媒體的。

現在我不知道自己未來該如何發展,是投入學習C#以後轉WINDOWS或WINCE? 還是業餘時間自學linux和C++,以後轉linux的應用層開發?還是繼續堅守,學習各種無線射頻知識和行業規約,在這個行業幹下去?


現在工作是c#程序猿一枚,主要工作是搞API的。

===================================

大學畢業的畢業設計用了C#做上位機語言,感覺。。比c++簡單不少。不過我面向的晶元太簡單,zigbee你懂的。

不過上位機和下位機連接的路子是相同的,那就是-》串口或者USB(非說我的晶元是並口或者pci我也沒啥辦法╮(╯▽╰)╭)。使用C#獲取USB數據那是相當的簡單,只要控制好波特率直接接到數據寫進一個類/結構體里存上。。。之後——如意如意,隨你心意。

這些功能c,cpp一樣能實現。java有點略略無力(畢竟你想用JVM調用系統資源了,非託管資源都比較難搞)。

這裡我感覺c#也好c也好java也好就是個工具。上位機最大的特點就是方便控制,你想要讓晶元A工作但是你又不想按一下A就去找上位機;你想知道晶元B上返回的感測器數據是啥你不能拿電錶測電平瞬間變化又不想搞示波器你也需要上位機。上位機是和晶元交流的介面,感覺晶元還是功能實現的主要位置。

而且學C#,可以以後跳.net的工作啊!!!!OOP可以為你打開一扇門,一扇解決問題的門。

===================================

人有三種思維:

數學教你邏輯思維,

物理教你現象思維,

而編程,教你計算思維。


用C#解決了很多問題,開發過一些小工具,做過http://asp.net,寫過服務,資料庫CSUD等等,現在我想要學習單片機,怎麼入門?已入51單片機學習開發工具包...


推薦閱讀:

學習程序語言也會像學外語一樣會受到母語(第一語言)的影響嗎?
為什麼代碼注釋中有@符號?
JDK 1.8.0_92 Arrays.sort()方法不可用?
程序編碼都是外文的,什麼時候出中文啊,我有生之年能否看到!!!?
居然跟老師爭論如何畫UML類圖,我覺得我的沒錯,請大神進來評評理,我該怎麼辦?

TAG:程序員 | 編程 | C# | CC | 嵌入式開發 |