Arduino ışık modülasyonu ile seri haberleşme

Arduino devreleri ve uygulamaları

Işık modülasyonlu tek yönlü seri haberleşme

                Light-modulated one-way serial communication

Şekilde ki devre seri haberleşmenin değişik metotlarını en basit şekilde anlamak adına oluşturulmuştur
çalışma prensibi gönderici tarafta led in + ucu +5V a, - ucu ise TX pinine bağlanmıştır,bunun sebebi TX ucu normalde sürekli 1 olup sadece data gönderdiği zaman 0 olmasıdır. haliyle her data gönderiminde ledin - ucu şaseye çekileceği için led ışık verecektir.
ayrıca burada prensip olarak led kullandık istenirse lazer veya IR kullanılarak çok uzun mesafelerden de veri aktarmak mümkün olabilir.

Alıcı tarafta prensip olarak basit olsun diye ldr kullandık istenirse daha gelişmiş foto transistör yada diyotlarla çok daha verimli alıcılar tasarlanabilir.
arduinonun RX ucu normalde +5V dur bu ucu her şaseye çekişimizi arduino 1 bitlik data olarak algılar haliyle alıcı ışık ile her uyarıldığında bunu data olarak algılar.

ortam ışığı,gönderici ve alıcı nın temel seviyede olması gibi nedenlerden dolayı biz burada 300 baud kullandık daha gelişmiş tasarımlarda çok daha yüksek hız ve mesafeler yakalanabilir.





Google translate version:
In this way, the circuit can be used to understand the different methods of serial communication in the simplest way. The led working principle at + 5V + sender is connected to the sender, - the end is connected to the TX pin, the reason is that the TX end is normally 1, only when it sends the data. In addition, if you want to use LEDs as a principle here, it may be possible to transfer data from very long distances when you use laser or IR. We have used the ldr to make the receiver advanced principle simple, if desired, more efficient receivers can be designed with more advanced photo transistors or diodes. The RX end of the arduino is normally + 5V, and it detects that we draw each end to each chassis as the arduino 1 bit data. For reasons for the basic use of ambient light, sender and receiver, we used 300 baud here, so much higher speeds can be achieved in more advanced designs.


Gönderici kodu:
void setup() {
Serial.begin(300);
}
void loop() {
Serial.println("arduinotr.com");
delay(1000);
}

Alıcı kodu:

byte byteRead;
void setup() {
Serial.begin(300);
}
void loop() {
if (Serial.available()) {
byteRead = Serial.read(); 
if(byteRead>0){ 
Serial.println(); 
}
else{ Serial.write(byteRead); }
}
}

3 cevap

  1. Usted tiene un blog fabuloso gracias. Bebe Prent Schonfeld

  2. A excellent article, I just given this onto a colleague who was doing a analysis on this. And he ordered me lunch because I found it for him :). So let me rephrase that: Thankx for taking the time to talk about this, I feel strongly about it and enjoy learning more on this topic. If possible, as you become expertise, would you mind updating your blog with more info? It is extremely helpful for me. Hester Collin Alissa

  3. Hi there, I discovered your blog by way of Google
    even as looking for a similar matter, your website
    came up, it appears to be like great. I have bookmarked it in my google bookmarks.

    Hi there, just became aware of your blog via Google, and found that it is truly informative.
    I am gonna be careful for brussels. I’ll appreciate if you happen to continue this in future.
    A lot of other people shall be benefited out of your writing.
    Cheers!

    My blog … CBD gummies for pain

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir