Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 29264|回復: 12
打印 上一主題 下一主題

大家都使用何種程式語言來開發嵌入式系統 ?

  [複製鏈接]
1#
發表於 2007-8-23 19:09:10 | 顯示全部樓層

古老的嵌入式系統

十多年前, 我跟學長去幫忙進行一個古老的嵌入式系統....+ p+ X  n5 e' [; H7 l: k+ k& j5 {+ P
在一片大約 3 張 A4 的普通面積的 IC 板上, 配置了六顆 MCU (8031, z80, 6502 三種系列),
  h! b3 b; M- U4 l連當時最高檔華邦 FM music chip 都有, 嵌入一堆處理器和記憶體及傳輸裝置, 目的是 ---
% u% R; l8 I* y( o5 B串連很多台小蜜蜂或是小鋼珠, 獲得並控制中獎機率, 幫老闆賺錢 !!
" I9 K* Y0 q: \3 x後來, 用 C 寫的程式太大, 漸漸精簡成組合語言的方式, 並減少 CPU 數量,) a5 ]% G6 @8 g5 X
最後還衍生出警民連線聯防系統... 不過此時我已經畢業去醫院實習了...
- h. o; n" X! q, W) B5 V, g: V經驗: 以前用 C 寫的程式很難除錯, 我還是慣用組合語言,
( |/ e' d; o: [" K     尤其在 debug 中, 居然發現,  C 的 compiler 常會有誤設目地資料大小的問題,$ N& o# q& n8 J4 ~/ C
    也就是你可能只想寫入 1 個 byte 的 00, 但 compiler 雞婆的給你送 16-bit 的 0000
/ R5 a, [) ?5 t8 X5 p9 B/ n    即使你已宣告是 BYTE 的大小, 很扯的是, 那時公司�兩位年輕的設計師,3 V0 b4 w7 _1 `( x! |- u% l
    連續兩週一直無法抓到此 bug, 壓力過大之餘, 只好走人...   D, l9 s8 }0 w& d
----
, \4 P# @% u8 z7 i% ^. n2 ]: x! S幾年前, 我用 GNU CPP 去設計 PS2 的程式, 居然發現全世界很知名的某個外國人,
6 v, ~; u& M1 \! g$ A) r他所 release 出來的 source code, 也好像故意在幾個地方偷改 size modifier,
, l# \% z% }" e% t, `# V2 ]+ u讓我們用他的部份程式碼來寫自己的計劃時, 會在某些特定的時機當死, 且很難除錯 !!7 o2 Q0 e- ?+ t7 o1 U9 Z
(相同的 C 程式碼就能在我的 PC 上用自己設計的 PS2 模擬器 Run 的好好的, 只是少了那幾個有 bug 的程式,
5 v# M+ J$ O; h* V: O0 I* g; Q於是才讓我去仔細把 MIPS R5900 的機器碼對照回 c source code, 才發現不對, 並證明此等釋出"有害"程式的不良行徑)
. ~, P- y, y# L- W# Z$ s; b這也是直到我的除錯功力大增之後, 才發現的... (抓這幾個錯也豁出了好幾週不眠不休的日子 !) - ]0 J2 g6 U. {# ^
所以, 不管是哪種嵌入式系統, 都可能有除錯不易的問題 !!
. t* c! `! i1 p& P0 l--> 在下不才, 提供給大家看看笑笑就好..

評分

參與人數 1Chipcoin +3 收起 理由
chip123 + 3 你的經驗就是知識的來源!

查看全部評分

回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-7 07:42 PM , Processed in 0.106006 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表