新!「文章導讀」頁上線!有系統、完整瀏覽本站文章!

2012年12月30日

新書入袋:Raspberry Pi Assembly Language Beginners

Raspberry Pi Assembly Language Beginners (Hands On Guide)
圖:Raspberry Pi Assembly Language:Beginners Hands On Guide
(圖片來源:Amazon)

居然…居然有人出這種書!我教「嵌入式程式設計」四年多,想求一本可以在課堂上實作、教授的 ARM 組合語言書而不可得,現在居然有人出這麼實用的一本書!簡直叫我照抄變成投影片,然後在補習班教,賺孩子的奶粉錢嘛…(瘋狂興奮中)!二話不說!單擊「Buy now with 1-Click」,買了!20 秒後,那本書已經靜靜地躺在我的 Kindle 裡…(再次瘋狂流鼻血)!

在我教「嵌入式系統」課程時,「Bootloader」這一段的移植是最耗費我心力的。因為要教會軟體人懂得所有的硬體知識、開機流程、以及 ARM 的組合語言(Assembly)。其中,「硬體知識」與「開機流程」用投影片圖示 + 口說大概都還交代得過去。組合語言我就很頭痛了。第一,參考書很少。同學們都很希望能有一本 ARM 組合語言的參考書,但我就是找不到!第二,很難有實作。教電腦語言要有信服力,就是每教一個概念,就提供一個印證用的實作。但我現在用的開發板(Samsung S3C6410),並沒有提供組合語言的寫作環境。我很難「生」出一個可供實作的環境,讓學員們練習。

而這本書,用了「RISC OS」作業系統與模擬器,可以在 Windows、Mac OS 下模擬出 ARM 的硬體,直接寫好組合語言後,就直接在 RISC OS 的環境下執行。這對講師而言,不啻提供了一個標準環境。有標準環境,才有可能發展出標準的教程。更棒的是,這本書提供了不少範例,省了我想範例的時間。

目前才剛開始看,如果有任何新進展,會跟大家報告的!也歡迎同好一起研究!敬請期待喔!

3 則留言:

  1. 老師請問,有沒有用C語言經由樹莓派控制硬體的工具阿,能否搭配自行開發的應用程式呢,例如:我在程式按下一個Butten,LED燈就亮起;亦或是,用程式控制針腳輸出與接收RS-232訊號之類的呢?

    回覆刪除
    回覆
    1. 有的,那個函式庫叫做「WiringPi」。只要使用 WiringPi,搭配正確的程式邏輯,就可以做到你說的那些事。

      刪除
  2. 很早以前, qemu其實就可以用來模擬ARM的環境了

    回覆刪除