Pergunta

Preciso ler cerca de 100 amostras por segundo de fora do acelerômetro em um Android e a uma taxa de amostragem fixa. O Sensormanager atual não faz ou não.

Eu li Precisa ler sensores Android muito rápido

Ele parece ter acesso ao código do motorista, o que facilitou sua vida.

Estou curioso para saber se alguém foi capaz de fazer algo assim através do NDK com esse tipo de conhecimento.

Desde já, obrigado!

Foi útil?

Solução

Eu dei uma olhada no sensor.h, e a API parece muito promissora; No entanto, um pouco de como lidar com o AsensoreventQueue e Asensoreventqueue_hasevents e assim por diante seriam -se -tremamente úteis.

Ha! Atualizar:

Isso parece um exemplo de código para o que você deseja fazer.

http://developer.android.com/reference/android/app/nativeactivity.html

Outras dicas

Como o Android SDK versão 9 (para Android> 2.2) parece ser possível usar os sensores via NDK.

Consulte o arquivo stable_apis.html incluído nos documentos. (Pesquise "sensor.h"). Um espelho desse arquivo é aqui.

Exemplo do Google https://github.com/googlesamples/android-ndk/tree/master/sensor-gralp. Seu código permite controlar o sensor_refresh_rate_hz para o acelerômetro.

Os sensores podem ser lidos lendo diretamente dos "arquivos" do sistema como:

/sys/classe/sensores/luz_sensor/lux ou/sys/classe/sensores/luz_sensor/raw_data

Gostaria de saber se existe uma maneira mais direta de fazê -lo, lendo diretamente do chip.

Como algo em /dev /...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top