สารบัญ:

HackerBox 0049: ดีบัก: 8 ขั้นตอน
HackerBox 0049: ดีบัก: 8 ขั้นตอน

วีดีโอ: HackerBox 0049: ดีบัก: 8 ขั้นตอน

วีดีโอ: HackerBox 0049: ดีบัก: 8 ขั้นตอน
วีดีโอ: DIY Arduino PCB Design in KiCad (Pyramiduino) 2024, พฤศจิกายน
Anonim
HackerBox 0049: ดีบัก
HackerBox 0049: ดีบัก

สวัสดี HackerBox แฮกเกอร์ทั่วโลก! สำหรับ HackerBox 0049 เรากำลังทดลองกับการดีบักระบบไมโครคอนโทรลเลอร์ดิจิทัล กำหนดค่าแพลตฟอร์ม LOLIN32 ESP-32 WiFi Bluetooth ภายใน Arduino IDE โดยใช้ FastLED Animation Library กับเมทริกซ์ขนาด 8x8 ของ RGB LED ที่สามารถระบุตำแหน่งได้ สำรวจเทคนิคการดีบักรหัส Serial Monitor โดยใช้ประโยชน์จาก โมดูล FTDI 2232HL สำหรับการดีบัก JTAG ของระบบไมโครคอนโทรลเลอร์ และการเตรียม DIY Logic Analyzer สำหรับใช้ในสถานการณ์ดีบักฮาร์ดแวร์และการทดสอบต่างๆ

คำแนะนำนี้มีข้อมูลสำหรับการเริ่มต้นกับ HackerBox 0049 ซึ่งสามารถซื้อได้ที่นี่จนกว่าของจะหมด หากคุณต้องการรับ HackerBox แบบนี้ในกล่องจดหมายของคุณทุกเดือน โปรดสมัครสมาชิกที่ HackerBoxes.com และเข้าร่วมการปฏิวัติ!

HackerBoxes เป็นบริการกล่องสมัครสมาชิกรายเดือนสำหรับผู้ที่ชื่นชอบอุปกรณ์อิเล็กทรอนิกส์และเทคโนโลยีคอมพิวเตอร์ - แฮ็กเกอร์ฮาร์ดแวร์ - ความฝันแห่งความฝัน

ขั้นตอนที่ 1: รายการเนื้อหาสำหรับ HackerBox 0049

  • โมดูล Wemos LOLIN32 ESP-32
  • โมดูล USB FTDI 2232HL
  • CY7C68013A มินิบอร์ด
  • เมทริกซ์ 8x8 ของ WS2812B RGB LEDs
  • คลิปหนีบมินิแกร็บเบอร์สายรุ้ง Set
  • ชุดจัมเปอร์ดูปองท์หญิง-หญิง
  • หมวกคิด HackerBox พิเศษ
  • สติกเกอร์ไม่ระบุตัวตน
  • สติ๊กเกอร์ SIMM กะโหลก

สิ่งอื่น ๆ ที่จะเป็นประโยชน์:

  • หัวแร้ง หัวแร้ง และเครื่องมือบัดกรีพื้นฐาน
  • คอมพิวเตอร์สำหรับใช้งานเครื่องมือซอฟต์แวร์

ที่สำคัญที่สุด คุณจะต้องมีความรู้สึกของการผจญภัย จิตวิญญาณของแฮ็กเกอร์ ความอดทน และความอยากรู้อยากเห็น การสร้างและทดลองใช้อุปกรณ์อิเล็กทรอนิกส์ แม้จะให้ผลตอบแทนสูง แต่ก็อาจเป็นเรื่องยาก ท้าทาย และน่าหงุดหงิดในบางครั้ง เป้าหมายคือความก้าวหน้า ไม่ใช่ความสมบูรณ์แบบ เมื่อคุณยืนกรานและสนุกไปกับการผจญภัย งานอดิเรกนี้จะได้รับความพึงพอใจอย่างมาก ทำแต่ละขั้นตอนอย่างช้าๆ ใส่ใจในรายละเอียด และอย่ากลัวที่จะขอความช่วยเหลือ

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

ขั้นตอนที่ 2: โมดูล Wemos LOLIN32 ESP-32

โมดูล Wemos LOLIN32 ESP-32
โมดูล Wemos LOLIN32 ESP-32

ทำการทดสอบเบื้องต้นของแพลตฟอร์ม Bluetooth WiFi Bluetooth ของโมดูล Wemos LOLIN32 ESP-32 ก่อนที่จะบัดกรีหมุดส่วนหัวเข้ากับโมดูล

ติดตั้ง Arduino IDE และแพ็คเกจสนับสนุน ESP-32

ใต้ tools>board อย่าลืมเลือก "WeMos LOLIN32"

โหลดโค้ดตัวอย่างที่ Files>Examples>Basics>Blink และตั้งโปรแกรมไปที่ WeMos LOLIN32

โปรแกรมตัวอย่างควรทำให้ไฟ LED สีฟ้าบนโมดูลกะพริบ ทดลองปรับเปลี่ยนพารามิเตอร์การหน่วงเวลาเพื่อให้ไฟ LED กะพริบด้วยรูปแบบต่างๆ นี่เป็นแบบฝึกหัดที่ดีเสมอมาเพื่อสร้างความมั่นใจในการเขียนโปรแกรมโมดูลไมโครคอนโทรลเลอร์ใหม่

เมื่อคุณพอใจกับการทำงานของโมดูลและวิธีการตั้งโปรแกรมแล้ว ให้บัดกรีหมุดส่วนหัวสองแถวอย่างระมัดระวังและทดสอบโปรแกรมการโหลดอีกครั้ง

ขั้นตอนที่ 3: เมทริกซ์ของ 64 RGB LEDs

เมทริกซ์ของ 64 RGB LEDs
เมทริกซ์ของ 64 RGB LEDs

ติดตั้งไลบรารีแอนิเมชั่น FastLED สำหรับ Arduino IDE

เชื่อมต่อ LED Matrix ตามที่แสดง

โปรดทราบว่า LED "Data In" ต่อสายเข้ากับ ESP32 Pin 13 (A14)

เมื่อเปิดไฟ LED มากกว่าหยิบมือในแต่ละครั้ง โดยเฉพาะอย่างยิ่งเมื่อต้องการความสว่างเต็มที่ ให้พิจารณาใช้แหล่งจ่ายไฟ 5V ที่มีกระแสไฟสูงกว่าแทนพิน 5V บน LOLIN32

ตั้งโปรแกรมร่างการสาธิต LEDmatrix ซึ่งจะกะพริบองค์ประกอบสุ่มด้วยสีแบบสุ่มเป็นเวลาสี่วินาทีในแต่ละครั้ง

ขั้นตอนที่ 4: การดีบักการตรวจสอบอนุกรมอย่างง่ายสำหรับ Arduino IDE

การดีบักการตรวจสอบอนุกรมอย่างง่ายสำหรับ Arduino IDE
การดีบักการตรวจสอบอนุกรมอย่างง่ายสำหรับ Arduino IDE

หนึ่งในวิธีที่ง่ายและรวดเร็วที่สุดในการดีบักร่าง Arduino คือการใช้จอภาพแบบอนุกรมเพื่อสังเกตผลลัพธ์จากคำสั่ง Serial.print ระหว่างการดำเนินการของโค้ด

ในภาพร่างการสาธิต LEDmatrix ให้ยกเลิกการใส่เครื่องหมายบรรทัด "//#define DEBUG 1" โดยลบเครื่องหมายทับสองอัน

การดำเนินการนี้จะเปิดการดีบักการตรวจสอบแบบอนุกรมในแบบร่าง การเปิดจอภาพอนุกรม IDE เป็น 9600 บอดจะแสดงเอาต์พุตการดีบัก ตรวจสอบโค้ดเพื่อดูว่ามีการสร้างเอาต์พุตเหล่านี้อย่างไร

คำสั่งเอาต์พุตแบบอนุกรมดังกล่าวสามารถใช้เพื่อตั้งค่าสถานะเมื่อการดำเนินการเข้า/ออกจากฟังก์ชันบางอย่างหรือพื้นที่ของโค้ด คำสั่งต่างๆ ยังสามารถแทรก (ตามที่แสดง) ไปที่ค่าเอาต์พุตที่ใช้ในโปรแกรมเพื่อติดตามการเปลี่ยนแปลงในส่วนต่างๆ ของโปรแกรม หรือเพื่อตอบสนองต่ออินพุตต่างๆ หรือเงื่อนไขอื่นๆ

ขั้นตอนที่ 5: การดีบักอนุกรมขั้นสูงสำหรับ Arduino IDE

การดีบักแบบอนุกรมขั้นสูงสำหรับ Arduino IDE
การดีบักแบบอนุกรมขั้นสูงสำหรับ Arduino IDE

SerialDebug Library ช่วยให้คุณใช้ประโยชน์จากการดีบักขั้นสูงใน Arduino IDE

บทช่วยสอน Random Nerds นี้สาธิตวิธีใช้ SerialDebug Library ในโครงการของคุณ

ขั้นตอนที่ 6: การดีบัก JTAG ด้วยโมดูล FT2232HL

การดีบัก JTAG ด้วยโมดูล FT2232HL
การดีบัก JTAG ด้วยโมดูล FT2232HL

FT2232H (เอกสารข้อมูลและอื่นๆ) เป็นชิปบริดจ์รุ่นที่ 5 ระหว่าง USB 2.0 Hi-Speed (480Mb/s) และ UART/FIFO มีความสามารถในการกำหนดค่าอินเทอร์เฟซแบบอนุกรมหรือแบบขนานมาตรฐานอุตสาหกรรมที่หลากหลาย FT2232H มีเอ็นจิ้นซีเรียลซิงโครนัสหลายโปรโตคอล (MPSSE) หลายโปรโตคอล ซึ่งอนุญาตให้สื่อสารโดยใช้ JTAG, I2C และ SPI สองช่องสัญญาณพร้อมกัน

JTAG (Joint Test Action Group) เป็นมาตรฐานอุตสาหกรรมสำหรับตรวจสอบการออกแบบและทดสอบแผงวงจรพิมพ์ แม้ว่าแอปพลิเคชันช่วงแรกๆ ของ JTAG จะมุ่งเป้าไปที่การทดสอบระดับบอร์ด แต่ JTAG ได้พัฒนาขึ้นเพื่อใช้เป็นวิธีการหลักในการเข้าถึงบล็อกย่อยของวงจรรวม ทำให้เป็นกลไกสำคัญสำหรับการดีบักระบบฝังตัวซึ่งอาจไม่มีช่องทางการสื่อสารอื่นๆ ที่สามารถแก้ไขจุดบกพร่องได้ "อะแดปเตอร์ JTAG" ใช้ JTAG เป็นกลไกการขนส่งเพื่อเข้าถึงโมดูลดีบักบนชิปภายใน CPU เป้าหมาย โมดูลเหล่านี้ช่วยให้นักพัฒนาสามารถแก้ปัญหาซอฟต์แวร์ของระบบฝังตัวได้โดยตรงที่ระดับคำสั่งของเครื่องหรือในแง่ของซอร์สโค้ดภาษาระดับสูง

JTAG ดีบัก ESP32 ด้วย FT2232 และ OpenOCD

การดีบักในวงจรของ ESP32 โดยใช้อะแดปเตอร์ JTAG ที่ใช้ FTDI 2232HL

OpenOCD ดีบักเกอร์แบบเปิดบนชิป

ดูคู่มือสุดเจ๋งนี้จาก Adafruit ที่สาธิตวิธีใช้ FT232H เพื่อเชื่อมต่อกับเซ็นเซอร์ I2C และ SPI และการแยกส่วนจากเดสก์ท็อปพีซีที่ใช้ Windows, Mac OSX หรือ Linux

ขั้นตอนที่ 7: DIY Logic Analyzer - CY7C68013A Mini Board

DIY Logic Analyzer - CY7C68013A บอร์ดขนาดเล็ก
DIY Logic Analyzer - CY7C68013A บอร์ดขนาดเล็ก

เครื่องวิเคราะห์ลอจิกเป็นเครื่องมืออิเล็กทรอนิกส์ที่รวบรวมและแสดงสัญญาณหลายตัวจากระบบดิจิตอลหรือวงจรดิจิตอล เครื่องวิเคราะห์การเข้าสู่ระบบมีประโยชน์มากสำหรับการดีบักระบบอิเล็กทรอนิกส์ดิจิทัล

โปรเจ็กต์ sigrok เป็นชุดซอฟต์แวร์วิเคราะห์สัญญาณโอเพ่นซอร์สแบบพกพา ข้ามแพลตฟอร์ม ที่รองรับอุปกรณ์ประเภทต่างๆ รวมถึงเครื่องวิเคราะห์ลอจิก ออสซิลโลสโคป ฯลฯ

CY7C68013A Mini Board เป็นบอร์ดประเมินผล Cypress FX2LP บอร์ดนี้สามารถใช้เป็นเครื่องวิเคราะห์ลอจิก 16 ช่องบน USB ที่มีอัตราการสุ่มตัวอย่างสูงสุด 24MHz ขึ้นอยู่กับฮาร์ดแวร์ที่ค่อนข้างคล้ายกับ Saleae Logic เฟิร์มแวร์ fx2lafw โอเพ่นซอร์ส sigrok สามารถรองรับการทำงานเป็นตัววิเคราะห์ลอจิกได้

สาธิตการแปลง Logic Analyzer ของ Mini Boad

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

ขั้นตอนที่ 8: HackerBox Thinking Cap พิเศษ

หมวกคิด HackerBox พิเศษ
หมวกคิด HackerBox พิเศษ

เราหวังว่าคุณจะสนุกกับการผจญภัยของ HackerBox ในเดือนนี้ในด้านอิเล็กทรอนิกส์และเทคโนโลยีคอมพิวเตอร์ ติดต่อและแบ่งปันความสำเร็จของคุณในความคิดเห็นด้านล่างหรือบน HackerBoxes Facebook Group นอกจากนี้ โปรดจำไว้ว่า คุณสามารถส่งอีเมลถึง [email protected] ได้ทุกเมื่อ หากคุณมีคำถามหรือต้องการความช่วยเหลือ

อะไรต่อไป? เข้าร่วมการปฏิวัติ ใช้ชีวิต HackLife รับกล่องอุปกรณ์แฮ็คสุดเจ๋งที่ส่งตรงถึงกล่องจดหมายของคุณทุกเดือน ท่องไปที่ HackerBoxes.com และสมัครสมาชิก HackerBox รายเดือนของคุณ

แนะนำ: