PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
[討論] 關於程式可攜性的問題
作者:
MaxHaru
(懂得放手..才是王道)
2015-03-28 12:14:36
請教一下版上的前輩,
我目前在寫韌體函式庫, 最常遇到的就程式碼可攜性的問題.
常常Hardware一代與一代產品之間的差別可能不大,
可一但換了新的產品時, 都會需要去修改source code,
這會造成客戶對於程式正確性的懷疑,
甚至連客戶在reference function的時候都需要跟著一起連動.
不知道對於可攜性為導向的程式設計,
大家都用什麼方法來maintain自己的code的呢?
作者:
MOONRAKER
(㊣牛鶴鰻毛人)
2015-03-28 15:04:00
你寫韌體差半層就是硬體了,在這麼底層還有可攜性的存在嗎…我每天下課穿過學校後面的菜園就可以回家,現在菜園主人拉了一層鐵絲網,那你還要堅持穿過菜園嗎…
作者:
wuliou
(wuliou)
2015-03-28 16:45:00
韌體本來就可攜性低 這沒辦法解的除非你硬抽一層出來 但是這樣會變慢
作者:
MOONRAKER
(㊣牛鶴鰻毛人)
2015-03-28 17:28:00
頂多設法把他包裝到舊的程式不需要修改…吧韌體一定要改 但是客戶那邊程式改越少越好 是這樣嗎?
作者:
Killercat
(殺人貓™)
2015-03-28 17:28:00
通常用HAL當分界線,HAL以下就別想了....
作者:
damody
(天亮damody)
2015-03-28 22:20:00
#ifdef USE_ARM_CORTEX_M3用大量的巨集啊 原廠都這樣用 你不會學喔有人會寫code自動產生器看需求吧 有些要速度 有些要硬體低成本
作者:
james732
(好人超)
2015-03-29 01:30:00
或許可以看看Chromium OS的EC?
作者:
sunneo
(艾斯寇德)
2015-03-29 11:36:00
不然只好把llvm ir/codegen帶到韌體層
作者:
MaxHaru
(懂得放手..才是王道)
2015-03-30 00:29:00
謝謝客位的討論,韌體要有它的限制這我也知道,但還是希望可以減少客戶修改的幅度,目前的做法頂多就是用#define去多包一層,不過有些case仍然需要動到客戶的code,所以才來這問問大家的經驗Chromium OS的EC code網上找的到嗎?有聽過它寫方式可攜性不錯
作者:
sunneo
(艾斯寇德)
2015-03-30 02:51:00
http://ppt.cc/2ciO
這邊看看
作者:
james732
(好人超)
2015-03-30 02:53:00
http://www.chromium.org/chromium-os/ec-development
作者:
MaxHaru
(懂得放手..才是王道)
2015-03-30 17:10:00
十分感謝
繼續閱讀
[問題] 單晶片UART當掉
Haha10101
[問題] 要怎麼觀察單步執行的時間呢?
LeeGarDer
[問題] class method 回傳使用自定義型別
diabloevagto
[問題] 連續讀檔(fopen)無法fclose
jiqian
[問題] 打程式的速度
Bruce003
[問題] 如何利用C程式從網頁複製文字或表格?
Bruce003
[問題] 結構包二維結構資料傳遞方式
akiramaru
[問題] 新手練習for-loop
healthlin
[問題] 結構包結構的資料傳遞方式
akiramaru
[問題] 請問RS232如何判斷有無連線?
wu110011
Links
booklink
Contact Us: admin [ a t ] ucptt.com