สารบัญ:

IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ: 4 ขั้นตอน
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ: 4 ขั้นตอน

วีดีโอ: IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ: 4 ขั้นตอน

วีดีโอ: IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ: 4 ขั้นตอน
วีดีโอ: soldering revisited 2024, พฤศจิกายน
Anonim
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ
IOT123 - 5PIN ATTINY85 NRF24L01 อิฐ

UPDATE: การตั้งค่านี้ส่วนใหญ่เป็นการศึกษาหรือเป็นฐานสำหรับการทดสอบซอฟต์แวร์/พาวเวอร์ซัพพลาย แม้ว่า PB5 จะถูกปิดใช้งานเป็น RESET แต่ก็ไม่สามารถอ่านค่าได้อย่างแม่นยำโดยใช้ analogRead: กรณีการใช้งานหลักสำหรับการอ่านเซ็นเซอร์ จะตรวจสอบการตั้งค่า ATTINY84…

อิฐ IOT123 เป็นหน่วยโมดูลาร์ DIY ที่สามารถผสมกับอิฐ IOT123 อื่นๆ เพื่อเพิ่มฟังก์ชันการทำงานให้กับโหนดหรืออุปกรณ์สวมใส่ได้ พวกเขาอยู่บนพื้นฐานของตารางนิ้วโปรโตบอร์ดสองด้านที่เชื่อมต่อกันผ่านรู

BRICK นี้เพิ่มการเชื่อมต่อ RF 2.4GHz ให้กับต้นแบบสำหรับการรวมข้อมูลโหนด IOT มันไม่ยืดหยุ่นมากนักเพราะมีพินเดียวเท่านั้น แต่เป็นจุดเริ่มต้นที่ดีและประหยัดพลังงานมากกว่าวงจร 3Pin ที่ฉันมุ่งไป

อิฐนี้จะมี BATTERY BRICK, POWER BRICK และ BREAKOUT BRICK ที่พัฒนาขึ้นซึ่งสามารถบัดกรีหรือเชื่อมต่อส่วนหัวได้

ขั้นตอนที่ 1: วัสดุและเครื่องมือ

วัสดุและเครื่องมือ
วัสดุและเครื่องมือ
วัสดุและเครื่องมือ
วัสดุและเครื่องมือ
วัสดุและเครื่องมือ
วัสดุและเครื่องมือ

มีรายการ Bill of Material and Sourcing ฉบับเต็ม

  1. nRF24L01+ (1)
  2. 1" โปรโตบอร์ดสองด้าน (1)
  3. ATTINY85-20PU (1)
  4. ซ็อกเก็ต IC DIL 8 ขา (1)
  5. ส่วนหัวหญิง (2x4P, 1P, 2P)
  6. สายเชื่อมต่อ (~8)
  7. บัดกรีและเหล็ก (1)
  8. กาวไซยาโนอาคริเลตเข้มข้น (1)

ขั้นตอนที่ 2: การประกอบวงจร

การประกอบวงจร
การประกอบวงจร
การประกอบวงจร
การประกอบวงจร
การประกอบวงจร
การประกอบวงจร

สี่เหลี่ยมสีเทาเป็นตำแหน่งที่อาจใช้สำหรับการเชื่อมต่อในภายหลัง ดังนั้นพยายามอย่าให้มีสายไฟ

หากใช้แถบส่วนหัว 40P ให้ตัดและยื่นส่วนหัว 1P และ 2P แล้วติดกาว 2x4P ด้วย (จาก 4P แยกกัน 2 รายการ)

มีบางครั้งที่การบัดกรีที่อีกด้านหนึ่งของรูทะลุถูกกีดขวาง เมื่อเป็นกรณีนี้ ฉันบัดกรีด็อบบนเป้าหมายผ่านรู จากนั้นหลอมบัดกรีจากด้านข้างแล้วดันลวดเชื่อมที่สัมผัสเข้าไปในรูตรงกลาง จับและเอาความร้อนออก

  1. แทรกส่วนหัวของตัวเมีย 2x4P (1), ซ็อกเก็ต DIL 8P (2, ครึ่งดวงตรงกลาง), ส่วนหัวตัวเมีย 1P (3) และส่วนหัวตัวเมีย 2P (4) จากด้านบน ปิดบัดกรีที่ด้านล่าง
  2. ที่ด้านบน ลากเส้นลวดสีเหลืองเข้าไปใน YELLOW1 และ YELLOW2 แล้วบัดกรี
  3. ที่ด้านบน ลากเส้นลวดสีเหลืองเข้าไปใน YELLOW3 และ YELLOW4 แล้วบัดกรี
  4. ที่ด้านบน ลากเส้นลวดสีเหลืองเข้าไปใน YELLOW5 และ YELLOW6 แล้วบัดกรี
  5. ที่ด้านบน ให้ลากเส้นสีแดงเข้าไปใน RED1 และ RED2 แล้วบัดกรี
  6. ที่ด้านล่าง ลากลวดสีดำเข้าไปใน BLACK1 และ BLACK2 แล้วบัดกรี
  7. ที่ด้านล่าง ลากเส้นสีแดงเข้าไปใน RED1 และ RED2 แล้วบัดกรี
  8. ที่ด้านล่าง ลากเส้นลวดสีเหลืองเข้าไปใน YELLOW1 และ YELLOW2 แล้วบัดกรี
  9. ที่ด้านล่าง ลากเส้นลวดสีเหลืองเข้าไปใน YELLOW3 และ YELLOW4 แล้วบัดกรี

ขั้นตอนที่ 3: การทดสอบ

การทดสอบ
การทดสอบ
การทดสอบ
การทดสอบ
การทดสอบ
การทดสอบ
การทดสอบ
การทดสอบ

รหัสสำหรับการทดสอบนั้นง่ายและได้มาจาก www.theengineeringprojects.com ต้นแบบ Arduino UNO บันทึกกิจกรรม RF ไปยัง Serial Console ATTINY85 nRF24L01 BRICK เพิ่มขึ้นและเขียนจำนวนเต็มไปยังช่อง RF เนื่องจากเราไม่ได้ใช้ PIN 1 ฉันจะปล่อยให้การตั้งค่ารีเซ็ตฟิวส์บิตสำหรับคำแนะนำในภายหลัง หรือคุณสามารถทำตามขั้นตอนที่นี่

รหัสผู้ส่ง

รหัสผู้รับ

  1. อัปโหลดโค้ดรับไปยัง Arduino UNO
  2. ต่อ UNO เข้ากับ nRF24L01 ดังที่แสดงด้านบน
  3. อัปโหลดรหัสส่งไปยัง ATTINY85 (ATTinyCore/ATTINY85/8MHz)
  4. เพิ่ม ATTINY85 ให้กับอิฐ
  5. เพิ่ม nRF24L01 ให้กับอิฐ
  6. เชื่อมต่อ Arduino UNO ผ่าน USB กับพีซี
  7. ใน Arduino IDE เลือกพอร์ต COM ที่ถูกต้อง
  8. เปิด Serial Monitor ที่ 57600 บอด
  9. เพิ่มพลังให้กับอิฐด้วย ~3V (ดูรูปที่ 1 ในขั้นตอนนี้)
  10. ตรวจสอบค่าที่เขียนลงในคอนโซล

รหัสที่ได้มาจาก https://www.theengineeringprojects.com/2015/07/interfacing-arduino-nrf24l01.html สำหรับการทดสอบบน

//ส่ง - ATTINY85
#defineCE_PIN3
#defineCSN_PIN4
#รวม"RF24.h"
วิทยุ RF24 (CE_PIN, CSN_PIN);
ท่อ constuint64_t [2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };
คำสั่ง unsignedlong = 1;
voidsetup()
radio.begin();
radio.setRetries(15, 15);
radio.openReadingPipe(1, ท่อ[1]);
radio.startListening();
radio.printDetails();
radio.openWritingPipe(ท่อ[0]);
radio.openReadingPipe(1, ท่อ[1]);
radio.stopListening();
}
voidloop(เป็นโมฆะ)
{
radio.stopListening();
radio.write(&Command, sizeof(unsignedlong));
radio.startListening();
คำสั่ง++;
ล่าช้า (1000);
}

ดู rawnRF24L01_aattiny85_send.ino โฮสต์ด้วย ❤ โดย GitHub

รหัสที่ได้มาจาก https://www.theengineeringprojects.com/2015/07/interfacing-arduino-nrf24l01.html สำหรับการทดสอบบน

//รับ - ARDUINO UNO
#รวม
#รวม"nRF24L01.h"
#รวม"RF24.h"
วิทยุ RF24 (9, 10);
ท่อ constuint64_t [2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };
voidsetup(เป็นโมฆะ)
{
Serial.begin(57600);
radio.begin();
radio.setRetries(15, 15);
radio.openReadingPipe(1, ท่อ[1]);
radio.startListening();
radio.printDetails();
radio.openWritingPipe(ท่อ [1]);
radio.openReadingPipe(1, ท่อ[0]);
radio.startListening();
}
voidloop(เป็นโมฆะ)
{
Serial.println("ลูป");
ถ้า (radio.available())
{
ข้อมูล unsignedlong = 0;
radio.read(&data, sizeof(unsignedlong));
Serial.println (ข้อมูล);
}
ล่าช้า (1000);
}

ดู rawnRF24L01_arduino_receive.ino โฮสต์ด้วย ❤ โดย GitHub

ขั้นตอนที่ 4: ขั้นตอนต่อไป

อิฐ IOT123 อื่น ๆ ที่ผสมกับอันนี้:

  • อิฐไฟฟ้า 3.3V
  • อิฐแบตเตอรี่ LIR2032

แนะนำ: