作者lihgong (當憲兵是我一輩子的恥辱)
看板Soft_Job
標題Re: [請益] 軟體人應學習的硬體知識?
時間Wed Jan 20 00:03:10 2010
※ 引述《james732 (好人超)》之銘言:
: 我目前是個學生,主要都專注在程式的撰寫上
: 譬如 C 語言的使用、函式庫的使用
: 也在 Linux 底下寫過簡單的 serial port driver
: 不過對於硬體的知識趨近於零...
: 我希望自己能夠稍微懂一點硬體相關的知識
: 這樣我要寫一些比較 low level 的東西應該比較容易
: 但是又不知道該往哪個方向,涉獵哪個領域
: (畢竟,硬體這兩個字實在太大太大了)
: 因此想要問問看,我可以往哪個方向去學習呢?
: 請當我是個連電路都不會接的大白癡 orz
我自己就是在這條路上努力,給你一點建議。
軟硬界面之間,我的起始點是8051,這是軟體和真實世界交互的開始。
就算只是讓某根 PIN去控制 LED的亮暗,背後都有他的學問
你有探究過 BJT 和 LED 的性質,為什麼是這樣點 LED 嗎?
一般的 8051 實驗版都有很多簡單的週邊,弄清楚所有細節,這是很好的起點。
拿到電路圖,拿scope 或是電錶去量看看信號,猜猜看每個零件的用途,或找人討論。
電子實驗,電子學可能會幫得上忙,如果想知道硬體知識,值得去修。
以你玩過的RS-232來講,找台示波器實際量一下信號,看看 start/stop bits
算一下 baud rate,感受一下這些信號真正的樣子。
然後看看RS-485,這是感受 differential signal 很威的好起點。
(現代的高速傳輸界面,多是 serial + diff-pair)
如果你願意試試看FPGA,這東西很有意思,你可以設計不同硬體功能。
這東西能讓你對硬體線路有感覺,猜出裡面可能怎麼設計,還有可能的限制。
你願意的話,可以寫一個RS-232 TX & RX,做完保證你對硬體線路有不同感覺。
如果上面這些東西多少都玩過,那寫起 low-level 的東西會更有感覺。
祝你學習順利。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.88.233
※ 編輯: lihgong 來自: 118.160.88.233 (01/20 00:07)
推 db:高手! 01/20 00:22
推 james732:感謝!! 還有好多好多東西要學習啊... 01/20 03:44
→ andymai:電子學可能會幫得上忙?這...真的有用到的話~與其囫圇吞棗 01/20 12:27
→ andymai:的亂猜~為什麼不要直接以科學的方法找出答案?明明是在做科 01/20 12:28
→ andymai:學的事啊... 01/20 12:28
推 alex0501:可以用ARM來玩 不過別忘了 軟硬體都要用到別只用你擅長的 01/20 20:58