ฉันจะหาที่เก็บส่วนกลางของไลบรารี Arduino ที่มีอยู่ทั้งหมดได้ที่ไหน


11

ปัจจุบัน; เมื่อฉันเริ่มต้นโครงการ Arduino ใหม่พร้อมฮาร์ดแวร์ใหม่สิ่งแรกที่ฉันทำคือมองหาห้องสมุดบุคคลที่สามที่นำ Arduino มารองรับฮาร์ดแวร์นี้

สถานที่แรกที่ฉันดูคือ:

โดยทั่วไปฉันพบว่าไม่มีห้องสมุดสนับสนุนหรือห้องสมุดที่แตกต่างกัน (ค่อนข้างหายากเพียงแห่งเดียว) ในสถานที่ต่าง ๆ ที่มีเอกสารระดับต่าง ๆ ระดับการทดสอบที่แตกต่างกัน ...

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

ฉันพบว่ากระบวนการนี้ยุ่งยาก:

  • ค้นหาด้วยตนเองด้วยตัวเลือกต่าง ๆ ที่เป็นไปได้เอกสารที่ไม่ดีเสมอไป
  • ดาวน์โหลดคู่มือและติดตั้งไปยังห้องสมุด Arduino
  • ไม่มีการควบคุมเวอร์ชันในกระบวนการ (ไลบรารีทุกเวอร์ชันมีชื่อเหมือนกันดังนั้นจึงไม่สามารถอยู่ร่วมกันในโฟลเดอร์ไลบรารี Arduino ได้

ฉันหวังว่าจะมีที่เก็บส่วนกลางพร้อมห้องสมุดที่มีอยู่ทั้งหมดสำหรับ arduino ด้วย:

  • คำอธิบาย (ฮาร์ดแวร์ที่รองรับ, บอร์ดที่รองรับ)
  • รหัสแหล่งที่มา
  • เอกสาร
  • รุ่น

และเป็นเครื่องมือ (Arduino IDE หรือภายนอก) ในการเข้าถึงพื้นที่เก็บข้อมูลนี้ในเวลาสร้างโครงการ

ชนิดของmavenสำหรับ Arduino ในความเป็นจริง

ฉันเคยเห็นการสนทนาหลายครั้งครั้งหนึ่งที่เกิดขึ้นในฟอรั่ม Arduino แต่ดูเหมือนว่าพวกเขานำไปสู่ที่ไหน:

มีตัวเลือกอื่น ๆ ที่ทำให้เป็นสิ่งที่ใช้งานได้ (จากชุมชนหรือบุคคลทำไมไม่)?


นี้จะคล้ายกับ PyPi pypi.python.org/pypiและ virtualenv ในหลามถ้าใครต้องการอะนาล็อกในภาษาอื่น
Cybergibbons

แหล่งข้อมูลที่ดีอีกแหล่งคือ PJRC pjrc.com/teensy/td_libs.html
Cybergibbons

มีบางอย่างบอกฉันว่าวิกิแท็กห้องสมุดน่าจะเหมาะสำหรับสร้างฐานข้อมูล ~ 35,000 ตัวอักษรควรมีพื้นที่เหลือเฟือเพื่อพัฒนารายการที่ครอบคลุมมาก
asheeshr

@ AshsheshR ทำไมไม่? แต่ก่อนอื่นต้องระบุคำอธิบายที่ชัดเจนของสิ่งที่ต้องการ (และสิ่งที่เป็นตัวเลือก) สำหรับแต่ละรายการในไลบรารีเพื่อให้ 3template3 นี้สามารถติดตามได้สำหรับแต่ละรายการที่เพิ่มเข้ามา
jfpoilpret

@jfpoilpret Thats หัวข้อสำหรับการอภิปรายArduino Meta
asheeshr

คำตอบ:


4

คุณเพิ่งอธิบายปัญหาที่ บริษัท ที่ฉันทำงานกำลังพยายามแก้ไขอยู่ เราได้ launced เมื่อเร็ว ๆ นี้ผลิตภัณฑ์ที่เรียกว่าบิโคด ดูเหมือนสิ่งที่คุณกำลังมองหา

biicodeเป็นทั้งที่เก็บส่วนกลางออนไลน์สำหรับรหัสและเครื่องมือไคลเอนต์ที่มีคุณสมบัติ:

  • ใช้งานง่ายสำหรับผู้เริ่มต้นสามารถกำหนดค่าได้สำหรับผู้ใช้ขั้นสูงเพิ่มเติม
  • ความละเอียดการพึ่งพา, การเปลี่ยนผ่านเหมือนที่ Maven ทำ แต่ไม่มีไฟล์กำหนดค่า: อ่านการพึ่งพาโดยตรงจากซอร์สโค้ด
  • ที่เก็บส่วนกลางทุกคนสามารถอัปโหลดห้องสมุดได้ พวกเขาสามารถสำรวจสำรวจและค้นพบในเว็บ
  • การควบคุมเวอร์ชัน: มันตรวจสอบความเข้ากันได้ของเวอร์ชันและอนุญาตการอัปเดตที่ปลอดภัยของการอ้างอิง
  • คุณสามารถใช้มันกับโปรแกรมแก้ไขข้อความใด ๆ (มันมีการสนับสนุน eclipse เสริม)
  • มันจัดการการตั้งค่าโครงการและการคอมไพล์แฟลชที่สร้างเฟิร์มแวร์ไปยังคณะกรรมการ
  • มีการตรวจสอบพอร์ตอนุกรมที่ดีเป็นบวก

คุณสามารถดูการสาธิตอย่างรวดเร็วที่นี่และอ่านเพิ่มเติมในเอกสาร


ตอบเมื่อปี 2014 มันยังผลิตอยู่หรือไม่?
parohy

Nope อยู่ในขณะนี้ conan.io จาก JFrog และไม่ทราบว่าถ้าสนับสนุน Arduino อีกต่อไป
hithwen

4

ตั้งแต่คำถามนี้ถูกถามครั้งแรกตอนนี้มี Arduino Library Manager ที่สร้างไว้ใน Arduino IDE คุณสามารถค้นหาและติดตั้งไลบรารีที่นั่น

มีข้อมูลเกี่ยวกับวิธีการทำงานของตัวจัดการไลบรารีที่นี่: https://github.com/arduino/Arduino/wiki/Library-Manager-FAQ

อย่างไรก็ตามไม่มีเว็บไซต์อย่างเป็นทางการที่แสดงรายการห้องสมุดดังนั้นเมื่อเร็ว ๆ นี้ฉันได้สร้างเว็บไซต์ที่ไม่เป็นทางการตามข้อมูลเดียวกันใน Arduino Library Manager:

http://www.arduinolibraries.info/


3

Arduino สนามเด็กเล่น LibraryListและรายการห้องสมุดมาตรฐานปรากฏเป็นหน้าเว็บอย่างเป็นทางการว่า


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

2

หากคุณต้องการสร้างรีจิสทรีด้วยตัวคุณเองคุณอาจต้องการดูnpmผู้จัดการแพ็คเกจของNode.jsซึ่งเป็นโอเพ่นซอร์สและคล้ายกันมากในขอบเขตที่ต้องการให้คุณอธิบาย Npm เป็นทั้ง:

  1. รีจีสทรีกลางที่มีข้อมูลเมตาเกี่ยวกับแต่ละไลบรารี:
    • ชื่อ, คำอธิบาย, คำสำคัญ, โฮมเพจ, ผู้แต่ง, ผู้มีส่วนร่วม
    • หมายเลขรุ่นในหลักการที่สอดคล้องกับการกำหนดเวอร์ชันแบบ semantic
    • URL ของแหล่งเก็บข้อมูล (svn, git, github, gitlab, bitbucket ... )
    • ข้อมูลความเข้ากันได้ (ในกรณีนี้มันเกี่ยวกับรุ่นของโหนด)
    • อนุญาต
    • การอ้างอิง
  2. เครื่องมือบรรทัดคำสั่งสำหรับ:
    • ค้นหารีจิสตรี
    • การดาวน์โหลดและการติดตั้งแพคเกจซ้ำตามการอ้างอิงของพวกเขาซ้ำ
    • การเผยแพร่และปรับปรุงแพ็คเกจของคุณเองในรีจิสทรี

ดูตัวอย่างหน้าของไลบรารียอดนิยมและไฟล์ JSON ที่เก็บข้อมูลเมตา


1

ไม่มีเลย น่าเสียดายที่คุณจะต้องค้นหาแต่ละห้องสมุดที่คุณสนใจด้วยตนเอง

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


แล้วคุณจะแนะนำอะไรถ้าเราจะสร้างพื้นที่เก็บข้อมูลเช่นนั้น?
jfpoilpret

เอ่อ .... เริ่มต้นเลยเหรอ? คุณหมายถึงคำแนะนำอะไร? มันเป็นเว็บไซต์ อาจเพิ่มสิ่งที่ package-manager ในเครื่องมือแก้ไขข้อความ arduino ถ้าคุณเป็นจริงหรือไม่ ปัญหาที่สำคัญเช่นเคยเป็นไปได้รับคนที่จะจริงใช้มัน
Connor Wolf

1
ตรงไปตรงมาแม้ว่าคุณจะเพิ่มตัวจัดการแพ็กเกจ fancypants ลงในตัวแก้ไขข้อความของอาร์ดิโนฉันก็ไม่รู้ว่าคุณจะได้รับการยอมรับแบบใดเพราะอิดิโอดิโนนั้นน่ากลัวและผู้คนมักจะหยุดใช้ในลำดับสั้น ๆ . ดังนั้นคุณเกือบจะต้องเป็นผู้จัดการแพคเกจแยกต่างหากดังนั้นฉันเกือบจะเพียงแค่พูดว่าพื้นฐานเว็บไซต์ที่มีค่าดัชนีของห้องสมุดเป็นประกาศแจ้งความสั้นและการเชื่อมโยงไปยังที่ที่พวกเขากำลังจริงจัดเป็นทางออกที่ดีที่สุด
Connor Wolf

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

@jfpoilpret - ปัญหาเกี่ยวกับเครื่องมือภายนอกเช่นเดียวกับผู้จัดการแพ็คเกจการแก้ไขการพึ่งพาและการจัดการข้อกำหนดรุ่น คนอาร์ดูโน่ดูเหมือนจะไม่ใส่ใจด้วยการรักษาความเข้ากันได้แบบย้อนหลังและห้องสมุดจำนวนมากต้องการ "arduino verson {blah}" ฉันคิดว่ารายการอ้างอิงเป็นทางออกที่ดีที่สุด สิ่งที่ซับซ้อนมากขึ้นสามารถมาในภายหลัง
Connor Wolf

0

Arduino IDE และไลบรารี่ที่เกี่ยวข้องนั้นรวมอยู่ในซอฟต์แวร์ที่ติดตั้งได้ในที่เก็บ OS ส่วนใหญ่ น่าเสียดายที่เวอร์ชันในที่เก็บเหล่านี้มักจะเป็นเวลาหลายเดือนหรือเป็นปีที่ล้าสมัย นี่จะดูเหมือนว่าปัญหาที่แท้จริงคือการทำให้ผู้จัดการพื้นที่เก็บข้อมูลของ OS รวมเอารีลีสใหม่ออกมาเมื่อพร้อมใช้งาน

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

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

อีกทางเลือกหนึ่งคือไปที่หน้าแรกของ Arduino.org และทำตามคำแนะนำเพื่อดาวน์โหลดและติดตั้ง IDE ล่าสุดและไลบรารีที่เกี่ยวข้อง นี่อาจจะอยู่ในรูปแบบของไฟล์. tar.gz ดังนั้นคุณจะต้องรู้วิธีคลายซิปถอดออกและสร้างซอฟต์แวร์ที่จำเป็น


0

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

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

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

และถ้าหาก Big Central Athority ของคุณจะไม่บังคับให้ฉันบังคับใช้แรงงานฟรีสำหรับพวกเขาคุณจะทำอะไรเกี่ยวกับห้องสมุดของฉันที่เปิดใช้งานหนึ่งในการใช้งานฮาร์ดแวร์ทั่วไปบางอย่างเป็นพิเศษและเกี่ยวกับฉันที่ใช้ร่วมกันกับใครก็ตาม แก้ปัญหาฟังก์ชั่น HW ทั้งหมดอย่างสมบูรณ์ในเรื่องที่เกี่ยวกับมืออาชีพและจัดทำเอกสารให้มากที่สุดเท่าที่ฉันจะสบายใจที่จะใช้เวลาว่างของตัวเองด้วยเอกสารประกอบ และจะเกิดอะไรขึ้นถ้ามีไลบรารีอื่นสำหรับ HW เดียวกันซึ่งจะเปิดใช้งานส่วนอื่นของฟังก์ชันหรือจะใช้ API อื่นและวิธีอื่นในการแก้ไขปัญหาทั้งหมด

คือฉันซื้อโมดูล 7 เซ็กเมนต์หลาย ๆ อันและมี "ไลบรารี่อย่างเป็นทางการ" จากผู้ผลิต ฉันสร้างห้องสมุดอื่นสำหรับโมดูลเดียวกัน เกิดอะไรขึ้น ห้องสมุดของฉันควรอยู่ใน Central Repository ว่าเป็น "ห้องสมุดเดียวสำหรับ HW นี้หรือควรจะมี" ห้องสมุดที่เป็นทางการจากผู้ผลิต " โปรดทราบว่าหากมีทั้งคู่มากกว่าจะทำให้จุดไลบรารีที่ "จุดเดียวและจุดเดียว" ของคุณร้องขอ หากคุณไม่อนุญาตให้ผู้ผลิตหนึ่งรายชื่อ "คุณสมบัติเดียวเท่านั้น" จะขาดคุณสมบัติหลายอย่างเช่นบัฟเฟอร์ในตัวสำหรับตัวเลขส่วนต่อประสานวัตถุอย่างง่ายตัวอย่างง่ายๆวิธีใช้งานและจะมีการขึ้นต่อกันอย่างยากลำบากในตัวจับเวลาหนึ่งและทั่วไป ไม่ใช่ออบเจ็กต์เพียง API ที่ใช้งานได้ซึ่งจะต้องการให้ผู้ใช้แบ่งจำนวนเต็มเป็นหลักเดียวอย่างใด - ไม่ฟังดูดีเกินไป หากคุณไม่อนุญาตให้ใช้ไลบรารีของฉันผู้ใช้จะมีด้านบน แต่จอแสดงผลของเขาจะรีเฟรชเพียง 10x ต่อวินาทีด้วยการกระพริบและปล่อยโกสต์ตัวเลขอื่น ๆ ทั่วทุกที่ในขณะที่ใช้โปรเซสเซอร์อย่างเต็มที่และเอกสารเป็นภาษาจีนเป็นหลัก และผู้ใช้จะพลาดอัตรารีเฟรช 100x ต่อวินาทีโดยแทบไม่มีการใช้งานตัวประมวลผลตัวเลขที่ดีและตัวอักษรที่สะอาดดี (อาจกำหนดโดยผู้ใช้) - ยังไม่ดี

ในสถานะปัจจุบันของผู้ใช้ที่วุ่นวาย (อาจเป็นคุณหรือใครก็ได้) สามารถใช้ห้องสมุดได้ซึ่งเหมาะกับความต้องการของเขามากขึ้น (ไม่ว่าจะเป็นความเรียบง่ายและการสนับสนุนจำนวนเต็มดั้งเดิมหรือไม่ว่าจะเป็นการรีเฟรชที่รวดเร็ว การทำอันดับสามด้วยการรีเฟรชอย่างรวดเร็วและการจัดการจำนวนเต็มอย่างง่ายและชุดอักขระที่ผู้ใช้กำหนดพร้อมด้วย object Object API ที่ดีและเอกสารที่ครบถ้วน ต้องการเพียงคนเดียวที่มีเวลาและความทุ่มเททำให้ง่ายสำหรับผู้เริ่มต้นและทักษะภาษาอังกฤษบางอย่างและความรู้พื้นฐานเกี่ยวกับวัตถุและบรรจุ "ห้องสมุด Arduino อย่างเป็นทางการ" อย่างไรดังนั้น IDE จึงสามารถนำเข้าได้อย่างง่ายดาย (และบุคคลดังกล่าวควรทำและมีส่วนร่วมกับ Arduino library packager)

ฉันจะไม่ทำ - สำหรับความต้องการของฉันคือ API การใช้งานที่ดีกว่าและง่ายกว่าใช้ไบต์น้อยกว่าจากหน่วยความจำและรอบ CPU น้อยลงและฉันไม่อยากปรับปรุงห้องสมุดในวิธีที่ฉันจะไม่ใช้ นอกจากนี้ฉันไม่ได้ใช้ Arduino IDE ฉันใช้ Makefile อย่างง่ายเพื่อสร้างและอัปโหลดโปรแกรมดังนั้นฉันจึงสามารถใช้โปรแกรมแก้ไขข้อความที่ดี (เป็นกลุ่มในกรณีของฉัน) และไม่ต้องต่อสู้กับล้อเลียน IDE-Notepad

ภายใต้ Big Central Authority enforsing โมเดลของคุณฉันจะไม่สนใจเกี่ยวกับการใช้ Arduino เลยและคุณจะติดอยู่กับเวอร์ชั่นภาษาจีนถ้ามีเลย (เพราะมันจะไม่ทำให้มันขาดเอกสารภาษาอังกฤษที่ดีและรูปแบบแพ็คเกจที่เหมาะสมด้วย) .


0

http://downloads.arduino.cc/lไลบรารี/library_index.jsonแสดงรายการของไลบรารีทั้งหมดที่มีอยู่ใน Arduino Library Manager

ฉันใช้ไฟล์นี้เพื่อสร้างhttps://github.com/scls19fr/arduino_lไลบรารี_searchเป็นสคริปต์ Python Pandas เพื่อค้นหาไลบรารี Arduino ที่ตรงกับคำหลักและส่งออกไปยังไฟล์ Excel

นอกจากนี้คุณยังสามารถค้นหาไลบรารี Arduino โดยใช้:

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.