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

อุปกรณ์ซึ่งรวมถึงหน่วยประมวลผลกลาง (CPU) หน่วยความจำและ (โดยทั่วไป) ชุดอุปกรณ์ต่อพ่วง I / O (UART, ADC, DAC, I / O วัตถุประสงค์ทั่วไป, I2C และอื่น ๆ ) ในสแตนด์อะโลน บรรจุภัณฑ์

2
PCB สำหรับโดรน
ฉันทำเสียงขึ้นจมูกและจะรักถ้าใครสามารถตรวจสอบงานของฉันในเค้าโครง PCB ภาพ (สีแดงคือด้านบน, สีฟ้าคือด้านล่าง, วงกลมแสดงให้เห็นหลุมและการถ่ายโอนด้านข้างสีม่วงคือกาว): สิ่งที่ควรจะเกิดขึ้น: อินพุตจากวิทยุคือ PWMs 1-6 ซึ่งเป็นตัวรับคลื่นความถี่วิทยุที่ใส่เข้าไปในค่าดิบของแท่งควบคุม บอร์ดควรจะสามารถตั้งโปรแกรมผ่านองค์ประกอบ ICE 10 MCU จะสามารถรับอินพุตจาก BMI055 (accelerometer) และ GPS และแยกวิเคราะห์ได้อย่างถูกต้อง อินพุต Li-po ใช้สำหรับอ่านแบตเตอรี่แต่ละสาย (นอกเหนือจากตัวแรก) เป็นเซลล์ ส่วนประกอบ aux ไม่มีความกังวลในขณะนี้ PWMs 7-12 เป็นเอาต์พุตและไปที่ ESC จำนวนมากซึ่งควบคุมมอเตอร์ ฉันรู้สึกว่าฉันหลงทางอยู่ PCB ดูไม่เหมือนที่อื่น ๆ ที่ฉันเคยเห็น (อันที่จริงมีแค่ตัวต้านทานและตัวเก็บประจุ 3 ตัวที่มีส่วนประกอบขั้นสูง) การอ้างอิงส่วนประกอบ: GPS: RXM-GPS-R4 MC1: AC32UC3 U2 และ U3: …

2
ไมโครคอนโทรลเลอร์ที่ใช้ RAM เท่านั้นมีไว้ทำอะไร?
ในขณะที่กำลังมองหารายละเอียดบางอย่างเกี่ยวกับการสร้างหมายเลขชิ้นส่วนสำหรับซีรี่ส์ MSP430 ของ Texas Instruments ฉันพบหน้าวิกินี้: TI MSP430 มีคำสั่งคือ "L" ในซีรี่ส์ MSP430L09x ซึ่งระบุส่วนที่เป็น RAM เท่านั้น มันจะต้องยังคงขับเคลื่อนอย่างต่อเนื่องเพื่อรักษาโปรแกรมของมัน ในขณะที่ฉันไม่สามารถตรวจสอบความถูกต้องด้านบนหลังจากผ่านแผ่นข้อมูลในเว็บไซต์อย่างเป็นทางการคำถามที่กระแทกฉันคือถ้าทั้งหมดมีส่วนดังกล่าวแอปพลิเคชันที่เหมาะสมที่จะใช้คืออะไร

11
เป็นไปได้หรือไม่ที่จะทำลายไมโครคอนโทรลเลอร์ด้วยซอฟต์แวร์
สมมติฐาน: ไม่มีการเชื่อมต่อวงจรภายนอก (นอกเหนือจากวงจรการเขียนโปรแกรมซึ่งเราถือว่าถูกต้อง) ยูซีไม่ผิด โดยการทำลายฉันหมายถึงการปล่อยควันสีฟ้าแห่งความตายไม่ใช่การก่ออิฐในซอฟต์แวร์ มันเป็น "ปกติ" uC 1-in-a-million ที่มีวัตถุประสงค์เฉพาะ มีใครเคยเห็นอะไรแบบนี้เกิดขึ้นบ้างไหม? มันเป็นไปได้ยังไงกัน? พื้นหลัง: A speaker of a meetup I assisted to said it was possible (and not even that hard) to do this, and some other people agreed with him. I have never seen this happen, and when I asked …

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

11
ฉันต้องการเรียนรู้วิธีสร้างแกดเจ็ต USB ของฉันเอง
ฉันเขียนไดร์เวอร์อุปกรณ์อักขระ Linux สำหรับสิ่งของของผู้อื่นมาระยะหนึ่งแล้ว ฉันต้องการหางานอดิเรกใหม่และความคิดในการสร้าง Gizmos USB ของฉันเองนั้นดูเรียบร้อยดีจริงๆ ฉันตื่นเต้นที่จะสามารถควบคุมไฟ LED เซอร์โวและสเต็ปมอเตอร์บางตัวได้ ฉันสนุกกับการเรียนรู้สิ่งใหม่ด้วยตัวเองและตื่นเต้นเมื่อมีอะไรบางอย่างทำงานได้ในที่สุด ฉันไม่ได้ทำการเขียนโปรแกรม MC อย่างจริงจัง แต่รู้วิธีของฉัน ใครช่วยแนะนำชุดบางอย่างที่จะเป็นประโยชน์กับ noob สมบูรณ์หรือไม่ เป็นการดีที่พวกเขาคือ: เป็นมิตรกับลินุกซ์ จัดส่งไปต่างประเทศได้ (ขณะนี้ฉันอาศัยอยู่ในเอเชีย) เสนอชุดเขียงหั่นขนม หากคุณมีเวลาและความชอบลิงก์ไปยังโครงการในเว็บไซต์ของผู้อื่นที่มีรายการแผนผังและชิ้นส่วนจะได้รับการชื่นชมอย่างมาก ฉันต้องการศึกษาจากตัวอย่าง แต่เป็นตัวอย่างที่ดีซึ่งเป็นสาเหตุที่ฉันถามที่นี่ เป้าหมายสุดท้ายของฉันคือการทำให้ตัวรวบรวมข้อมูลของฉันเอง - ทุกอย่างตั้งแต่ปริมาณน้ำฝนไปจนถึงเดซิเบลเฉลี่ยจนถึงระดับแสง ขออภัยหากมีการถามก่อนหน้านี้ฉันค้นหา (และค้นหาแท็ก)

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

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

8
เมื่อใดที่ควรเปลี่ยนจาก ASCII เป็นโปรโตคอลอนุกรมขั้นสูง
อุปกรณ์ไมโครคอนโทรลเลอร์ของฉันทั้งหมดที่สื่อสารกับพีซีผ่านทาง UART ใช้สายอักขระ ASCII สำหรับส่งคำสั่งและรับข้อมูล (ตามที่นำมาใช้ใน Arduino) นั่นคือสิ่งที่ฉันได้เรียนรู้เมื่อฉันเริ่มขุดลงในอุปกรณ์อิเล็กทรอนิกส์และฉันก็พบว่าการส่งสายเปล่าให้เพียงพอ อย่างไรก็ตามฉันสังเกตเห็นว่าอุปกรณ์ส่วนใหญ่ที่ฉันเจอใช้โพรโทคอลไบนารีขั้นสูงที่มีรหัสฟังก์ชันที่อยู่และการตรวจสอบข้อผิดพลาด CRC การสื่อสาร ASCII พื้นฐานเป็นที่ยอมรับได้เมื่อใดและฉันควรพิจารณาสิ่งที่สูงกว่าเช่น Modbus หรือไม่ อุปกรณ์เชิงพาณิชย์ใช้ ASCII เช่นนี้หรือไม่? อุตสาหกรรม?


10
FPGA สามารถใช้ได้เมื่อใดและ Microcontrollers / DSPs ไม่สามารถใช้งานได้
ฉันต้องเลือกระหว่างหลักสูตรเกี่ยวกับไมโครคอนโทรลเลอร์ขั้นสูงและหลักสูตรเกี่ยวกับ FPGA ขั้นสูง ฉันมีหลักสูตรเกริ่นนำในทั้งสองวิชาและสิ่งที่เป็นปัญหาในตอนนี้คือฉันพัฒนาเฟิร์มแวร์ให้กับไมโครคอนโทรลเลอร์และฉันไม่สามารถดูว่าผลิตภัณฑ์ / โครงการใดที่ฉันสามารถสร้างด้วย FPGA และไม่สามารถใช้ไมโครคอนโทรลเลอร์ / DSP ได้ คุณสามารถคิดแอปพลิเคชั่น / ผลิตภัณฑ์ / โครงการที่ไมโครคอนโทรลเลอร์หรือ DSP ไม่เพียงพอและทำไม? กล้อง? กล้องความเร็วสูง? การประมวลผลภาพความเร็วสูง?

6
เป็นความคิดที่ดีหรือไม่ที่จะปล่อยให้พินของ MCU ป้อนลอย
ฉันได้ยินมาว่าการปล่อยพินที่ลอยอยู่บน MCU เมื่อกำหนดค่าเป็นอินพุต (เทียบกับเอาต์พุตเริ่มต้น) นั้นไม่ดีสำหรับพินและในที่สุดอาจทำให้มันล้มเหลวก่อนเวลาอันควร มันเป็นเรื่องจริงเหรอ? หมายเหตุในตัวอย่างของฉันขาลอยอยู่ระหว่าง 0.3V ถึง 1.3V เนื่องจากสัญญาณวิดีโอขาเข้า บางครั้งสิ่งนี้จะตกอยู่ในโซนที่ไม่มีมนุษย์ 0.8V - 2.0V เมื่อทำงานจาก 3.3V

5
ข้อบกพร่องของซิลิคอนแผ่นผิดพลาด
ในไมโครคอนโทรลเลอร์ส่วนใหญ่ (ส่วนใหญ่, ทั้งหมด) ที่ฉันใช้ในช่วงหลายปีที่ผ่านมามีบางครั้งที่ระดับซิลิคอนบั๊กและผู้ผลิตให้วิศวกรด้วยแผ่นข้อมูล errata ซึ่งอธิบายพฤติกรรมที่ไม่คาดคิดที่พวกเขาอาจเผชิญ ทำไมพวกเขาไม่เคยแก้ไข "ข้อบกพร่อง" เหล่านี้ เนื่องจากผลิตภัณฑ์ยังคงมีการผลิตและในกรณีส่วนใหญ่การแก้ปัญหาจะไม่ส่งผลกระทบต่อการใช้งานก่อนหน้านี้ทำไมพวกเขาไม่เพียงแก้ไขมัน? ในหลายกรณีผลิตภัณฑ์อาจมีความเสถียรพบข้อบกพร่องส่วนใหญ่และอาจมีส่วนสำคัญของอายุการใช้งานของผลิตภัณฑ์ล่วงหน้า มันยากไหม (ทางเทคนิค)? ราคาแพง?

9
ทำไมเรียกใช้รหัสจาก RAM
ฉันเพิ่งเจอมาโครเพื่อให้ไมโครคอนโทรลเลอร์คอมไพเลอร์บังคับ (หรือแนะนำ) ฟังก์ชั่นที่เรียกใช้จาก RAM https://siliconlabs.github.io/Gecko_SDK_Doc/efr32mg1/html/group__RAMFUNC.html#gac6abbc7f869eec9fb47e57427587c556 http://processors.wiki.ti.com/index.php/Placing_functions_in_RAM https://www.iar.com/support/tech-notes/linker/controlling-placement-of-the-section-where-__ramfunc-functions-reside-ewarm-5.x--6.x/ https://community.nxp.com/thread/389099 สิ่งนี้มีคุณค่าในกรณีใดบ้าง? เหตุใดฉันจึงไม่เรียกใช้งาน RAM เสมอหากประโยชน์เพิ่มความเร็วเท่านั้น สิ่งนี้ทำให้เกิดการเสมอกันในปัจจุบันสูงกว่าหรือไม่?

5
มีความถี่ PWM ในอุดมคติสำหรับมอเตอร์แปรงถ่านหรือไม่?
ฉันจะใช้ไมโครคอนโทรลเลอร์เพื่อสร้างสัญญาณ PWM สำหรับควบคุมมอเตอร์ ฉันเข้าใจวิธีการทำงานของ PWM และรอบการทำงานอย่างไรก็ตามฉันไม่แน่ใจเกี่ยวกับความถี่ในอุดมคติ ฉันยังไม่มีมอเตอร์ของฉันดังนั้นฉันจึงไม่สามารถทดสอบและค้นหามันได้ ฉันจะไม่เปลี่ยนแปลงแรงดันไฟฟ้าเพียงเวลาที่ได้รับแรงดันไฟฟ้าที่กำหนด ดังนั้นฉันจะถือว่าการตอบสนองเชิงเส้น? ที่หน้าที่ 10% และอุปทาน 24 V มันจะทำงานที่ความเร็ว 15 RPM หรือไม่ ถ้ามันสร้างความแตกต่างฉันจะรวมการตั้งค่า ฉันกำลังวิ่ง 24 V โดยตรงไปยัง H-bridge ที่ควบคุมมอเตอร์ เห็นได้ชัดว่าฉันมีหมุด PWM สองตัวที่เดินจาก MCU ไปยังประตูของทั้งสองเปิดใช้งาน MOSFETS แก้ไข: ขออภัยลิงค์ดูเหมือนจะไม่ทำงาน ฉันเดาว่าไฟร์วอลล์ในที่ทำงานไม่ชอบ imgur รูปภาพแสดงกราฟของ RPM และแรงดันไฟฟ้า มันเป็นเส้นตรงจาก 50 RPM ที่ 8 V ถึง 150 RPM ที่ 24 V.

4
จะเลือกไมโครคอนโทรลเลอร์ ARM Cortex M3 ได้อย่างไร
ตามข้อกำหนดคร่าวๆของฉันที่อยู่ในช่วง 36 ถึง 72 MHz มี 16kb + SRAM, 128kb + แฟลชเป็นโปรแกรมใน C ฉันตัดสินใจว่าสำหรับแอปพลิเคชันของฉันฉันต้องการใช้ ARM Cortex M3 MCU คำถามคือผู้คนใช้เกณฑ์ใดในการเลือกรุ่น M3 ที่จะใช้ มีผู้ค้าที่เป็นไปได้มากมายเช่น TI, ST, NXP, Freescale และอื่น ๆ ความแตกต่างหลักจากมุมมองของฉันจะง่ายในการเขียนโปรแกรม เป็นการดีที่ฉันจะทดสอบมันบนกระดานฝ่าวงล้อม / การพัฒนาตามด้วยการใช้งานใน PCB ของฉันเอง

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