Chip123 科技應用創新平台
標題:
簡單卻不同思維的系統應用問題
[打印本頁]
作者:
Chamberplus
時間:
2010-5-6 10:23 AM
標題:
簡單卻不同思維的系統應用問題
本帖最後由 Chamberplus 於 2010-5-6 10:24 AM 編輯
* M4 E, C p* c! U4 D
1 z# P7 \, W# u/ f4 Q" C4 q' `5 V
大家在系統應用上會常用到A/D 的問題,但也常常是用十根手指頭的觀念在寫程式。
( u9 [6 K8 v8 Y% _2 Q
" p4 |/ {" a9 j: W
來講一個系統應用的觀念,如果您也是常寫一些MCU 韌體程式的話,或許,會有一些幫助吧。
4 H' X' N9 k& ^
* L0 L! [" u+ w0 I1 I
尤其是作一些機電整合的韌體程式,
1 D6 V9 h! D" M
, q6 p5 g, L/ l3 D# h9 j
寫這種程式,您就不要把那一般寫LED 跑馬燈的程式觀念拿來湊合。
7 V' [5 A; n m4 z: v; L b
5 A' o& Z w5 t! X/ r) v* ^
我個人覺得:如果,只是要您寫個簡單的I/O 控制程式,或是一個簡單的步進馬達控制程式,
: N, N6 E. {- Y' [+ i. q
9 ^- [5 W$ K$ S7 W3 g: x
您可能就是把我們手指頭上的十個手指拿出來湊合的寫。反正是程式嘛,就是幫我們人腦做事的嘛!
$ z$ F, s3 i4 [
; t. D% q, V9 L0 P2 ~) _
...(略)
o; t; N. U+ F4 {2 U
. D, ] h) e" Q8 f8 u
今天我們來講一個一般系統輸入參數的處理問題,譬如說是一個類比輸入參數(A/D Parameter)。
7 k$ g: E! j4 E' A+ d& b
$ |4 G( Y$ B5 o4 H
我們都知道:雖然是類比輸入,但是我們在韌體程式的讀取過程,
& f3 X# u: S! l- x" V
& e, x. j. }" b: l: U4 L
卻仍然是數位分時處理方式(Discrete)。還是得一個、一個值慢慢讀進來。
% i0 ~' O% `1 W1 r/ [) z
+ R9 m; Y! h$ K9 m' J/ S
難免就會發生所謂多久取一個值?!(連續性)...還有一個很重要的觀念:軟體濾波處理。(Filter)
/ I9 f1 S# n9 Q' K3 M! J1 W. ~' P
3 c% M, W- M9 D# a& {* ?2 @1 J) O0 ]
硬體電路上的濾波電路是鐵定有的(一般都只是低通濾波),
$ p5 r: D" x9 d" {# h+ X
- Q" Z6 P& J) q" n
但您怎麼知道輸入的值會不會有波動峰值呢?瞬間的變化時合理嗎?!
5 ?1 F0 z: V3 t9 I
! _4 c, I* M2 N7 c" J# G, W( z
尤其是一些屬於比較機械特性的參數,譬如環境溫度、電瓶電壓等...
6 I* p; G& y% t- R I- _
! r; G3 L* J! a1 b& e
這些東西都是屬於自然現象的參數。(廢話...這種東西才需要A/D啊)
# e. J7 B! @; o3 G
) @; N- p3 h$ M+ _6 {. ~
所以,在軟體上也必須有一些軟體濾波作法,,,我相信如果您幸運一點的話,
' m% N! v8 }7 Y* e! S6 ~
( `2 e; N$ H7 D, O
剛好有個老鳥工程師願意帶您,而也願意傾囊相授教您...
% U# F$ _' j0 @- Q( g: J8 _
! C0 P3 J5 k7 H1 x7 a+ Q
您可能就知道這個東西就是:讀個十遍或二十遍,然後取平均就好了!????????
& F* |. _3 b( @9 j, d
# E9 \, L* z$ `& f! B# J% D( J9 x
是嗎?!
8 w2 @- t: U9 M8 v+ S! w, k
$ F3 l, j, B3 A+ K' l
---
6 Z; @" L6 U% n0 R& X; L
tw.myblog.yahoo.com/chamberplus-taiwan/article?mid=1905&prev=1925&next=1901
歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/)
Powered by Discuz! X3.2