สารบัญ:

การใช้ PC RAM กับ Arduino ผ่านพอร์ตอนุกรม: 7 ขั้นตอน
การใช้ PC RAM กับ Arduino ผ่านพอร์ตอนุกรม: 7 ขั้นตอน

วีดีโอ: การใช้ PC RAM กับ Arduino ผ่านพอร์ตอนุกรม: 7 ขั้นตอน

วีดีโอ: การใช้ PC RAM กับ Arduino ผ่านพอร์ตอนุกรม: 7 ขั้นตอน
วีดีโอ: วิธีแก้ปัญหา Arduino ไม่เจอคอมพอร์ต COM Port ลงโปรแกรมไม่ได้ ใช้กับ ESP8266 ESP32 ได้ Arduino IDE 2 2024, พฤศจิกายน
Anonim
PC RAM-การใช้งานกับ Arduino ผ่าน Serial-port
PC RAM-การใช้งานกับ Arduino ผ่าน Serial-port

เพื่อนของฉันได้รับแรงบันดาลใจจากโครงการ Arduino เล็กๆ ของเขา โครงการเล็กๆ นี้เกี่ยวข้องกับ Arduino UNO R3 ซึ่งกำลังอ่านข้อมูลโดยโปรแกรมที่สร้างใน Arduino IDE ที่ส่งไปยังพอร์ตอนุกรม (พอร์ต USB) โดยโปรแกรม C# ที่สร้างใน Visual Studio เนื่องจากนี่เป็นงานสร้างครั้งแรกของฉันซึ่งรวมถึง Arduino ฉันจึงค่อนข้างพอใจกับผลลัพธ์ที่ได้ และฉันได้เรียนรู้เล็กน้อยเกี่ยวกับวิธีเชื่อมต่อสายไฟและวิธีตั้งโปรแกรม Arduino เนื่องจากฉันไม่ใช่ผู้เชี่ยวชาญในการเขียนโปรแกรมหรือจัดการไมโครคอนโทรลเลอร์ในทางใดทางหนึ่ง คุณสามารถคาดหวังคำแนะนำพื้นฐานที่ค่อนข้างสวย แต่ฉันจะพยายามอธิบายโปรเจ็กต์ให้คุณอย่างเต็มที่ หวังว่าคุณจะสนุกกับคำแนะนำนี้ โครงการนี้สามารถพัฒนาได้อีกมาก ในอนาคต ฉันคิดว่าฉันจะสร้างแดชบอร์ดที่คุณสามารถตรวจสอบการใช้งาน RAM, การใช้ CPU และ GPU-temp และ…คุณคงเข้าใจดีว่า "ทุกวันนี้มีความเป็นไปได้มากมาย":)

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ

สิ่งที่คุณต้องการ
สิ่งที่คุณต้องการ

1x Arduino UNO R3

1x USB A ชายกับ Type B ปลั๊กสายเคเบิล

ตัวต้านทาน 12x220 OHM

สายไฟ 12x (ฉันใช้สายลำโพง ใช้งานได้ดี) และสายจัมเปอร์ตัวผู้ถึงตัวเมีย 12x หรือสายจัมเปอร์ตัวผู้ถึงตัวผู้ 12x (คุณเลือกได้)

เข็มตรง 12x (หมุดโลหะเหล่านั้นที่ใช้มาในแพ็คเกจเดียวกันกับ Arduino เอง) (ดูภาพ)

1x7 Segment 4 Common Cathode 0.36 RED LED Digital Display

1x หัวแร้งพร้อมหัวแร้ง

เครื่องปอกสายไฟ 1x

1x ท่อทองแดง (อย่างน้อย 11 มม. ภายใน Ø (เส้นผ่านศูนย์กลาง) ถ้าใช้ 2 ท่อทองแดงเช่นฉัน)

แรปลวดหดด้วยความร้อน (2.5 มม. Ø(เส้นผ่านศูนย์กลาง))

ไม้กระดานบาง 1x (คุณสามารถออกแบบตามที่คุณต้องการ ของฉันดูงุ่มง่าม ฉันคิดว่า:) ทำสิ่งที่คุณต้องการดู เครื่องพิมพ์ 3 มิติจะมีประโยชน์ที่นี่)

ขั้นตอนที่ 2: การเดินสายไฟ

การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ

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

แต่ถ้าคุณรู้เรื่องของคุณอย่างฉัน *เอ๊ะ* คุณสามารถเริ่มบัดกรีทุกอย่างพร้อมกันได้ !!!แต่ไม่ใช่อาร์ดูโน่!!!

มันค่อนข้างตรงไปตรงมา รูปภาพบอกทุกอย่าง ฉันคิดว่า:)

หัวแร้งจะมีประโยชน์ที่นี่ เนื่องจากเราจำเป็นต้องบัดกรีสายไฟเข้ากับหมุดของจอแสดงผลและตัวต้านทานกับหมุด COM 4 ตัวบนจอแสดงผล (COM1, COM2, COM3, COM4) ดังที่แสดงในภาพแรก (ตัวต้านทานไม่จำเป็นต้องหันไปทางเดียวกัน แต่ฉันชอบความสม่ำเสมอ ดังนั้น…)

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

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

ฉันยังแนะนำให้ประสานสิ่งต่าง ๆ "หมุดโลหะพลาสติกสีดำ" ที่ปลายสายไฟ (ดูสองภาพสุดท้าย)

เมื่อคุณบัดกรีสายไฟเข้ากับหมุดของจอแสดงผลแล้ว คุณสามารถเริ่มเชื่อมต่อสายไฟกับ Arduino UNO ของคุณได้ (ดูภาพแรก)

ขั้นตอนที่ 3: การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม

การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม
การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม
การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม
การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม
การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม
การติดตั้ง Arduino IDE และค้นหาพอร์ตที่เหมาะสม

ก่อนอื่นคุณต้องติดตั้ง Arduino IDE (ใช้ลิงก์นี้: https://www.arduino.cc/en/Main/Software) ขึ้นอยู่กับระบบปฏิบัติการที่คุณมี (ฉันใช้ Windows 10) คุณต้องดาวน์โหลดให้ถูกต้อง ดังนั้นสำหรับ Windows 8.1^ คุณสามารถไปที่ร้านค้าของ Microsoft และดาวน์โหลดซอฟต์แวร์ Arduino IDE ที่นั่น (หรือตามลิงก์ด้านบน)

ตอนนี้คุณต้องเชื่อมต่อ Arduino UNO กับพอร์ต USB ของพีซีและค้นหาพอร์ต COM ที่คุณเชื่อมต่อกับ Arduino แต่อย่างไร คุณสามารถไปที่การจัดการอุปกรณ์บน windows ได้โดยคลิกขวาที่โลโก้ windows บนทาสก์บาร์และคลิกที่ DEVICE MANAGER (ดูภาพ) ควรมีชื่อ USB-serial ซึ่งเป็นพอร์ตที่ถูกต้อง

จากนั้นในโปรแกรม Arduino IDE ให้คลิกเครื่องมือ จากนั้นพอร์ตและตั้งค่าเป็นพอร์ตที่ถูกต้อง (สำหรับฉันมันคือ COM4)

ขั้นตอนที่ 4: รหัสสำหรับ Arduino UNO

รหัสสำหรับ Arduino UNO
รหัสสำหรับ Arduino UNO
รหัสสำหรับ Arduino UNO
รหัสสำหรับ Arduino UNO
รหัสสำหรับ Arduino UNO
รหัสสำหรับ Arduino UNO

ตอนนี้เรามาเริ่มกันที่ส่วนที่น่าสนใจ CODING กันเลย!

ขั้นแรก คุณจะต้องกำหนดหมุดสิบสอง (12) ของจอแสดงผลให้กับตัวแปรต่างๆ (ดูรูปที่ 1)

(COM-pins ซึ่ง "ตำแหน่ง" จะสว่างขึ้น)

จากนั้นคุณต้องสร้างตัวแปรเพิ่มเติมและอาร์เรย์ที่จะรับอักขระที่พอร์ตได้รับและวางไว้ในอาร์เรย์ (ดูภาพที่ 2)

ตอนนี้คุณต้องตั้งค่าพินหรือพอร์ตบน Arduino เป็น OUTPUT (ดูภาพที่ 3)

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

ตอนนี้เรากำลังจะสร้างฟังก์ชันสำหรับตัวเลข 1-9 บนจอแสดงผล (ดูภาพที่ 4, 5 และ 6)

เนื่องจากฉันจะไม่แสดงสิ่งใดบนตำแหน่งแรกบนจอแสดงผล ฉันจึงสร้างฟังก์ชันสาม (3) สำหรับตำแหน่งที่เหลือ (แต่ละตำแหน่งสำหรับหนึ่งตำแหน่ง) คุณต้องสร้างฟังก์ชันสำหรับตำแหน่งหลักทุกตำแหน่งซึ่งจะแสดงตัวเลขเฉพาะ (ดูภาพที่ 7, 8 และ 9)

ฉันยังสร้างฟังก์ชันรีเซ็ตเพื่อให้ข้อมูลที่แสดงบนหน้าจอมีความน่าเชื่อถือมากขึ้น (ดูภาพที่ 10)

ตอนนี้สำหรับลูปซึ่งจะวนซ้ำเมื่อโปรแกรมกำลังทำงาน

ขณะนี้คุณสามารถคอมไพล์และอัปโหลดโค้ดไปยัง Arduino ได้โดยคลิกปุ่มอัปโหลด (โปรแกรมจะคอมไพล์และอัปโหลดไปยัง Arduino หากคอมไพล์สำเร็จ) (ดูภาพที่ 11)

ขั้นตอนที่ 5: รหัสสำหรับส่งการใช้ RAM ไปยัง Serial Port (C#)

รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)
รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)
รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)
รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)
รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)
รหัสสำหรับส่ง RAM การใช้งานไปยัง Serial Port (C#)

ตอนนี้ฉันจะแสดงวิธีหนึ่งในการส่งข้อมูลไปยังพอร์ตอนุกรมใน C #

ฉันใช้ visual studio 2017 ในการเข้ารหัส รหัสไม่นานเลย แต่ต้องใช้เวลาสักพักกว่าจะเข้าใจบางส่วน เช่น ทำอย่างไรให้โปรแกรมทำงานเมื่อคอมพิวเตอร์เริ่มทำงานและไม่แสดงหน้าต่างคอนโซลที่น่าเกลียดที่เดสก์ท็อปหรือทาสก์บาร์ เอาล่ะ พอพูดจาโผงผาง รับสิทธิ์ในรหัส!

ดังนั้นเพื่อเริ่มต้นด้วยโค้ดโปรเจ็กต์นี้ใน visual studio คุณสามารถเริ่มต้นได้โดยคลิกที่ไฟล์และโปรเจ็กต์ใหม่ (ดูรูปที่ 1) จากนั้นเลือก VISUAL C# จากนั้นเลือก WINDOWS CLASSIC DESKTOP และสุดท้ายคลิก CONSOLE APP (. NET FRAMEWORK) และ แน่นอนตั้งชื่อตามที่คุณต้องการและบันทึกไว้ทุกที่ที่คุณต้องการ (ดูภาพที่ 2)

ตอนนี้คุณสามารถเริ่มการเข้ารหัสโปรแกรม…

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

และรหัสหลักมีลักษณะดังนี้ (ดูภาพที่ 4) อย่าลืมใช้ PORT และ BAUD-SPEED (9600) เดียวกันกับรหัสใน ARDUINO UNO Code !!! (ดูภาพที่ 5) และอย่าลืมตรวจสอบว่าคุณมี RAM เท่าใด ฉันมี RAM 8 GB (7.90 GB) ติดตั้งอยู่ นั่นคือเหตุผลที่ฉันมีรหัส 7.90 (ดูรูปที่ 4)

หากคุณสงสัยว่าทำไมฉันถึงมี DllImports ก็เพราะว่าฉันต้องการซ่อนหน้าต่างทั้งหมดจากผู้ใช้ ในกรณีนี้คือ ME เพราะโปรแกรมจะเริ่มทำงานโดยอัตโนมัติเมื่อคอมพิวเตอร์เริ่มทำงาน แต่ฉันจะอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้ในภายหลัง

ณ จุดนี้ จะเป็นการดีที่สุดหากคุณทดสอบทั้งโปรแกรม Arduino และ C# และตรวจดูให้แน่ใจว่าไม่มีข้อผิดพลาด เป็นสิ่งสำคัญมากที่คุณจะต้องรันโปรแกรม Arduino ก่อนที่คุณจะเริ่มรันโปรแกรม C# เพราะไม่เช่นนั้นโปรแกรมจะไม่ทำงาน

ตอนนี้เมื่อเขียนโปรแกรมแล้ว คุณสามารถนำทางไปยังโฟลเดอร์โปรแกรมได้จนกว่าคุณจะพบโฟลเดอร์ bin และเปิดมัน จากนั้นดับเบิลคลิกที่โฟลเดอร์ debug และที่นั่น *วุ้ย* แอปพลิเคชั่น/โปรแกรมสีทองของคุณ - คลิกแล้วคลิกสร้างทางลัด… จากนั้นบนแป้นพิมพ์ให้กด (windows)⊞ -key + R-key จากนั้นเขียนในกล่องข้อความ: shell:startup แล้วกด (enter/return)↵-key ตอนนี้เมื่อคุณอยู่ในโฟลเดอร์นั้น ฉันต้องการให้คุณลากทางลัดที่สร้างของแอปพลิเคชันของคุณไปยังโฟลเดอร์เริ่มต้น เท่านี้ก็เรียบร้อย… ตอนนี้โปรแกรมจะเริ่มทำงานเมื่อคุณบูทเครื่องคอมพิวเตอร์

ตอนนี้ทุกอย่างควรทำงาน ถ้าไม่ คุณควรเริ่มค้นหาปัญหา:)

ขั้นตอนที่ 6: สร้างเคส

การสร้างเคส
การสร้างเคส
การสร้างเคส
การสร้างเคส
การสร้างเคส
การสร้างเคส

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

เห็นได้ชัดว่าเป็นการดีที่จะทดสอบเพื่อไม่ให้มีสิ่งใดหลวมตลอดกระบวนการสร้างทั้งหมดโดยเสียบเข้ากับคอมพิวเตอร์ของคุณแล้วเริ่มโปรแกรม C# (อย่าลืมใส่ Arduino ไว้ในพอร์ต USB เดียวกันเหมือนเมื่อก่อน)

ก่อนอื่น คุณต้องใช้กระดานไม้ที่มีความหนาประมาณ 4 มม. (0.157 นิ้ว) ดูภาพที่ 1 สำหรับรายละเอียดการวัดทุกชิ้น

ฉันเป็นปืนกาวร้อนเพราะมันง่ายและรวดเร็ว ฉันขอแนะนำ แต่ขึ้นอยู่กับคุณว่าจะใช้อะไร…

ป.ล. ฉันคิดว่ารูปภาพจะอธิบายกระบวนการได้ดีขึ้นเล็กน้อย แต่อย่าลืมอ่านสิ่งนี้: ฉันใช้มีดยูทิลิตี้ใบมีดสแน็ปเพื่อตัดชิ้นส่วนออก มันใช้เวลาสักครู่ แต่เมื่อเสร็จแล้ว คุณสามารถตัดออกที่ ขนาดของจอแสดงผลจะเป็น (บนชิ้นส่วนขนาด 60 x 45 มม.) คุณต้องติดตั้งจอแสดงผลให้แน่นใน "ช่องแสดง" เมื่อเสร็จแล้วจึงจะสามารถเจาะรูที่ด้านล่างของ "กล่องแสดง" ได้ เพื่อให้พอดีกับท่อทองแดง สิ่งสำคัญคือต้องติดตั้งท่อให้แน่นในรู ตอนนี้คุณสามารถเริ่มขับสายไฟจากจอแสดงผลผ่านท่อได้ (หากคุณใช้ท่อสอง (2) ท่อ คุณสามารถแบ่งจำนวนสายเคเบิลเพื่อให้พอดีกับท่อ (หก (6) สายในแต่ละท่อ…)(ดู ภาพที่ 2, 3, 4, 5, 6 และ 7))

ป.ล. ฉันไม่คิดว่ามันจำเป็น แต่ถ้าคุณต้องการ คุณสามารถเจาะรูที่ด้านล่างเพื่อให้ Arduino สามารถ "หายใจ" ได้เล็กน้อย (ดูภาพที่ 10)

ตอนนี้คุณจะต้องเจาะรูสำหรับท่อบนกระดาน "ฐาน" (ดูรูปที่ 8) เมื่อคุณติดชิ้นส่วนทั้งหมดเข้าด้วยกัน แต่อย่าลืมปล่อยด้านหนึ่งไว้ตลอดเวลา เพื่อที่คุณจะได้นำ Arduino ออกไปในกรณีที่ใช้งานที่อื่น ฉันใช้แม่เหล็กขนาดเล็กสอง (2) ชิ้นและชิ้นโลหะขนาดเล็กสอง (2) ชิ้นเพื่อให้แน่ใจว่าผนังด้านข้างเข้าที่ คุณสามารถเริ่มเสียบสายไฟ (ถ้าคุณทำเหมือนฉันคือใช้สายลำโพงปกติคุณสามารถเชื่อมต่อสายกับสายจัมเปอร์ตัวเมียกับตัวผู้แล้วต่อกับ Arduino) ให้แน่ใจว่าได้เสียบพอร์ตที่ถูกต้องบน Arduino. (ดูภาพสุดท้าย)

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

ขั้นตอนที่ 7: มันยังมีชีวิตอยู่และใช้งานได้

อย่าลืมถามฉันหากคุณไม่แน่ใจเกี่ยวกับบางอย่างเกี่ยวกับโครงการนี้ และฉันจะพยายามอธิบายให้คุณฟังอย่างดีที่สุด!

(ฉันจะแนะนำวิธีการทำให้โค้ดดียิ่งขึ้นไปอีก เนื่องจากฉันไม่ใช่ผู้เชี่ยวชาญใน ARDUINO UNOS)

แนะนำ: