collapse

* Posts Recentes

Making Linear Ball Way Cages por jm_araujo
[Ontem às 23:03]


TV Antiga Desliga-se por almamater
[Ontem às 12:34]


Tubo PVC 32mm Branco por SerraCabo
[10 de Agosto de 2018, 22:49]


Ajuda para contruir uma "máquina" de fisioterapia para a minha filha. por Hugu
[08 de Agosto de 2018, 00:47]


Comprar solda decente por jm_araujo
[07 de Agosto de 2018, 11:30]


Telescopio por kieferdl
[03 de Agosto de 2018, 10:10]


Com que equipamento costumam aceder ao LR? por KammutierSpule
[01 de Agosto de 2018, 10:14]


BostonDynamics - Vai uma mãozinha? por jm_araujo
[01 de Agosto de 2018, 08:29]


Baby's got blue eyes por jm_araujo
[30 de Julho de 2018, 22:55]


Queimei 1 Motor :) por SerraCabo
[30 de Julho de 2018, 22:32]

Autor Tópico: Arduino e SPI  (Lida 1279 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.315
Arduino e SPI
« em: 21 de Dezembro de 2012, 16:44 »
Boas

preciso de testar um DAC, peguei no IDE do arduino para ser mais rápido e fiz o seguinte código:

Código: [Seleccione]
#include <LiquidCrystal.h>
#include <SPI.h>

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
const int SSPin = 10;


void setup() {
  lcd.begin(16, 2);
  pinMode(SSPin, OUTPUT);
  SPI.begin();
}

void loop() {
  digitalWrite(SSPin, LOW);
  SPI.transfer(11111111);
  SPI.transfer(11111111);
  digitalWrite(SSPin, HIGH);
  delay(500);
  lcd.clear();
  lcd.print(analogRead(0));
}

o output do pino MOSI deveria ser 0xFF 0xFF, mas o logic analyser diz o contrário:



já perdi aqui sei lá quantas horas de volta disto e não descubro o problema, o que é que estou a fazer mal?

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Arduino e SPI
« Responder #1 em: 21 de Dezembro de 2012, 17:10 »
Boas,
Acho que sei qual é o problema, mas não tenho a certeza...

Estás a escrever o binário em vez do número em decimal. Logo, se fizeres isso acho que tens que colocar um B antes do binário.

O arduino deve estar a interpretar 11111111 como decimal. Em binário isso é:
101010011000101011000111

A informação que estás a receber é:
11000111

Logo estás a receber os 8 primeiros bits do nr 11111111  :)

Experimenta colocar o B antes.

Cumps

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.315
Re: Arduino e SPI
« Responder #2 em: 21 de Dezembro de 2012, 17:17 »


como é que eu me fui esquecer do 0b  :o

ainda não testei mas deve ser isso

obrigado

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Arduino e SPI
« Responder #3 em: 21 de Dezembro de 2012, 17:18 »
 :P Acontece... De nada

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.315
Re: Arduino e SPI
« Responder #4 em: 21 de Dezembro de 2012, 17:30 »
era isso mesmo, isto às vezes só à pancada  ;D

já agora a biblioteca liquid crystal tem alguma função para limpar só parte do ecrã?
« Última modificação: 21 de Dezembro de 2012, 17:33 por CBX »

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Arduino e SPI
« Responder #5 em: 21 de Dezembro de 2012, 17:56 »
Acho que não... Mas podes colocar o cursor onde quiseres e escrever espaços para apagar só partes.

Mas não sei, só usei lcds uma ou duas vezes :(