lnwshop logo
  • ตอบกระทู้
  • ตั้งกระทู้ใหม่
QUOTE 

การใช้ Arduino UNO R3 กับ NRF24L01 เพื่อแสดงผลบนจอ LCD

(Guest)
lover (Guest)
IP: 158.108.246.x
1 ปีที่ผ่านมา

พอดีว่าตอนนี้ผมใช้ Arduino UNO R3  ต่อกับ จอLCD เพื่อแสดงค่า

แต่ผมต้องการให้จอ LCD แสดงค่าแบบไร้สาย NRF24L01 สามารถช่วยได้ไหมครับ

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

ทำได้ครับ ลองดูตัวอย่างโคดที่ หน้าบทความ เรื่องจอ LCD กับ NRF24L01 ครับ จะมีโคดตัวอย่างให้ครบถ้วน ทำให้ออกทีละตัวแล้วเอามารวมกันครับ

QUOTE 
ความคิดเห็นที่ #2
(Guest)
lover (Guest)
IP: 158.108.247.x
1 ปีที่ผ่านมา

บทความ เรื่องจอ LCD กับ NRF24L01 หาไม่เจออ่ะครับ

QUOTE 
ความคิดเห็นที่ #3
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

บทความตามลิงค์นี้ครับ

QUOTE 
ความคิดเห็นที่ #4
Moccao 1 ปีที่ผ่านมา

ขอรบกวนอีกทีครับ ถ้าเราต้องการส่งค่าจากเซนเซอร์ไปแสดงบนหน้าจอ โดยเขียนเงื่อนไขไว้เรียบร้อยแล้ว

เราเอาเงื่อไขนั้นไปใส่ตรงไหนของโปรแกรม NRF24L01

QUOTE 
ความคิดเห็นที่ #5
Moccao 1 ปีที่ผ่านมา

ช่วยผมทีครับ

QUOTE 
ความคิดเห็นที่ #6
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

ใช้ if เช็คเงื่อนไขครับ

#include <SPI.h>
#include <nRF24L01p.h>

nRF24L01p transmitter(7,8);//CSN,CE

void setup(){
  delay(150);
  Serial.begin(115200);
  SPI.begin();
  SPI.setBitOrder(MSBFIRST);
  transmitter.channel(90); // ตั้งช่องความถี่ให้ตรงกัน
  transmitter.TXaddress("ALL"); // ตั้งชื่อตำแหน่งให้ตรงกัน ชื่อตั้งได้สูงสุด 5 ตัวอักษร
  transmitter.init();
}

String message;

void loop(){

if(เงื่อนไข){
  transmitter.txPL("Welcome ArduinoAll");  // ค่าที่ต้องการส่ง
  transmitter.send(FAST); // สั่งให้ส่งออกไป
  delay(1000);

}
}

 

QUOTE 
ความคิดเห็นที่ #7
Moccao 1 ปีที่ผ่านมา

เงื่อนไข sensor ผมประมานเท่านี้อ่า เอาไปใส่ได้เรยช่ายมั้ยคับ

 

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int In_Pin1 = A0;    

int Value_in1 = 0; 

int LEDA = 13; 

int LEDB = 10; 

int LEDC = 9; 

int LEDD = 8; 

int LEDE = 7; 

int LEDF = 6; 

float volt = 0.0;

float R1 = 100.0;

float I = 0.0;

void setup()

{     pinMode(LEDA, OUTPUT);

    pinMode(LEDB, OUTPUT); 

    pinMode(LEDC, OUTPUT); 

    pinMode(LEDD, OUTPUT); 

    pinMode(LEDE, OUTPUT); 

    pinMode(LEDF, OUTPUT);

    Serial.begin(9600);

    lcd.begin(16,2);

    lcd.print("Fault");

    lcd.setCursor(0,1);

    lcd.print("I Fault =");

    lcd.setCursor(14,1);

    lcd.print("kA");

}

void loop()

{

  Value_in1 = analogRead(In_Pin1);

  /*lcd.setCursor(10,1);

  lcd.print(Value_in1);

  delay(500);*/

  if((980<Value_in1)&&(Value_in1<1023))

    {   

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[A]=> 3400m");

       digitalWrite(LEDA, HIGH);

       delay(10);

     }  

 else if((905<Value_in1)&&(Value_in1<980))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[B]=> 230 m");

       digitalWrite(LEDB, HIGH);

       delay(10);

     } 

 else if((845<Value_in1)&&(Value_in1<905))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[B]=> 435 m");

       digitalWrite(LEDB, HIGH);

       delay(10);

     } 

 else if((805<Value_in1)&&(Value_in1<845))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[C]=> 156 m");

       digitalWrite(LEDC, HIGH);

       delay(10);

     }

 else if((770<Value_in1)&&(Value_in1<790))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;    

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[C]=> 280 m");

       digitalWrite(LEDC, HIGH);

       delay(10);

     }  

 else if((790<Value_in1)&&(Value_in1<805))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[D]=> 263 m");

       digitalWrite(LEDD, HIGH);

       delay(10);

     } 

 else if((720<Value_in1)&&(Value_in1<770))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[D]=> 523 m");

       digitalWrite(LEDD, HIGH);

       delay(10);

     } 

 else if((680<Value_in1)&&(Value_in1<720))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[D]=> 761 m");

       digitalWrite(LEDD, HIGH);

       delay(10);

     } 

 else if((650<Value_in1)&&(Value_in1<680))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[D]=> 968 m");

       digitalWrite(LEDD, HIGH);

       delay(10);

     }    

 else if((610<Value_in1)&&(Value_in1<622))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[E]=> 247 m");

       digitalWrite(LEDE, HIGH);

       delay(10);

     } 

 else if((580<Value_in1)&&(Value_in1<600))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;       

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[E]=> 428 m");

       digitalWrite(LEDE, HIGH);

       delay(10);

     }  

 else if((540<Value_in1)&&(Value_in1<580))

    {  

       volt = (Value_in1*5.0)/1023.0;

      I = (1.0488*volt)-0.2;      

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[E]=> 668 m");

       digitalWrite(LEDE, HIGH);

       delay(10);

     }

 else if((622<Value_in1)&&(Value_in1<630))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;      

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[F]=> 188 m");

       digitalWrite(LEDF, HIGH);

       delay(10);

     }

 else if((580<Value_in1)&&(Value_in1<600))

    {  

       volt = (Value_in1*5.0)/1023.0;

       I = (1.0488*volt)-0.2;     

       lcd.setCursor(10,1);

       lcd.print(I);

       delay(500);

       lcd.setCursor(5,0);

       lcd.print("[F]=> 412 m");

       digitalWrite(LEDF, HIGH);

       delay(10);

     }

else

    {  

       lcd.setCursor(10,1);

       lcd.print("0   ");

       lcd.setCursor(5,0);

       lcd.print("[_]");

       lcd.setCursor(9,0);

       lcd.print("      ");

       digitalWrite(LEDA, LOW);

         digitalWrite(LEDB, LOW);

           digitalWrite(LEDC, LOW);

             digitalWrite(LEDD, LOW);

               digitalWrite(LEDE, LOW);

                 digitalWrite(LEDF, LOW);

}

}

 

QUOTE 
ความคิดเห็นที่ #8
Moccao 1 ปีที่ผ่านมา

ขอโทษนะครับ ที่รบกวนบ่อย พอดีเป็นโปรเจ็คจบที่ต้องส่งแล้วคับ 

QUOTE 
ความคิดเห็นที่ #9
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

เอาตรงนี้ไปใส่ ตามเงื่อนไขที่จะให้ส่งไป ยังไงลองเล่นดูอีกทีนะครับ

if(เงื่อนไข){
  transmitter.txPL("Welcome ArduinoAll");  // ค่าที่ต้องการส่ง
  transmitter.send(FAST); // สั่งให้ส่งออกไป
  delay(1000);

}

QUOTE 
ความคิดเห็นที่ #10
Moccao 1 ปีที่ผ่านมา

ลองดูแล้วนะครับ ถึงอย่างส่งและอ่านได้ แต่ค่ากระแสที่อ่านได้จากเซนเซอร์มันไม่แสดงบนหน้าจออ่ะคับ

1
แสดงความคิดเห็นที่ 1-10 จากทั้งหมด 10 ความคิดเห็น
ชื่อ
อีเมล
ข้อความ
  • ตอบกระทู้

หมวดหมู่สินค้า

สมาชิก Arduino All

เข้าสู่ระบบด้วย
เข้าสู่ระบบ
สมัครสมาชิก

ยังไม่มีบัญชีเทพ สร้างบัญชีใหม่ ไม่เกิน 5 นาที
สมัครสมาชิก (ฟรี)

Arduino All ขายดี

รหัสสินค้า A015
300.00 บาท
  • สั่งซื้อ
รหัสสินค้า A233
5.00 บาท
  • สั่งซื้อ
รหัสสินค้า A115
10.00 บาท
  • สั่งซื้อ
รหัสสินค้า A238
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A237
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A014
90.00 บาท
  • สั่งซื้อ
รหัสสินค้า A225
5.00 บาท
  • สั่งซื้อ
รหัสสินค้า A097
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A474
7.00 บาท
สินค้าหมด
Go to Top