Chip123 科技應用創新平台

標題: 簡單卻不同思維的系統應用問題 [打印本頁]

作者: Chamberplus    時間: 2010-5-6 10:23 AM
標題: 簡單卻不同思維的系統應用問題
本帖最後由 Chamberplus 於 2010-5-6 10:24 AM 編輯
3 a1 `3 O1 |6 P$ F4 b3 X
# l$ N( _. @' s) z9 J大家在系統應用上會常用到A/D 的問題,但也常常是用十根手指頭的觀念在寫程式。
+ a2 {$ j3 }1 ~1 {: g( Z. @( B! K* R+ R6 Q( l- Q  r& `; [+ J
來講一個系統應用的觀念,如果您也是常寫一些MCU 韌體程式的話,或許,會有一些幫助吧。0 d7 S5 Y( Y% d7 G# Z! L

! _4 t! K  n! P" |$ V! k尤其是作一些機電整合的韌體程式,
, x' w3 D5 ^. y2 E- m; @, A  R' i3 Y9 z8 V9 A  ~
寫這種程式,您就不要把那一般寫LED 跑馬燈的程式觀念拿來湊合。
) }7 q$ E  Y. ~" `; h7 \
" p. N4 \6 `/ }. `7 S- b* S我個人覺得:如果,只是要您寫個簡單的I/O 控制程式,或是一個簡單的步進馬達控制程式,
  D- a; t! B8 S& `5 }
' o. h( q2 ]1 O3 g4 D您可能就是把我們手指頭上的十個手指拿出來湊合的寫。反正是程式嘛,就是幫我們人腦做事的嘛!
- F( j$ o2 @" C) \
" Y+ B3 R0 f4 w* K...(略)4 @3 i' y: _! K! Q! L
& s4 c* W  O& m8 W# w' T
今天我們來講一個一般系統輸入參數的處理問題,譬如說是一個類比輸入參數(A/D Parameter)。
' z+ d4 x; }& K" m/ M4 e: _  u8 E" n5 A* K' e( X2 ^
我們都知道:雖然是類比輸入,但是我們在韌體程式的讀取過程,. u$ X/ J& o  t

8 n& L" F% d/ Q  |; p5 x& ?! B0 K卻仍然是數位分時處理方式(Discrete)。還是得一個、一個值慢慢讀進來。
  y; E- [" P1 |" c; O. x$ T( r+ u; c2 n. x
難免就會發生所謂多久取一個值?!(連續性)...還有一個很重要的觀念:軟體濾波處理。(Filter)
3 h6 e0 d4 e; U" |+ Z& x6 }0 k! e
3 V% e7 d1 {- ?5 R硬體電路上的濾波電路是鐵定有的(一般都只是低通濾波),
$ z1 D' X+ ^8 O
) S, f0 f' {; W. F7 {2 A5 W但您怎麼知道輸入的值會不會有波動峰值呢?瞬間的變化時合理嗎?!" X" c8 n% B4 W# z5 D; z. x  E, F

$ J6 |# U# _# S$ b尤其是一些屬於比較機械特性的參數,譬如環境溫度、電瓶電壓等...( I$ b" n. h7 b/ u+ S$ `4 j* w: [

6 Y) R7 i5 r% T( g5 l2 u這些東西都是屬於自然現象的參數。(廢話...這種東西才需要A/D啊)
0 q6 j# Z1 n7 K0 t( ~; Y* H  D& `6 E9 L" I! c- v% Y! A
所以,在軟體上也必須有一些軟體濾波作法,,,我相信如果您幸運一點的話,
% w: |$ X$ D2 l4 u/ i
2 x6 p+ Q1 E& K! J剛好有個老鳥工程師願意帶您,而也願意傾囊相授教您...: {; y# s" E3 w/ D( O. w

) v4 S# t) d0 e3 H4 S, h' p6 X您可能就知道這個東西就是:讀個十遍或二十遍,然後取平均就好了!????????) \% p$ }6 e- S8 ]% K$ h- p

/ T- W3 J' Q* M+ J! O$ }是嗎?!, \- d6 Z+ Y5 ~  `: n* O& m
& E% M7 H* `$ @+ T8 T
---
9 S0 Q0 `& K& m+ L7 Ltw.myblog.yahoo.com/chamberplus-taiwan/article?mid=1905&prev=1925&next=1901




歡迎光臨 Chip123 科技應用創新平台 (http://www.chip123.com.tw/) Powered by Discuz! X3.2