2013-10-21 8 views
1

누구든지 의 GSM 네트워크 범위를 퍼센트 (0 .. 100)로 계산하는 공식을 rssi에서 알고 있습니까? 8 비트 AVR 마이크로 컨트롤러 CPU의 경우 로그 또는 나눗셈과 같은 하드 코어 연산 없이도 2^n이 아닌 (비트 시프트가 선호됩니다) 안전해야합니다. 32 개의 가능한 백분율 값을 사용하여 배열을 만드는 것은 좋지 않은 해결책입니다.rssi의 AT + CSQ 네트워크 비율 공식

가능한 RSSI 값 (0..31가 유효한 값입니다) : 내가 원하는

0 -113 dBm or less 
1 -111 dBm 
2...30 -109... -53 dBm 
31 -51 dBm or greater 
99 not known or not detectable 

대략적인 값 :

나는 아이디어 나갈거야
RSSI % 
0 0 
1 3 
2 6 
3 10 
4 13 
5 16 
6 19 
7 23 
8 26 
9 29 
10 32 
11 36 
12 39 
13 42 
14 45 
15 48 
16 52 
17 55 
18 58 
19 61 
20 65 
21 68 
22 71 
23 74 
24 78 
25 81 
26 84 
27 87 
28 90 
29 94 
30 97 
31 100 
99 ? 

, 그래서 나에게 알려 주시기 바랍니다! 시간 내 줘서 고마워!

답변

0

부동 소수점을 사용하지 않고 : RSSI * 3 + 3은 높은 값과 낮은 값을 놓치지 만 중간 범위에서는 괜찮습니다. 높은 값의 정확도가 더 중요하면 3을 더하고 그 반대의 경우도 마찬가지입니다.

1

(RSSI * 827 + 127) >> 8 827

곱셈하고, 가장 가까운 정수로 반올림 연산 시뮬레이션에서 8 하위 비트 모두를 드롭 (127)를 추가한다.