Arduino SPI Selbstgespräch

OP #4887709
Lesenswert?
• ▲
▼
Hallo miteinander

Bin etwas mit dem SPI-Bus am spielen, habe jedoch nur ein 3.3 V LCD 
welches ich mit meinem Arduino UNO noch nicht betreiben kann.

Wollte dennoch mal schauen, ob ich SPI richtig einstellen kann.

Da ich kein Oszilloskop zur Hand habe möchte ich den Interrupt vom 
Arduino nutzen, um zu schauen ob wenigstens die Anzahl der gesendeten 
1er Bits richtig sind.

Nun zur ersten Frage. Warum zähle ich am MOSI-Pin keine ansteigenden 
Flanken, während am MISO-Pin 50 steigende Flanken pro Loop gezählt 
werden? SCL gibt wie erwartet 8 steigende Flanken aus.

Zweite Frage: Wäre es möglich den MOSI direkt mit dem MISO zu verbinden 
um wenigstens einen Device vorzutäuschen?

Vielen Dank für Hinweise ;-) Und Gruss,
Freak
1
#include <SPI.h>
2

3
#define intPin 0
4
#define ssPin 10
5

6
volatile int shoot=0;
7

8
void setup(){
9
  Serial.begin(9600);
10
  pinMode(ssPin, OUTPUT);
11
  digitalWrite(ssPin, HIGH);
12
  SPI.begin();
13
  SPI.setDataMode(1);
14
  SPI.setClockDivider(SPI_CLOCK_DIV128); 
15
  SPI.setBitOrder(MSBFIRST);
16
  attachInterrupt(intPin,fun,RISING);
17
}
18

19
void loop(){
20
  digitalWrite(ssPin,LOW);
21
  SPI.transfer(0xF0);
22
  digitalWrite(ssPin,HIGH);
23
  delay(1000);
24
  Serial.println(shoot);
25
  shoot = 0;
26
}
27

28
void fun(){
29
  shoot += 1;
30
}
Gast #4887721
Lesenswert?
• ▲
▼
>Da ich kein Oszilloskop zur Hand habe möchte ich den Interrupt vom
>Arduino nutzen, um zu schauen ob wenigstens die Anzahl der gesendeten
>1er Bits richtig sind.

Was für ein Unsinn;)

>Zweite Frage: Wäre es möglich den MOSI direkt mit dem MISO zu verbinden
>um wenigstens einen Device vorzutäuschen?

Ja, dann bekommst du das zurück was du gesendet hast.
OP #4887765
Lesenswert?
• ▲
▼
Bin hier in den Bergen und hab nur den Arduino und das LCD einige 
Jumpers und einen 220 ohm Widerstand. Zuhause liegt der Logic Level 
Converter.

Hat jemand eine Antwort auf Frage 1?

Bitte keine Hinweise, wie ich mit Draht oder Bleistift einen 
Spannungsteiler bauen könnte ;-)

hp-freund schrieb:
> Lass den doch einfach mit 3,3V laufen, dann kannst Du ohne Pegelwandler
> dein LCD bedienen. Nur eben langsamer.

Geht leider nicht. Stromversorgung kommt von Laptop und der Logik-Pegel 
des Arduino ist 5V.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren