Soft_Job 板


LINE

我刚好也是搞 Embedded Systems 的, 8 bit MCU ,不过我比较好运, 现在只要搞消费级的就行了,不像 kerickuo 要搞医疗级的 ^___^ 手边有款产品,只有 8K 的 SRAM ,却要在其中塞进所有的 code 及 data 变数,虽然有外挂一颗 SPI 介面的 NOR flash,但很明显的,不能直接在 它上面跑程式。 首先,我写程式不但会设法避免用 else ,连 if 我都用得不大情愿。 那要如何确保程式正确? 我觉得最重要的当然是作完善的思考及逻辑分析,当然,就如 luciferii 所说的,人都会难免有恍神的时候,要避免恍神时犯的错,我采用以下几 个方法: 1. 即使程式简单到睡梦中都能写出来,写的时候也尽量不要睡觉 :) 2. 尽量简化逻辑,少用 if 及特例 3. 对重要的部份作完善的单元测试 4. 复杂的数值运算先用 compiler 厂提供的 simulator 验证过 5. 重要的逻辑区块先在 PC 上用其他 C compiler 验证过 6. 尽量不用 global 变数 7. 以 assert 防呆 8. 了解 compiler 的记忆体配置方式,适时检查 map 档 9. 其他防呆技巧... 最後,我很好奇 kerickuo 的开发平台是什麽? 怎麽有提供 stack overflow 的检查机制? 如果有这个机制可用,我也会把它用在可疑的地方,用来 debug ※ 引述《kerickuo (红框独居帅老人传说)》之铭言: : : 例如在下搞一个很冷门的 Embedded System (为了省空间几乎只有基本的简单kernel.. ), : 而搞 Embedded System ,其实常常发生 overflow 的问题, : 毕竟常常有东西是 8 bits 或 16 bits 的, : 於是我就渐渐养成一定会去检查溢位的习惯。 : 常常被溢位搞到於是自然很重视这个检查, : 要不然以前觉得只是个加减还加什麽溢位检查,根本是嗤之以鼻^-(oo)-^。 : 推 luciferii:不管是注解、debug message、else和所有垃圾除错码 12/28 12:11 : → luciferii:出发重点就是在於不要相信「人」的能力 12/28 12:12 : → luciferii:不一定会派上用场,只是种保险作法。我不认为这是「好程 12/28 12:13 : → luciferii:式所要避免」的,再熟练的人类高手,也有恍神的时候。 12/28 12:14 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.59.19.115
1F:推 kerickuo:Sun 的一个 for mips 的诡异的平台,刚好有提供 ^^" 12/28 13:37
2F:→ kerickuo:不过那function只是回传某个reg的值而且一发生印完就cras 12/28 13:41
3F:→ kerickuo:crash, 所以检查出来还是要在前面就先处理掉 orz 12/28 13:42
4F:推 ledia:单兵作战 ? 12/28 13:51
5F:推 kerickuo:而且跟8K的SRAM比起来,我可以用的RAM大小很奢侈...orz 12/28 14:14







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP