คำถามติดแท็ก programming

คำถามเกี่ยวกับการเขียนโปรแกรมส่วน (FPGAs, Flash, ฯลฯ ) คำถามการเขียนโปรแกรมซอฟต์แวร์จำนวนมากควรถามแทนในกองล้น

16
C ++ เหมาะสำหรับระบบฝังตัวหรือไม่
คำถามทั่วไปที่นี่และที่อื่น ๆ C ++ เหมาะสำหรับระบบฝังตัวหรือไม่ ไมโครคอนโทรลเลอร์? RTOSes? เครื่องปิ้งขนมปัง? พีซีแบบฝัง? OOP มีประโยชน์กับไมโครคอนโทรลเลอร์หรือไม่ C ++ ลบโปรแกรมเมอร์ที่อยู่ห่างจากฮาร์ดแวร์มากเกินไปหรือไม่ C ++ ของ Arduino ควร (ที่ไม่มีการจัดการหน่วยความจำแบบไดนามิก, แม่แบบ, ข้อยกเว้น) ควรได้รับการพิจารณาว่าเป็น "C ++ จริง" หรือไม่? (หวังว่าวิกินี้จะใช้เป็นสถานที่บรรจุสงครามศักดิ์สิทธิ์ที่มีศักยภาพนี้)

5
การเขียนโปรแกรมไมโครคอนโทรลเลอร์: JTAG, SPI, USB oh my !?
ฉันสังเกตเห็นว่าไมโครคอนโทรลเลอร์มีหลายวิธีในการตั้งโปรแกรม ฉัน sorta คุ้นเคยกับ USB เพราะ Arduino ของฉันสามารถตั้งโปรแกรมผ่าน USB ได้ อินเตอร์เฟส JTAG หรือ SPI คืออะไร ในที่สุดฉันก็รู้ว่าอินเทอร์เฟซเหล่านี้มีวิธีการแฟลชชิปด้วยคำแนะนำใหม่ แต่พวกเขาแตกต่างกันอย่างไร มีข้อได้เปรียบของอีกคนหนึ่งหรือไม่?

3
การเขียนโปรแกรม FPGA ที่จะเริ่มต้น
ฉันเป็นผู้พัฒนาซอฟต์แวร์ (C, C ++, Object-c, java ... ) และฉันสนใจที่จะเรียนรู้ที่จะตั้งโปรแกรม FPGA ตอนนี้คำถามอาจดูง่ายสำหรับคุณ แต่โปรดใช้เวลาช่วยฉันในเรื่องนี้เพราะฉันติดอยู่ในตอนนี้ บริษัท ของฉันขอให้ฉันทำความคุ้นเคยกับเทคโนโลยีและทำงานกับผลิตภัณฑ์ขัดแตะ คำถามของฉันจะเริ่มตรงไหน? หลังจากการวิจัยบางอย่างฉันพบว่าฉันสามารถเลือกระหว่าง VHDL และ Verilog ฉันไม่เคยใช้มันเลย มีผู้เชี่ยวชาญคนใดบ้างที่สามารถแนะนำฉันได้ฉันควรเริ่มต้นที่ไหน เรียนรู้ภาษาเรียนรู้เกี่ยวกับส่วนประกอบฮาร์ดแวร์และจากนั้นผลิตภัณฑ์ขัดแตะ? หรือเริ่มต้นโดยตรงกับผลิตภัณฑ์ Lattice (เมื่อฉันอ่านว่าวิธีการเขียนโปรแกรมแตกต่างกันมากระหว่างผู้จำหน่าย FPGA)?
29 fpga  programming 

8
เหตุใดเราจึงต้องใช้ bootloader แยกจากแอปพลิเคชันโปรแกรมของเราในไมโครคอนโทรลเลอร์
เหตุใดเราจึงต้องการโปรแกรมแยกต่างหากในหน่วยความจำแฟลชโปรแกรมเดียวกันของไมโครคอนโทรลเลอร์โดยเฉพาะอย่างยิ่ง STM32F103 ซึ่งเรียกว่า bootloader มีอะไรพิเศษเกี่ยวกับมันเพื่อแยกมันออกจากโปรแกรมแอปพลิเคชันหลัก? โดยทั่วไปแล้ว bootloader ของระบบที่ใช้ไมโครโปรเซสเซอร์ (พูดว่า PowerPC MPC8270) ทำหน้าที่เหมือนกับของไมโครคอนโทรลเลอร์ (พูดกับ ARM STM32F103) หรือพวกเขากำลังทำงานที่แตกต่างกันโดยพื้นฐานและทั้งคู่ก็เรียกว่า 'bootloader' ?

2
การกัดบิตคืออะไร
ฉันใหม่สำหรับการเขียนโปรแกรมไมโครคอนโทรลเลอร์ ฉันใช้ ATmega32-A คอนโทรลเลอร์และคอมไพเลอร์ CodeVisionAVR ฉันใช้เครื่องกำเนิดสัญญาณ (AD9833) เพื่อสร้างสัญญาณคลื่นไซน์โดยใช้การสื่อสารแบบ SPI ฉันสามารถสร้างคลื่นไซน์ได้สำเร็จ ตอนนี้ฉันกำลังส่งสัญญาณนั้นไปยังเซ็นเซอร์ เอาต์พุตเซ็นเซอร์ถูกเลือกผ่านมัลติเพล็กเซอร์แล้วส่งไปยัง ADC ตอนนี้ฉันต้องการอ่านค่า ADC โดยใช้การสื่อสาร SPI ฉันพยายามอย่างมากในการตั้งค่าการลงทะเบียนของ ADC มันยังไม่ทำงาน หากต้องการดู SPI สื่อสารรหัสมีลักษณะที่ฉันโพสต์ก่อนหน้านี้ติดตั้ง ADC ลงทะเบียนใช้การสื่อสาร ฉันใช้การสื่อสาร USART (RS232) เพื่อพิมพ์ค่าบนพีซี (PuTTY) มีบางคนแนะนำให้ฉันใช้การกัดบิต ฉันใหม่สำหรับแนวคิดนั้น ผู้ใดสามารถส่งรหัสตัวอย่างของการสื่อสารบิต SPI ให้ฉันได้ จะเริ่มขั้นตอนนั้นได้อย่างไร? ใครช่วยได้บ้างเป็นวัสดุที่ดี ฉันต้องการฮาร์ดแวร์ภายนอกหรือไม่ ฉันได้เขียนสิ่งนี้รวมถึงการเชื่อมต่อพิน: #define ADC_CS PORTB.3 #define MOSI PORTB.5 #define MISO PINB.6 #define SCK …

10
ภาษาการเขียนโปรแกรมสำหรับวิศวกรอิเล็กทรอนิกส์
ฉันเป็นนักเรียนวิศวกรรมอิเล็กทรอนิคส์และการสื่อสารก่อนที่ฉันจะไปวิทยาลัยฉันมีความสนใจในการเขียนโปรแกรมและการใช้งานคอมพิวเตอร์ ฉันได้มุ่งเน้นไปที่การออกแบบแอพพลิเคชั่นของ Windows และเรียนรู้เทคนิคของมัน แต่ตอนนี้ฉันรู้สึกว่ามันไร้ประโยชน์ในสาขาของฉัน ... ฉันไม่ต้องเรียนรู้ทุกอย่างเกี่ยวกับวิทยาการคอมพิวเตอร์และการพัฒนาซอฟต์แวร์! (ฉันถูกเกี่ยวกับเรื่องนี้?) ฉันรู้ว่า VB .Net, C # และ C ++ ฉันมีเวลาเหลือเฟือในวันหยุดของฉันดังนั้นฉันจึงต้องการที่จะเจาะลึกลงไปในเชิงโปรแกรมใน "สนามอิเล็กทรอนิกส์" ดังนั้นสิ่งที่คุณจะแนะนำให้เรียนรู้หรือมุ่งเน้น ฉันต้องการภาษาเหล่านั้นที่ใช้ในการเขียนโปรแกรมไมโครคอนโทรลเลอร์และวงจรรวมอื่น ๆ C + + ก็เพียงพอหรือไม่ฉันก็ควรจะเชี่ยวชาญใน C ได้โปรดบอกความคิดของคุณ

5
การสำรวจล่าม / ผู้แปลภาษาระดับสูงสำหรับไมโครคอนโทรลเลอร์
ฉันต้องการสร้างรายการล่ามและคอมไพเลอร์ภาษาระดับสูง (เช่นสิ่งที่รวบรวม LISP ถึงรหัส C) สำหรับไมโครคอนโทรลเลอร์ ฉันได้ทำการค้นคว้านิดหน่อยแล้วว่าฉันจะจัดทำเอกสารไว้ที่นี่: รายการโปรเจ็กต์สำหรับใช้งาน Python บนไมโครคอนโทรลเลอร์: http://web.media.mit.edu/~nvawter/projects/pyMicro/ PyMite: http://wiki.python.org/moin/PyMite python-on-a-chip: http://code.google.com/p/python-on-a-chip/ โครงการ Armpit: http://armpit.sourceforge.net/ TinyScheme: http://tinyscheme.sourceforge.net/home.html LISP ล่ามขั้นต่ำ: http://www.sonoma.edu/users/l/luvisi/sl5.c ML ที่ฝังอยู่: http://embeddedml.sourceforge.net/Site/Intro.html eLua: http://www.eluaproject.net/ JAVA แบบฝัง: http://en.wikipedia.org/wiki/Embedded_Java amforth: http://amforth.sourceforge.net/ TinyTCL: http://tinytcl.sourceforge.net/ Tiny พื้นฐาน: http://www.ittybittycomputers.com/IttyBitty/TinyBasic/index.htm เปลือก AVR: http://www.instructables.com/id/AVRSH-A-Command-Interpreter-Shell-for-ArduinoAVR/ เชลล์ Bitlash (AVR): http://bitlash.net/wiki/start Transterpreter (occam-pi บน AVR): http://www.transterpreter.org/ …

5
ไมโครคอนโทรลเลอร์ 8 บิตแตกต่างจากไมโครคอนโทรลเลอร์ 32 บิตเมื่อพูดถึงการเขียนโปรแกรม
ใช่แล้วเรามีไมโครคอนโทรลเลอร์ 8 บิต 16 บิตและ 32 บิตในโลกนี้ในขณะนี้ พวกเขาทั้งหมดมักจะใช้ การเขียนโปรแกรมไมโครคอนโทรลเลอร์ 8 บิตและ 16 บิตแตกต่างกันอย่างไร? ฉันหมายความว่ามันต้องใช้เทคนิคหรือทักษะที่แตกต่างกันหรือไม่? ยกตัวอย่างเช่นไมโครชิพ บุคคลใดต้องการเรียนรู้สิ่งใหม่ ๆ หากต้องการเปลี่ยนจากไมโครคอนโทรลเลอร์ 8 บิตเป็นไมโครคอนโทรลเลอร์ 32 บิต

3
ภาษาโปรแกรมใดที่สนับสนุนโปรแกรม Arduino?
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันต้องการเริ่มเล่นกับ Arduino ฉันอ่านแล้วว่า C และ C ++ เป็นภาษาราชการ แต่ฉันก็พบวิธีอื่นในการสื่อสารโดยใช้PythonหรือJavaเช่นกัน ภาษาโปรแกรมใดที่สนับสนุนโปรแกรม Arduino? มีข้อ จำกัด ใด ๆ ในการใช้ Python หรือ Java หรือไม่?

7
เป็นไปได้หรือไม่ที่จะวาดวงจรผ่านโค้ด?
มีวิธีที่ดีกว่าไม่ได้โดยการเขียนไฟล์ netlist สิ่งที่ต้องการ: Define Battery1 As a Battery Define Resistor1 As a Resistor Connect Battery1 First Terminal to Resistor1 Second Terminal Connect Resistor1 First Terminal to Battery1 Second Terminal แก้ไข: ฉันพบคำตอบที่เป็นประโยชน์มาก มันจะดีถ้ามีวิธีจำลองวงจรที่ผลิตโดยรหัส

11
เหตุใดฝังตัว C / C ++ อย่างเคร่งครัด [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันไม่ชอบคำถามนี้เพราะไม่สามารถตอบได้อย่างง่ายดาย แต่บางทีฉันสามารถใช้ถ้อยคำใหม่: "อะไรที่ทำให้ Embedded ฝังตัวจากการเปลี่ยนภาษา?" ตัวอย่างเช่นเราเห็น C / C ++ สำหรับฝัง (ฉันคิดว่าฉันเคยได้ยินเอดีเอที่กล่าวถึงมาก่อนหรือไม่แก้ไขให้ฉันถ้าฉันผิด) แต่อะไรที่ทำให้โลกของสมองกลฝังตัวไม่เปลี่ยนแปลงภาษา? มันเป็นเพียงแค่ว่า C ใช้งานง่ายเกินไปหรือมีเพียง "ความต้องการ" เพื่อการเปลี่ยนแปลงเนื่องจาก C ทำทุกอย่างได้ดีหรือไม่? สิ่งนี้ทำให้ฉันงุนงงอยู่เสมอไม่ใช่ว่าฉันบ่น เนื่องจากการใช้ภาษาเพียงไม่กี่ภาษาทำให้สิ่งต่าง ๆ เป็นมาตรฐาน แต่คำถามก็ยังคงอยู่ ฉันรู้ว่านี่เป็นคำถามเชิงอัตวิสัยอย่างไรก็ตามคำถามหลักของฉันคือ "ทำไม" และไม่ใช่ "IF / WHEN"

5
LTSpice Automation
ฉันมีตัวแปลงบูสเตอร์ที่ใช้พลังงานจากแบตเตอรี่และฉันกำลังพยายามวัดแรงดันไฟฟ้าตกสูงสุด (แบตเตอรี่) ภายใต้เงื่อนไขการโหลดที่หลากหลายของกระแสไฟฟ้าสูง ความต้านทานภายใน) เนื่องจากฉันกำลังจำลองเวลาที่ใช้ในการดำเนินงานจำนวนมาก (ค่อนข้าง) ไฟล์การจำลองจึงมีจำนวนค่อนข้างมากไม่ต้องพูดถึงพวกเขาใช้เวลาสักครู่ ฉันต้องการทำให้ LTSpice เป็นแบบอัตโนมัติเพื่อให้ฉันสามารถเปลี่ยนค่าองค์ประกอบโดยใช้โปรแกรมและจำลองการจำลองใหม่และจับข้อมูล (ค่าของสิ่งต่าง ๆ เช่นแรงดันหรือกระแส) ฉันรู้แล้ว: ไฟล์ WAV สามารถใช้เพื่อป้อนข้อมูล / ส่งออกข้อมูลจากโปรแกรม โปรแกรมสามารถเรียกใช้จากบรรทัดคำสั่ง จนถึงตอนนี้ตัวเลือกที่ดีที่สุดของฉันดูเหมือนจะใช้ทั้งสองตัวเลือกพร้อมกับรหัส / สคริปต์ของตัวเองในแบบที่บรรลุเป้าหมายของฉัน แต่ฉันแค่สงสัยว่ามีวิธีที่ดีกว่าอยู่แล้ว มีใคร LTSpice อัตโนมัติหรือทราบว่ามี API การทำงานอัตโนมัติใด ๆ ที่เขียนขึ้นมาหรือไม่ (โดยผู้ผลิตหรือบุคคลที่สาม) โดยหลักการแล้วฉันต้องการตัวแก้ปัญหาเช่นที่ฉันให้พารามิเตอร์ที่ต้องการและลองใช้ค่าส่วนประกอบต่าง ๆ จนกว่าจะพบโซลูชัน "ดีที่สุด" ตามข้อ จำกัด ของฉัน

10
วิศวกรไฟฟ้าใช้ไมโครคอนโทรลเลอร์หรือไม่ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันชอบที่จะเขียนโปรแกรมอยู่เสมอและเมื่อไม่นานมานี้ฉันมีความสนใจในอุปกรณ์อิเล็กทรอนิกส์และการเขียนโปรแกรมไมโครคอนโทรลเลอร์ มันสนุกมาก แต่ฉันสงสัยว่าฉันกำลังเรียนรู้สิ่งที่มีประโยชน์ที่สามารถหางานได้หรือไม่เมื่อฉันโตขึ้น ฉันสงสัยว่าวิศวกรไฟฟ้าใช้ไมโครคอนโทรลเลอร์หรือไม่ ฉันรู้ว่างานที่คุณต้องนำพลังไปยังส่วนต่าง ๆ ของบ้านอาจจะไม่ แต่อาจเป็นงานเช่นนี้: ความรับผิดชอบของคุณ: ออกแบบและพัฒนาผลิตภัณฑ์เครื่องกระตุ้นหัวใจใหม่ เป้าหมายหลักคือการออกแบบผลิตภัณฑ์ใหม่และการสนับสนุนผลิตภัณฑ์ปัจจุบันในด้านการออกแบบอนาล็อกและดิจิตอล จำลองวงจรอะนาล็อกโดยใช้เครื่องมือจำลองต่าง ๆ เช่น PSPICE และ MATLAB สร้างต้นแบบและพิสูจน์ความเป็นไปได้ของการออกแบบฟังก์ชั่นและประสิทธิภาพ จัดทำเอกสารทุกขั้นตอนของการออกแบบรวมถึงข้อกำหนดข้อกำหนดแผนการทบทวนกระบวนการทดสอบและรายงานการทดสอบ สนับสนุนผลิตภัณฑ์ที่มีอยู่ ตรวจสอบและกำหนดสาเหตุของปัญหาผลิตภัณฑ์ที่พบในการผลิตและเขตข้อมูล แก้ไขปัญหาระบบ PCB สายเคเบิลและเฟิร์มแวร์ ใช้อุปกรณ์ทดสอบเพื่อวิเคราะห์และแก้ไขปัญหา ระบุประเมินและแนะนำผู้จัดหาหลักตามความสามารถด้านเทคนิคประสบการณ์ประวัติและการรับรอง อำนวยความสะดวกและรักษาการสื่อสารอย่างต่อเนื่องกับผู้จัดหาหลักและผู้มีส่วนได้เสียภายในระหว่างการพัฒนาโครงการ เป็นตัวแทนกลุ่มพัฒนา EE ในฐานะทีมงานด้านเทคนิคในโครงการต่างๆ ซึ่งรวมถึงการให้บริการโซลูชั่นด้านเทคนิครวมถึงการกำหนดเวลาโครงการและการติดตามโครงการ จัดทำเอกสารการออกแบบเพื่อการผลิต (เช่นแบบร่างแผนงานการทดลองการเปลี่ยนแปลงผลการทดสอบข้อมูลโครงร่าง PCB และอื่น ๆ ) ทำงานกับทีมงานข้ามสายงาน ได้แก่ : วิศวกรรมเครื่องกล, ซอฟแวร์, การใช้งานทางคลินิก, …

5
วนรอบด้วยซีพียูสมัยใหม่ (เช่น ARM)
ในหลาย ๆ แอพพลิเคชั่นซีพียูที่มีการประมวลผลคำสั่งนั้นมีความสัมพันธ์กับจังหวะเวลาที่ทราบกับสิ่งเร้าอินพุตที่คาดไว้สามารถจัดการงานที่ต้องใช้ CPU ที่เร็วกว่ามากหากไม่ทราบความสัมพันธ์ ตัวอย่างเช่นในโครงการที่ฉันใช้ PSOC เพื่อสร้างวิดีโอฉันใช้รหัสเพื่อส่งออกหนึ่งไบต์ของข้อมูลวิดีโอทุกนาฬิกาของ CPU 16 นาฬิกา เนื่องจากการทดสอบว่าอุปกรณ์ SPI พร้อมใช้งานและแตกแขนงหรือไม่หาก IIRC ใช้เวลาไม่เกิน 13 นาฬิกาและการโหลดและเก็บข้อมูลเอาท์พุทจะใช้เวลา 11 จึงไม่มีวิธีทดสอบอุปกรณ์สำหรับความพร้อมระหว่างไบต์ ฉันเพียง แต่จัดการเพื่อให้ตัวประมวลผลประมวลผลโค้ดที่แม่นยำ 16 รอบสำหรับแต่ละไบต์หลังจากครั้งแรก (ฉันเชื่อว่าฉันใช้การโหลดที่มีการทำดัชนีจริงโหลดที่จำลองดัชนีแบบจำลองและที่จัดเก็บ) การเขียน SPI แรกของแต่ละบรรทัดเกิดขึ้นก่อนเริ่มวิดีโอ และสำหรับการเขียนที่ตามมาทุกครั้งจะมีหน้าต่างรอบ 16 รอบซึ่งการเขียนอาจเกิดขึ้นได้โดยไม่มีบัฟเฟอร์มากเกินไปหรือต่ำกว่า การแบรนช์กิ่งสร้างหน้าต่างรอบ 13 ของความไม่แน่นอน แต่การประมวลผล 16 รอบที่คาดการณ์ได้หมายความว่าความไม่แน่นอนสำหรับไบต์ที่ตามมาทั้งหมดจะพอดีกับหน้าต่างรอบ 13 เดียวกันนั้น (ซึ่งจะพอดีภายในหน้าต่าง 16 รอบของเมื่อเขียนได้ เกิดขึ้น) สำหรับ CPU รุ่นเก่าข้อมูลเวลาการสอนมีความชัดเจนพร้อมใช้งานและไม่คลุมเครือ สำหรับ ARM รุ่นใหม่ข้อมูลเวลาดูเหมือนจะคลุมเครือกว่ามาก ฉันเข้าใจว่าเมื่อโค้ดทำงานจากแฟลชพฤติกรรมการแคชสามารถทำนายสิ่งต่าง …

7
STM32 & ST-LINK - ไม่สามารถเชื่อมต่อกับ MCU หลังจากการตั้งโปรแกรมสำเร็จ
ฉันได้สร้างบอร์ดของตัวเองด้วย STM32F7-45VGT6 ฉันได้ตั้งโปรแกรมสำเร็จด้วย ST-LINK v2 (ไม่ใช่แบบดั้งเดิม) และตอนนี้ฉันไม่สามารถเชื่อมต่อกับ MCU ได้ ฉันใช้ ST-Link Utility จากอินเตอร์เฟส ST และ SWD อาจเป็นกรณีที่ฉันใช้หมุด SWD เป็นเอาท์พุทและในรหัสของฉันฉันตั้งพวกเขาเป็นเอาท์พุท GPIO เป็นไปได้ไหม? อย่างไรก็ตามฉันเชื่อมต่อพินการรีเซ็ตเป็น GND และตั้งค่าตัวเลือก "เชื่อมต่อภายใต้การตั้งค่าใหม่" ในยูทิลิตี้ ST-Link แต่มันไม่ทำงาน ... ฉันจะทำอย่างไร บนอินเทอร์เน็ตฉันพบบางอย่างเกี่ยวกับการใช้ BOOT0 Pin แต่ฉันไม่รู้แน่ชัดว่า ...

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