痞酷網_PIGOO

 找回密碼
 立即註冊
!!! [系統偵測到廣告阻擋軟體] !!!

如果您覺得痞酷網對您有些許幫助,或者您認同痞酷網的理想,

那麼希望您將痞酷網設定為白名單.

並請在上論壇的時候,動動您的手指,用行動支持我們.

謝謝!
12
返回列表 發新帖
樓主: antlu

搖搖棒 製作心得

  [複製鏈接]
發表於 2011-9-12 16:04:30 | 顯示全部樓層
antlu 發表於 2011-9-12 01:57 PM static/image/common/back.gif
回復 ysc 的帖子

YSC大:

收徒弟?不敢啦,說不定用C來寫MCU程式還要跟您請教呢!大家網上多多互相切磋。

基本上以ATMEL的89系列來說,89S52跟89C2051指令時序都一樣,照理說應該不會有執行速度差異的問題,或許問題出在其他地方。

MCU程式用組合語言來寫,很容易可以做到多工處理,以一般C用while(t--)這種方式來延時,當程式執行到此時就一定在迴圈內繞完才走得出來,在繞圈時什麼事都不能做,我都稱這是在殺CPU的時間非常可惜,我用組合語言來寫都會在中斷內做延時,不止時間準確,在時間未到之前CPU還可以做其他事,這種作法C當然也做得到,但程式結構就比較複雜了些......

早期做的一些控制器,客戶都要求執行、設定要能同時進行,而執行部分除了一般ON-OFF順序之外,還會有A/D、D/A等轉換,還要時時監視各數值是否超過限制值,一有異常馬上要有處置反應.....一開始也是吃盡苦頭,後來逐漸習慣寫成以計時器中斷方式,將所有程序都掛在中斷程式之下,配合記憶體旗號與數值記憶來判斷各程序執行階段,這種結構很靈活也很有效率,用組合語言來寫很容易,用C的話我就不知道要怎麼寫了......

有時還會遇到要將程式中某一小段搬移到RAM或傳輸到外部,絕對位址的指定在組合語言是稀鬆平常的事,但C要如何去指定呢?這也是一直沒用C寫MCU程式的原因......當然「懶」也是主因之一,不想花那麼多時間重新摸索看資料!
 樓主| 發表於 2011-9-12 20:05:30 | 顯示全部樓層
回復 ysc 的帖子

ysc大:
    看樣子又多了許多要學習&熟練的東西!! 我要加油囉!還是放給他去! 見招拆招!!
發表於 2011-9-12 22:17:40 | 顯示全部樓層
antlu 發表於 2011-9-12 08:05 PM static/image/common/back.gif
回復 ysc 的帖子

ysc大:

大家一起加油!也不要想那麼極端,慢慢來,見招拆招是最好的方式,
等某個階段之後......經驗的累積自然駕輕就熟。
發表於 2011-9-30 09:25:03 | 顯示全部樓層
antlu 發表於 2011-9-12 08:05 PM static/image/common/back.gif
回復 ysc 的帖子

ysc大:

附件是"逢甲大學自動控制工程學系專題製作"
使用 AD590感溫  ADC0804類比轉數位  8951處理器  16*2 LCD

數位溫度感測計.pdf

935.57 KB, 下載次數: 11

發表於 2011-9-30 20:37:58 | 顯示全部樓層
雄爸爸 發表於 2011-9-30 09:25 AM static/image/common/back.gif
附件是"逢甲大學自動控制工程學系專題製作"
使用 AD590感溫  ADC0804類比轉數位  8951處理器  16*2 LCD ...

雄爸,東西今天用宅急便寄出,7-11說明天中午以前會到
那就請你收到後有空再拿給antlu大吧
發表於 2011-10-1 10:16:19 | 顯示全部樓層
legion 發表於 2011-9-30 08:37 PM static/image/common/back.gif
雄爸,東西今天用宅急便寄出,7-11說明天中午以前會到
那就請你收到後有空再拿給antlu大吧 ...

包裹今早已拿到了
感謝囉:sam30
另外的那一組
我再跟antiu喬時間,轉交給他
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

關閉

站長小叮嚀上一條 /1 下一條

禁閉室|手機版|連繫我們|痞酷網電子技術論壇

GMT+8, 2024-11-17 10:20 PM , Processed in 1.373285 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.