Arduinoya yeni başlamış biri olarak ayrı bir sayfa açmak istemedim. Takıldığım bir yer var birkaç gündür uğraşıyorum bir arpa boyu yol alamadım
Projem şu şekilde, butona her basıldığında sayacımız 1 artacak ve son durum kaç ise radyo dalgaları ile alıcıya yollayacak. Mesela son durumda sayaç değeri 16 ise 16 olarak karşı tarafa iletmesini istiyorum. Takıldığım yer aslında integer değerini char karakterine dönüştürme.
#include <VirtualWire.h>
#include <TM1637Display.h>
const int CLK = 9; //Set the CLK pin connection to the display
const int DIO = 8; //Set the DIO pin connection to the display
TM1637Display display(CLK, DIO); //set up the 4-Digit Display.
char* mesaj;
String mesaj2;
const int led_pin = 13;
const int tx_pin = 12;
const int buton = 6; /* Butonun bağlı olduğu pin */
int butonDurumu = 0; /* Butonun durumu */
int sayac = 0; /* butona basılma sayısını tutacak değişken */
void setup()
{
Serial.begin(9600);
pinMode(led_pin, OUTPUT);
pinMode(buton, INPUT);
vw_set_tx_pin(tx_pin);
vw_set_ptt_inverted(true);
vw_setup(4000);
display.setBrightness(0x0a); //set the diplay to maximum brightness
}
void loop()
{
butonDurumu = digitalRead(buton);
if(butonDurumu == HIGH) {
sayac ++;
digitalWrite(13,HIGH);
while(butonDurumu == HIGH){
butonDurumu = digitalRead(buton);
}
}else{
digitalWrite(led_pin, LOW);
}
// mesaj="16"; // Bu şekilde yolluyor
mesaj=char(sayac); // Bu şekilde hata veriyor.
vw_send((uint8_t *)mesaj, strlen(mesaj));
vw_wait_tx(); // Bütün mesaj gönderilene kadar bekleyin
Serial.println(mesaj);
display.showNumberDec(sayac); //Display the Variable value;
}