Obrigado a vcs.
To fazendo com calma.
Mandei um email para um dos autores do projeto,que é do final de 2016,e ele me retornou que não chegou a terminar completamente a versão em C,mas me orientou a verificar uma versão final em C#.
Se para mim é longo ler o código em C++,imagine em C#.
O principal trecho a analisar é este relacionado a esta rotina.
Mais uma;
int16_t p_axis[2] = {0,0};,deve guardar dois valores entre 0 e 255,seria eixo X e eixo Y.
Vejam se a definição esta correta.
p_axis[0] = 255p_axis[1] = 127Isso carrega a parte alta e a parte baixa correto?
Esse valores são passados para a rotina abaixo:
- Código: Selecionar todos
void FfbGetFeedbackValue(int16_t* axisPosition, int32_t* out)
{
int32_t x_y_force[2] = {0,0};
...etc
A função é chamada assim:
FfbGetFeedbackValue(&p_axis[0],forces_data);Como faço para passar os dois bytes(
p_axis[0] e [1]) para a função?
Do modo que fiz acho que só vai uma parte,o compilador não aceita somente
p_axisPS:aproveitando,se a variável for
int16_t ,o compilador aceitará que eu carregue a parte alta com um valor entre 0 e 255 e a parte baixa com 0 ou 255 ou seguirá a regra de um numero negativo?
Caso negativo,deixarei
p_axis como sem sinal e extrairei a parte alta e baixa separadamente.