สำหรับโปรแกรมเมอร์ Arduino ปรุงรสหรืออย่างอื่น?


11

พื้นหลังของฉัน:

ฉันได้ทำซอฟต์แวร์มาระยะหนึ่งแล้วและฉันมีความเชี่ยวชาญเพิ่มขึ้นหรือลดลงใน C, C ++, Java, Ruby, Erlang, Haskell, Lua และ Python ฉันเข้าเรียนในห้องปฏิบัติการทางอิเล็กทรอนิกส์ด้วย แต่นอกเหนือจากห้องแล็บสั้น ๆ ที่มีปั๊มมันเป็นเรื่องเกี่ยวกับการรับสัญญาณและ A / D และจากที่นั่นเป็น x86 ด้วย LabView ( ไม่ใช่ตัวเลือกของฉันในการเขียนโปรแกรมสภาพแวดล้อม) เพื่อกลับไปซ่อมฮาร์ดแวร์ด้วยตาต่อบ้านอัตโนมัติ (ฉันคิดว่าฉันสามารถทำได้ดีกว่านี้ได้ในราคาต่ำกว่า $ 500)

คำถาม:

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

(PS ฉันมีเวลามากกว่าเงิน)

คำตอบ:


4

เท่าที่บอร์ดไมโครคอนโทรลเลอร์ eval พร้อมที่จะใช้งานนอกประตูก็มีตระกูลอาร์ดิโน่แน่นอน แต่ให้พิจารณา Launchpad msp430 ด้วยราคา $ 4.30 ชุดคำสั่งที่ดีและมีประสิทธิภาพใกล้เคียงกับ avr โดยมีการใช้พลังงานน้อย / ต้นทุนต่ำ สำหรับ $ 20 คุณจะได้รับการค้นพบ stm32f4 (เพื่อไม่ให้สับสนกับการค้นพบบรรทัดค่า stm32 หรือตระกูล stm8) ซึ่งโดยทั่วไปจะน้อยกว่าที่คุณจะจ่ายสำหรับ arduino ที่ใช้งานได้ ($ 35- $ 50) แต่วิ่งเป็นวงกลมรอบ หน่วยแคช ฯลฯ ในตอนท้ายของช่วงราคา arduino มีแขนอีกข้างหนึ่ง mbed (mbed.org) ซึ่งน่าจะใกล้เคียงที่สุดกับประสบการณ์กล่องทราย arduino

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

คุณจะได้รับประสิทธิภาพที่มากขึ้นต่อสู้กับเจ้าชู้และอื่น ๆ ถ้าคุณรับผิดชอบและความรู้มากขึ้นเกี่ยวกับสิ่งที่เกิดขึ้น ฉันขอแนะนำทั้งสามแพลตฟอร์ม (avr, msp, arm / thumb) และผู้ค้าหลาย ๆ คน (avr และ msp ถูกล็อคไว้ แต่ arm ถูกจำหน่ายโดยทุกคนที่มีอุปกรณ์ต่อพ่วงและ I / O) ที่ต่างกัน ตัวอย่างเช่นคุณอาจเคยชินกับแพลตฟอร์มที่ไม่มี pull ups บนบรรทัด gpio และต้องใช้ส่วนประกอบภายนอกที่ชิพหรือผู้จำหน่ายรายอื่นให้บริการนั้นบนชิปที่ราคาและประสิทธิภาพเทียบเคียง ในทำนองเดียวกันคุณอาจต้องการทุบพอร์ตอนุกรมหรือบัส spi บิต แต่พบว่าสำหรับเงินพลังงานขนาดและอื่น ๆ ผู้ขายอื่น ๆ บางรายมีฮาร์ดแวร์เพื่อช่วยในอินเทอร์เฟซนั้น

หากไม่มีสิ่งใดที่เป็นประโยชน์ที่สุดของคุณในฐานะโปรแกรมเมอร์และผู้ที่ต้องการเข้าร่วมงานอดิเรกอิเล็กทรอนิกส์เพื่อรับทราบข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้นนอกกล่องทราย วิธีที่จะเข้าสู่โลกอิเล็กทรอนิกส์ของงานอดิเรกนี้ arduino เป็นการเปลี่ยนแปลงที่สะดวกสบายมากจากการเขียนโปรแกรมประยุกต์บนระบบปฏิบัติการ sparkfun มีชุดอุปกรณ์บางอย่างในขณะนี้ซึ่งรวมถึงส่วนต่อประสานแบบอนุกรมและอีกสองสามรุ่นที่มีชุด lilypad (แพลตฟอร์ม arduino) และอาจเป็นชุดมืออาชีพทั้งคู่ไม่ได้เป็นรูปแบบของเกราะป้องกัน arduino ถ้าเป็นเช่นนั้น sparkfun จำหน่ายกล่องขายปลีกและรสชาติอื่น ๆ ของ arduinos, uno และอื่น ๆ (บอร์ด st และ msp ที่กล่าวถึงข้างต้นคุณควรเริ่มต้นที่เว็บไซต์ของ ti หรือ st หรือไปที่ github.com/dwelch67 และฉันมีลิงก์ไปยังบอร์ดต่าง ๆ ในของฉัน ตัวอย่าง).


8

ฉันยังเป็นคนที่แต่งตัวประหลาดซอฟต์แวร์ทุกวัน ประมาณสิบปีที่แล้วฉันเริ่มต้นด้วยการประทับตราพื้นฐานจาก Parallax และหลังจากผ่านพ้นช่วงเวลาอันยาวนานฉันเพิ่งกลับเข้าสู่โครงการฝังตัว ตอนแรกฉันดูที่ Arduino และส่วนต่าง ๆ ของมันและรู้ว่าฉันสามารถข้ามบอร์ดราคาของบอร์ด Arduino และคว้า ATMega168 ได้แล้วเริ่มต้นอีกครั้ง มันใช้งานได้เป็นส่วนใหญ่ แต่บ่อยครั้งที่ฉันพบเจอปัญหาที่บอร์ดแบบ prebuilt น่าจะดีเพราะฉันไม่สามารถเมาในชุดประกอบพื้นฐานได้

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

โชคดี!


6

Arduino เป็นบทนำที่ดีในการเขียนโปรแกรมไมโครคอนโทรลเลอร์

มีความแตกต่างอย่างมากระหว่างการเขียนซอฟต์แวร์สำหรับพีซีและการเขียนเฟิร์มแวร์สำหรับไมโครคอนโทรลเลอร์

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

แต่อย่างที่ฉันพูดมันเป็นการเปิดตัว

เริ่มต้นด้วย Arduino จากนั้นไปยังสิ่งที่ใหญ่กว่าและดีกว่า

ฉันใช้ไมโครคอนโทรลเลอร์ตระกูล PIC เป็นอย่างมาก แต่ฉันก็ยังมี Arduino Li'l ที่ไว้ใจได้ที่ฉันใช้สำหรับทดลองความคิดและทดสอบสิ่งต่าง ๆ อย่างรวดเร็ว


6

เนื่องจาก“ Arduino” ประกอบด้วยหลายสิ่งฉันจึงคิดว่าอาจเป็นประโยชน์ที่จะดูแยกจากกัน:

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

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

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


1
ฉันไม่รู้ว่าพวกเขาสามารถเรียก IDE ที่น่าประหลาดใจได้อย่างไร เป็นชิ้นที่น่ากลัวที่สุดของ[ลบออกลบล้าง] ที่จินตนาการได้ ฉันเกือบจะติดตั้งแอนจูตาเพื่อทำทุกอย่างให้กับฉันแล้วตอนนี้ที่ IDE ของ Arduino ไม่มาก
Majenko

4

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

adruino เป็นไมโครคอนโทรลเลอร์เคลือบน้ำตาลที่ทิ้งมวลสารไว้ มันเหมาะสำหรับการทำสิ่งพื้นฐานอย่างรวดเร็วโดยไม่ต้องเรียนรู้อะไรเลย

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

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


1
แลงคุณเป็นโรงเรียนเก่า! ฉันหมายถึงอย่างนั้นในฐานะที่เป็นคำชม ... แต่ฉันก็ไม่เห็นด้วยกับคุณในประเด็นนี้ การจัดการกับซอฟต์แวร์ที่ออกแบบมาอย่างปานกลางบนระบบปฏิบัติการที่ผิดพลาดได้เพิ่มศูนย์ลงในความเข้าใจของฉันเกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์ ในความเป็นจริงแล้ววันนี้เป็นช่วงเวลาที่มีค่าเมื่อฉันได้เรียนรู้สิ่งที่มีประโยชน์จากคนที่มีความรู้เช่นคุณ ฉันพูดว่า "Long live Arduino!"
Kaelin Colclasure

2
@KaelinColclasure ความคิดเห็นของคุณเป็นสิ่งที่ทำให้ฉันสับสน คุณมีปัญหากับซอฟต์แวร์และระบบปฏิบัติการที่ไม่ดี แต่ Olin ไม่ได้จัดการกับเรื่องนี้ หากมีสิ่งใดที่คุณสามารถพิจารณาได้ว่าอาร์ดิโน่ทำอะไรให้เลเยอร์นามธรรมของคุณเหมือนกับ OS ที่เป็นเลเยอร์นามธรรม การเรียนรู้การใช้ Arduino นั้นมีน้อยมากที่จะช่วยให้คุณกลายเป็นวิศวกรที่ดีขึ้นเพราะค่าใช้จ่ายจะส่งผลให้มีค่าใช้จ่ายเพิ่มเติมที่ไม่จำเป็น ด้วยสิ่งที่กล่าวมาฉันคิดว่า Arduino เป็นแพลตฟอร์มที่ยอดเยี่ยม แต่ไม่ควรได้รับการพิจารณาเพื่อทดแทนความเข้าใจที่แท้จริงของโลกของอุปกรณ์อิเล็กทรอนิกส์แบบฝังตัว
Kellenjb

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

2
ใช่? แล้วสิ่งที่พูดถึง "กอดปัญญาภายในของคุณ"? C'mon คุณโอบกอด moron ภายในของคุณที่ใช้ Windows หรือ Linux หรือ OS X แทนที่จะเขียน OS ของคุณเองเช่น Real Man ™หรือไม่? สิ่งเหล่านี้คือระบบปฏิบัติการเคลือบน้ำตาลที่ทำให้มวลชนลดน้อยลง
nemik

1
@nemik: การรับปัญญาด้านในของคุณเป็นเรื่องตลกเหมือนการเดินย่ำไปตามทางที่มืดมิด ... แน่นอนว่ายังมีความจริงบางอย่างในทั้งสองสิ่ง
Olin Lathrop

4

ในฐานะโปรแกรมเมอร์ฉันชอบการเขียนโปรแกรมในภาษาที่คนอื่นใช้เป็นจำนวนมากวิธีนี้มีหนังสือบทความเพื่อนร่วมงานและอื่น ๆ มากมายพร้อมที่จะช่วยฉันเรียนรู้

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

เมื่อพิจารณาว่าสิ่งเหล่านี้ราคาถูกเพียงใด (ส่วนใหญ่น้อยกว่า $ 50) คุณอาจต้องการพิจารณารับมากกว่าหนึ่งประเภท

สำหรับคนที่คุ้นเคยกับ Microsoft Visual Studio และ C #, Netduinoเป็นตัวเลือกที่ยอดเยี่ยมเนื่องจากมี toolchain ที่คุณจะรู้อยู่แล้ว

หากสภาพแวดล้อมที่คุณต้องการคือ Unix คุณอาจชอบบอร์ดอย่างRaspberry Piที่จะเปิดตัวในเดือนมกราคม 2012:

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

อุปกรณ์จะวางจำหน่ายเมื่อใด เราหวังว่าจะสามารถสั่งซื้อ Raspberry Pi ได้ภายในสิ้นปี 2011 เรายังคาดว่าจะประมูลบอร์ดเบต้าชุดแรกของเราก่อนสิ้นปีนี้ เราจะย้ายไปผลิตหลักในเดือนมกราคม

ราคาเท่าไหร่ รุ่น A จะมีราคา $ 25 และรุ่น B $ 35

ข่าวดีจริงๆคือมีตัวควบคุมไมโครราคาถูกจำนวนมากที่ออกมามากขึ้นตลอดเวลา

ในที่สุดก็มี Texas Instruments MSP-430 Launchpadซึ่งมีให้ในราคา $ 4.30 พร้อมจัดส่งฟรี ในราคาที่ถูกคุณไม่ซื้อได้อย่างไร


4

เริ่มต้นด้วย Arduino เพื่อสรุปความคิดของคุณและสร้างต้นแบบการทำงานที่น้อยที่สุดและเรียนรู้ที่จะเชื่อมต่อกับพื้นฐานที่คุณต้องการสำหรับผลิตภัณฑ์ของคุณ (มอเตอร์, เซ็นเซอร์, ซีเรียลสำหรับการสื่อสาร)

ต่อมาเมื่อคุณต้องการฟังก์ชั่นเพิ่มเติม (อุปกรณ์ USB, Ethernet) ย้ายไปที่ชิป ARM Cortex M-series ARM แบบ 32 บิตหมายความว่าพวกมันมีพลังมากและตอนนี้ราคาถูกกว่าและมีอุปกรณ์ต่อพ่วงมากกว่าชิป 8 หรือ 16 บิตที่สูงกว่าเช่น AVR และ PIC mbed ของ NXP (http://mbed.org) เป็นการแนะนำอย่างนุ่มนวลต่อแพลตฟอร์มนั้นถ้าคุณมาจาก Arduino


2

เมื่อผู้คนพูดว่า Arduino เป็น "โปรแกรมง่ายๆ" สิ่งที่พวกเขาหมายถึงจริงๆก็คือ Toolchain นั้นใช้งานได้จริง มันทำงานบน Mac มันทำงานบน Windows และมันทำงานบน Linux คุณเสียบบอร์ดของคุณเขียนรหัสของคุณอัปโหลดและมันไป

เพื่อเสนอความแตกต่างเล็ก ๆ น้อย ๆ ผมเพียงแค่ "อัพเกรด" เป็น STK600 ของ Atmel และสภาพแวดล้อมการพัฒนา AVR Studio 5 ของพวกเขา ใช้งานได้บน Windows เท่านั้นดังนั้นฉันต้องติดตั้ง VMware และใช้งานบน Mac ของฉัน จากนั้นฉันก็ต้องติดตั้งไดรเวอร์ Jengo USB ที่พิถีพิถันซึ่งใช้เวลาหนึ่งวันในการอ่านฟอรั่มจุกจิก จากนั้นฉันต้องคิดออกว่าทำไมฉันจึงสามารถพูดคุยกับกระดาน dev จาก IDE ได้ แต่ไม่ใช่การ์ดลูก ATmega2560 ที่มาพร้อมกับ STK600 ... (สายเคเบิล JTAG เสียบผิดเพราะฉันทำตามภาพประกอบการสอนบน เว็บที่มีภาพแสดงสายเคเบิลเชื่อมต่อไว้ด้านหลัง)

จนถึงตอนนี้ฉันยังไม่ได้เขียนโค้ดด้วย AVR Studio 5 แต่ฉันอาจใช้เวลาเล่นซอกับมันมากกว่าที่ฉันมีเวลาทั้งหมดโดยใช้ Arduino IDE และฉันได้เขียนภาพร่าง Arduino จำนวนหลายสิบ

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

หวังว่านี่จะช่วยได้ :-)


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

@ Kellenjb ฉันสามารถใช้รหัส C ++ โดยแทบไม่มีค่าใช้จ่ายบางครั้งส่วนสามารถมีมากถึง 10% แต่มีหลายส่วนที่มี 0 ค่าใช้จ่าย แต่ใช่มันหายากเพราะคุณต้องให้ความสำคัญกับสิ่งที่คุณกำลังทำกับภาษาของคุณ แต่รอเหมือนกันใน C ฉันได้เห็นผู้ใช้ลอง malloc () ใน c ก่อนที่จะฝังตัวเพื่อผลลัพธ์ที่ไม่ดี
Kortuk

1

Arduino ทำให้แพลตฟอร์มการก้าวออกมายืดหยุ่นมี A / D, D / A (อย่างน้อย PWM) ดิจิตอล I / O จำนวนมาก, LED ที่ตั้งโปรแกรมได้บนบอร์ด, ซีเรียลกับ USB และโมดูลสำเร็จรูปที่พร้อมใช้งานสำหรับ ฮาร์ดแวร์ชนิดอื่น ๆ อีกมากมาย หากคุณต้องการที่จะพัฒนาตัวเองสำหรับประสบการณ์การเรียนรู้คุณไม่จำเป็นต้องใช้มัน หากคุณต้องการให้แพลตฟอร์มเปิดใช้งานบางอย่างเพื่อความสนุกของมันหรือในขณะที่คุณกำลังออกแบบรุ่นฮาร์ดแวร์ราคาต่ำของบางสิ่งนั้นก็พร้อมใช้งานได้ทุกเมื่อ เหล่านี้คือการออกแบบกลยุทธ์และการตัดสินใจทางเศรษฐกิจที่สมบูรณ์แบบในการทำสิ่งที่เหมาะสมกับเป้าหมายของคุณ ไม่มีอะไรที่ "ผิดปรกติ" เกี่ยวกับการแลกเปลี่ยนที่ - นั่นคือสิ่งที่วิศวกรทำ - และควรจะทำ - ทุกวัน


1

ประสบการณ์ของจอห์นเกือบจะตรงกับของฉันเมื่อ 15 ปีที่แล้วตอนที่ฉันเกษียณจากการสอนวิทยาศาสตร์คอมพิวเตอร์ (โดยทั่วไปคือการเขียนโปรแกรมภาษาแอสเซมบลีและ C) กับนักศึกษาปริญญาตรี ฉันตระหนักแล้วว่าการติดตามความก้าวหน้าในการคำนวณจะมีราคาแพงอย่างไม่น่าเชื่อดังนั้นภรรยาของฉันจึงแนะนำให้กลับไปใช้อุปกรณ์อิเล็กทรอนิกส์เป็นงานอดิเรกเนื่องจากฉันสนุกกับการเป็นวิศวกรไฟฟ้าในปี 1950 สิ่งนี้ฉันทำแม้ว่าฉันจะได้พบกับทรานซิสเตอร์ในเวลาสั้น ๆ และไม่เคยเห็น op-amp ดังนั้นฉันจึงมีความสุขกับการเรียนรู้ที่จะทำ ฉันยังคงรักภาษาแอสเซมบลีของฉันและเมื่อ Microchip Pics ปรากฏขึ้นในช่วงกลางทศวรรษที่ 90 ฉันก็ติดใจพวกเขา

ฉันไม่สามารถเปรียบเทียบพวกมันกับ Arduino ซึ่งฉันไม่รู้อะไรเลย แต่ข้อดีของการใช้ Pics คือมันถูกกว่าที่จะติดตั้งเนื่องจาก Microchip ให้ข้อมูลทั้งหมดฟรีกับ IDE ที่ยอดเยี่ยมและคุณสามารถเรียนรู้การใช้งานมัน อย่างที่ฉันทำจากสิ่งที่พวกเขาเผยแพร่ คุณสามารถเริ่มต้นด้วยโปรแกรมเมอร์ทำที่บ้านการออกแบบมากมายบนอินเทอร์เน็ตดังนั้นจึงต้องเสียค่าใช้จ่ายเพียงไม่กี่ปอนด์สำหรับชิป Pic บางตัวที่จะเริ่มต้นด้วย แต่ฉันขอแนะนำ PicKit 2 ที่มีคุณสมบัติในตัวมากมายเพื่อให้การพัฒนาโปรแกรมเป็นเรื่องง่าย อย่างไรก็ตามอาจไม่ใช่ PicKit 3 โปรดดู:

http://www.eevblog.com/2009/10/21/eevblog-39-pickit-3-programmerdebugger-review/แม้ว่าสิ่งนี้ได้รับการปรับปรุงแล้วดูบันทึกย่อในข้อมูลอ้างอิงนี้

มีหนังสือจำนวนมากบน Pics แต่บางเล่มก็เป็นขยะระวังให้ดี สำหรับการเริ่มต้นอย่างง่ายการแนะนำ Pic ที่ยอดเยี่ยมคือ:

"การออกแบบระบบสมองกลฝังตัวพร้อมไมโครคอนโทรลเลอร์ PIC: หลักการและแอปพลิเคชัน" [ปกอ่อน] โดย Tim Wilmshurst £ 22-66 ใน Amazon ซึ่งรวมทั้ง Assembler และ C. ฉันหลีกเลี่ยง C ชั่วขณะหนึ่งเพราะดูเหมือนว่ามันจะทำให้ความใกล้ชิดกับฮาร์ดแวร์ลดลง Assembler ที่ให้ แต่ด้วยคอมไพเลอร์ C ที่ให้มากับ Microchip คุณสามารถดูรหัสแอสเซมเบลอร์ที่สร้างขึ้นได้เช่นกัน

สำหรับภาพรวมดีเทคนิค (ไม่กลัวที่จะใส่คณิตศาสตร์ใน) ของอิเล็กทรอนิกส์ที่ทันสมัยฉันขอแนะนำ: "อิเล็กทรอนิคส์ที่เป็นประโยชน์สำหรับนักประดิษฐ์" 2 / E [ปกอ่อน] โดย Paul Scherz, 19-95 ปอนด์ใน Amazon

ฉันจ่ายเงิน 26-99 ปอนด์และ 22-99 ปอนด์ตามลำดับสำหรับหนังสือเหล่านี้ในร้านค้าและไม่เสียใจเลย

ฉันไม่สามารถครอบคลุมได้พอที่นี่ฉันยินดีที่จะติดต่อทางอีเมลในหัวข้อนี้: 417weston@gmail.com (และในกรณีที่ฉันระมัดระวังเกี่ยวกับสิ่งที่ฉันอ่านหรือดาวน์โหลดหรือตอบ)

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