Prosty oscyloskop Bluetooth

9

Myślałem o stworzeniu prostego oscyloskopu, który mógłby zmierzyć co najmniej 2 MHz sygnały, które wystarczyłyby i będą podłączone do komputera PC lub urządzenia z Androidem. Najpierw próbowałem użyć USB do podłączenia „oscyloskopu” do komputera PC lub urządzenia obsługującego USB Host z Androidem, które dałoby mi prędkość transferu około 12 Mb / s, ale chciałbym to zrobić przy pomocy bluetooth lub w inny sposób RF. Mówię, że niektóre moduły Bluetooth-UART są w stanie przesyłać dane z prędkością 2 Mb / s, a moduły Wi-Fi tylko około 300 Kb / s. Mam pamięć RAM 512 KB do buforowania próbek z mojego ADC 12MSPS, więc przy prędkości 2 Mb / s zajmie to:

512000 K.bytmis2000000 M.bps/8bjats=2.048smidoonres

Tak więc stracę 2 sekundy próbek, dopóki nie wyślę całego bufora 512 KB przez Bluetooth. W przypadku USB jest to około 330 ms i myślę, że to za dużo. Czy jest jakiś sposób, aby tego uniknąć? Jak to robi oscyloskop USB?

Andres
źródło

Odpowiedzi:

5

Jeśli traktujesz PDA jako zwykły wyświetlacz, możesz zmienić sposób myślenia o tym, jakie dane faktycznie należy wysłać. Potrzebuje tylko jednego śladu danych, szerokości wyświetlacza, do 30 razy na sekundę. Jeśli przyjmiemy 8-bitowe próbki i szerokość wyświetlania siatkówki wynoszącą 960 kolumn, wystarczy wysłać 960 bajtów 30 razy na sekundę lub 28,8 kilobajtów na sekundę. Jeśli nie masz nic przeciwko szybkościom aktualizacji 10 Hz, łącze musi obsłużyć tylko 9600 bajtów na sekundę. Gdy użytkownik powiększy lub zmieni którykolwiek z parametrów pomiaru, wyślij nowe parametry do mikrokontrolera i poproś, aby mikrokontroler przygotował dane, więc do wyświetlenia danych potrzebny jest tylko strumień o niskiej szybkości przesyłania danych.

Jeśli chcesz przeprowadzić analizę na PDA, musisz wysłać całą porcję danych, a to po prostu będzie powolne.

Ale im więcej analiz wykonujesz po stronie mikrokontrolera, tym mniej danych musisz wysłać i tym częściej możesz aktualizować wyświetlacz.

Należy pamiętać, że szybkie łącza danych Bluetooth nie będą łączyć się z urządzeniami z systemem iOS (iPod touch, iPhone, iPad) bez spełnienia wymagań programu Apple Made For iPod lub zepsucia urządzenia iOS. Dlatego wiele podobnych urządzeń korzysta z Wi-Fi.

Jeśli nie możesz zmniejszyć szybkości transmisji danych i potrzebujesz, aby PDA miał pełny dostęp do wszystkich danych bez przerw, powinieneś całkowicie pominąć Bluetooth i korzystać z Wi-Fi. Niedrogie adaptery Wi-Fi mogą obsługiwać tylko niskie prędkości transmisji danych, ale istnieją moduły Wi-Fi, które zapewnią większą przepustowość.

Adam Davis
źródło
6

Nie da się tego uniknąć, wystarczy wysłać mniej danych.

Większość zakresów (w tym zakresy USB pracujące z szybkością USB powyżej) nie próbkuje w sposób ciągły. Po uruchomieniu wypełniają niewielki bufor i wysyłają do wyświetlenia, a następnie czekają na kolejny wyzwalacz, wypełniają bufor, wysyłają do wyświetlania i tak dalej.

Musisz więc obliczyć rozmiar bufora zgodnie z częstotliwością aktualizacji ekranu - dążysz do> 20 odświeżeń na sekundę. Na przykład, jeśli chcesz 20 ekranów z 1024 próbek, to 20 KB (8 bitów na próbkę) danych jest wysyłanych na sekundę. Jeśli masz funkcję „pojedynczego strzału”, możesz oczywiście użyć znacznie większego bufora.

Oli Glaser
źródło