summaryrefslogtreecommitdiff
path: root/trunk/darwin/firmware/Sanguino/Sanguino3G/testers/rs485_master_sender/rs485_master_sender.pde
blob: 13baab3743751ddf59a6f61d9ad4177c3a3c1d65 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57

#define RX_ENABLE_PIN   13
#define TX_ENABLE_PIN   12
#define DEBUG_PIN 0

void setup()
{
  pinMode(RX_ENABLE_PIN, OUTPUT);
  pinMode(TX_ENABLE_PIN, OUTPUT);
  pinMode(DEBUG_PIN, OUTPUT);

  Serial.begin(38400);
  Serial1.begin(38400);
  
  transmit_mode();
}

void loop()
{
  for (byte i=32; i<128; i++)
  {
    digitalWrite(DEBUG_PIN, HIGH);
    delay(100);
    digitalWrite(DEBUG_PIN, LOW);

    Serial.print("OUT: ");
    print_byte(i);

    Serial1.print(i, BYTE);

    delay(900);
  }
}

void print_byte(byte b)
{
  Serial.print(b, BYTE);
  Serial.print(" / ");
  Serial.print(b, DEC);
  Serial.print(" / ");
  Serial.print(b, HEX);
  Serial.print(" / ");
  Serial.print(b, BIN);
  Serial.println(".");
}

void transmit_mode()
{
  digitalWrite(TX_ENABLE_PIN, HIGH); //enable tx
  digitalWrite(RX_ENABLE_PIN, HIGH); //disable rx
}

void receive_mode()
{
  digitalWrite(TX_ENABLE_PIN, LOW); //disable tx
  digitalWrite(RX_ENABLE_PIN, LOW); //enable rx
}