คำถามติดแท็ก embedded-systems

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

2
คุณจะมั่นใจได้อย่างไรว่าอินเตอร์เฟซเครือข่ายแบบฟิสิคัลจะได้รับชื่ออินเทอร์เฟซเดียวกันตลอดการบูตเครื่องใหม่บนระบบ Linux ที่ฝังอยู่?
สำหรับระบบ Linux ที่ฝังตัวหากฉันมีเครือข่ายสองอินเตอร์เฟสขึ้นไปฉันจะมั่นใจได้อย่างไรว่าพวกเขาจะได้รับชื่ออินเทอร์เฟซที่เหมือนกันทุกครั้งที่บูต กล่าวอีกนัยหนึ่งฉันต้องการยกตัวอย่างเช่น eth0 เพื่อจับคู่กับพอร์ตอีเธอร์เน็ตจริงหนึ่งพอร์ต, eth1 ต่อไป ฯลฯ Linux "การกระจาย" ของฉันเป็นแบบโฮมเมดและฉันใช้ devtmpfs สำหรับการใส่ข้อมูล / dev ฉันใช้ busybox สำหรับ init (และอื่น ๆ ส่วนใหญ่) พร้อมกับสคริปต์ init ที่กำหนดเองสำหรับการเริ่มต้นและปิดระบบ ฉันไม่ต้องการสิ่งอำนวยความสะดวก hotplug ของ mdev หรือ udev - ฉันหมายถึงพอร์ตอีเธอร์เน็ต "คงที่"

2
“ FPGA แบบอะนาล็อก” มีอยู่จริงหรือไม่?
ฉันกำลังคิดเกี่ยวกับวงจรแอนะล็อกซึ่งการออกแบบวงจรสามารถอ่านได้ (หรืออย่างน้อยก็เปลี่ยนแปลงอย่างมีนัยสำคัญ) จากซอฟต์แวร์ พวกเขามีอยู่แล้ว?

1
เหตุใดอัตราการรับส่งข้อมูล UART ทั่วไปจึงไม่ได้เป็นทวีคูณของ 1,000
เหตุใดอัตราการรับส่งข้อมูลทั่วไปจึงไม่ได้เป็นทวีคูณของ 1,000 แทนที่จะเป็นทวีคูณ 300 เช่น 4800, 9600, 19200, 115200, ฯลฯ ... มีเหตุผลทางคณิตศาสตร์หรือไฟฟ้าอยู่เบื้องหลังสิ่งนี้หรือไม่?

3
การกำหนดฮีปและขนาดสแต็คสำหรับไมโครคอนโทรลเลอร์ ARM Cortex-M4
ฉันได้ทำงานในและนอกโครงการระบบฝังตัวขนาดเล็กในและนอก บางโครงการเหล่านี้ใช้หน่วยประมวลผลพื้นฐาน ARM Cortex-M4 ในโฟลเดอร์โครงการจะมีไฟล์startup.s ข้างในไฟล์นั้นฉันสังเกตบรรทัดคำสั่งสองบรรทัดต่อไปนี้ ;****************************************************************************** ; ; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> ; ;****************************************************************************** Stack EQU 0x00000400 ;****************************************************************************** ; ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> ; ;****************************************************************************** Heap EQU 0x00000000 เราจะกำหนดขนาดของฮีปและสแต็คสำหรับไมโครคอนโทรลเลอร์ได้อย่างไร? มีข้อมูลเฉพาะในแผ่นข้อมูลเพื่อเป็นแนวทางในการมาถึงมูลค่าที่ถูกต้องหรือไม่? ถ้าเป็นเช่นนั้นเราควรมองหาอะไรในแผ่นข้อมูล อ้างอิง: การถอดรหัสไฟล์เริ่มต้นสำหรับ ARM Cortex M4 ขนาดสแต็ค / ฮีปเริ่มต้น

1
คำแนะนำ Thumb เปรียบเทียบกับคำสั่ง ARM เพื่อประสิทธิภาพอย่างไร
เพื่อนร่วมงานกล่าวว่าคำสั่ง Thumb นั้นช้ากว่าคำสั่ง ARM อย่างมาก (สำหรับโปรเซสเซอร์ AT91SAM7S32) มันเป็นเรื่องจริงเหรอ? ประโยชน์ด้านประสิทธิภาพของคำแนะนำอย่างใดอย่างหนึ่งตั้งอยู่เหนือคำสั่งอื่น?

1
ฉันควรลองใช้เครื่องวิเคราะห์ตรรกะอย่างรวดเร็วแค่ไหน?
หากฉันมีสัญญาณดิจิตอล 10 MHz ฉันต้องสุ่มตัวอย่างด้วยตัววิเคราะห์เชิงตรรกะอย่างรวดเร็วแค่ไหนเพื่อหลีกเลี่ยงข้อผิดพลาดบิตใด ๆ อัตราตัวอย่างขั้นต่ำเพิ่มขึ้นหรือไม่ถ้าฉันต้องการแนบตัวถอดรหัสโปรโตคอล (เช่น SPI) ฉันตระหนักถึงทฤษฎีการสุ่มตัวอย่างของNyquist-Shannonและความจริงที่ว่าคลื่น 10 MHz สแควร์มีพลังงานสูงที่ฮาร์โมนิกที่สูงกว่า (30 MHz, 50 MHz, ฯลฯ ) อย่างไรก็ตามตัววิเคราะห์ลอจิกไม่จำเป็นต้องสุ่มตัวอย่างหรือสร้างคลื่นสี่เหลี่ยมเพื่อให้รู้ว่าเป็นลอจิก 1 หรือ 0 ฉันกำลังมองหาสิ่งที่จำเป็นในทางปฏิบัติเพื่อหลีกเลี่ยงข้อผิดพลาดบิตหรือข้อผิดพลาดในการถอดรหัสโปรโตคอล ฉันใช้ Saleae Logic Pro 16

1
การบันทึกหน่วยความจำแรมเมื่อเขียนลงในขนาดหน้า NK 2K แฟลช
ฉันกำลังเขียนไดรเวอร์สำหรับSamsung K9WAG08U1D NAND flashชิป ข้อมูลจำเพาะของชิปหน่วยความจำระบุว่ามีขนาดหน้า 2048 ไบต์ (2kB) ฉันใช้TI MSP430F2619ที่มี RAM 4096 ไบต์ (4kB) ซึ่งหมายความว่าฉันต้องจัดสรรบัฟเฟอร์หน่วยความจำ 2k เพื่อเขียนไปยังแฟลช แอปพลิเคชันของฉันเป็นตัวแปลงโปรโตคอลและดังนั้นจึงต้องใช้บัฟเฟอร์เพิ่มเติมสำหรับการจัดการไปมา กรุณาแนะนำฉันวิธีที่ดีกว่าเพื่อลดความต้องการแรมเนื่องจากขนาดหน้าแฟลช

1
อะไรคือสิ่งที่ถูกต้องและเป็นธรรมผลลัพธ์ของ ADC ที่ถูกต้องคืออะไร?
ซีรีส์ TI MSP430F20XX มีเอาท์พุท ADC ภายในแบบ 12 บิตซึ่งถูกต้อง อะไรคือความแตกต่างระหว่างเอาต์พุตที่จัดชิดขอบด้านซ้ายกับเอาต์พุตที่ถูกต้องที่เหมาะสม? ข้อดีและข้อเสียของพวกเขาคืออะไร

1
ฉันจะเพิ่มความละเอียด ADC ของโปรเซสเซอร์ได้อย่างไร
ฉันมี Atmel SAM4S MCU พร้อม ADC ภายใน 12 บิต ฉันต้องการความละเอียด 16 บิตที่อัตราตัวอย่าง 500 Hz อินพุตไปยัง ADC นั้นค่อนข้างมีความถี่ต่ำ (ประมาณ 20 Hz สูงสุดเนื้อหาความถี่) และสัญญาณรบกวนต่ำ (น้อยกว่า 12 บิต lsb RMS) ฉันจะบรรลุความละเอียด 16 บิตด้วย ADC ของโปรเซสเซอร์นี้ได้อย่างไร

1
มี FPGA ซึ่งสามารถ "re-wire" ตัวเองเมื่อต้องการ?
ตัวอย่างเช่นหากมีการดำเนินการจุดลอยตัวจำนวนมากก็สามารถ "rewire" พื้นที่ของหน่วยจำนวนเต็มบางส่วนเพื่อจัดการคำแนะนำจุดลอยตัวและในทางกลับกัน หรือถ้าไม่มีการคำนวณมากเกินไป แต่มีความต้องการ I / O จำนวนมากก็สามารถทำให้ IO ของมันขนานกันได้ดีขึ้น อย่างที่ฉันรู้ FPGAs โหลดโค้ด HDL ของพวกเขาตอนบูต แต่สำหรับฉันดูเหมือนว่าเป็นไปไม่ได้จริงๆที่จะทำให้สามารถโหลดส่วนที่แตกต่างกันของ HDL ที่ใหญ่กว่าตามต้องการได้บางส่วน FPGA ดังกล่าวมีอยู่แล้วหรือไม่

3
ฉันจะรู้ได้อย่างไรว่าฉันต้องการตัวต้านทานแบบดึงขึ้นหรือลงสำหรับพิน GPIO หรือไม่?
ฉันเคยเห็นไมโครคอนโทรลเลอร์จำนวนมากใช้ตัวต้านทานแบบดึงขึ้นหรือลงเช่นการตั้งค่าสำหรับพิน GPIO หรือเป็นส่วนหนึ่งของฮาร์ดแวร์ ฉันจะรู้ได้อย่างไรว่าฉันต้องการตัวต้านทานแบบ pull up หรือ pull down สำหรับ GPIO และถ้าฉันจะรู้ได้อย่างไรว่าตัวไหนเหมาะกับการใช้งานของฉัน?

1
กลไก IPC ใดที่มีอยู่สำหรับโปรเซสเซอร์มัลติคอร์ i.MX 7 (หรือ i.MX 6)
ฉันกำลังพิจารณาใช้โปรเซสเซอร์ i.MX 7 สำหรับการออกแบบใหม่ สถาปัตยกรรมโดยรวมดูเหมือนจะคล้ายกับ i.MX 6 อย่างน้อยจากการเปรียบเทียบไดอะแกรมบล็อก มีกลไกอะไรสำหรับการสื่อสารระหว่างคอร์เท็กซ์ -M4 คอร์กับคอร์เทกซ์ -7 คอร์? เคอร์เนลลินุกซ์มีกลไกดังกล่าวหรือไม่ (ซึ่งน่าจะถือว่าเป็น RTOS หรือเฟิร์มแวร์เฉพาะที่ทำงานบน M4) หรือเป็นเฟิร์มแวร์ที่กำหนดเองนี้สำหรับโปรเซสเซอร์ทั้งสองในข้อเสนอของ Freescale หรือไม่? ตัวประมวลผลดูเหมือนจะแชร์ทุกอย่างสวยมากดังนั้นฉันจะจินตนาการว่าคุณสามารถใช้บัฟเฟอร์หน่วยความจำแบบแบ่งใช้กับเซมาฟอร์อะตอมหรืออะไรก็ตามที่อยู่ในบรรทัดเหล่านั้น โดยหลักการแล้วฉันต้องการให้เฟิร์มแวร์ M4 "เข้าแทนที่" อุปกรณ์ต่อพ่วงบางส่วนในขณะที่โปรเซสเซอร์ A7 อยู่ในโหมดพลังงานต่ำ (เช่นจัดการการถ่ายโอนการสื่อสารเป็นระยะหรือการวิเคราะห์ข้อมูลบางอย่างจนกว่าจะมีบางสิ่ง "น่าสนใจ" เกิดขึ้น ) จากไดอะแกรมบล็อกและคู่มืออ้างอิง i.MX 6 SoloX ปรากฏว่าฮาร์ดแวร์ไม่ได้ดักคอสิ่งนี้

2
ข้อดีและข้อเสียของการใช้ Zibgee บน BLE หรือในทางกลับกันสำหรับการสมัคร IOT คืออะไร?
ขณะนี้ฉันกำลังทำงานเพื่อพัฒนาสถาปัตยกรรม IOT อุปกรณ์ตรวจจับจะต้องรวมเข้ากับไมโครคอนโทรลเลอร์ ไมโครคอนโทรลเลอร์จะถูกรวมเข้ากับอุปกรณ์สื่อสาร RF บางประเภท เนื่องจากชุมชนตระหนักถึงโปรโตคอลการสื่อสาร RF ที่เหมาะสมกับการเรียกเก็บเงิน เมื่อพิจารณาเป็น Bluetooth smart / BLE, uIP, zigbee และ Zwave ฉันตั้งใจจะใช้โมดูลเป็นหลักในการแก้ไขปัญหาการรับรองของ FCC ณ จุดนี้บลูทู ธ สมาร์ท / BLE และ Zigbee เป็นผู้สมัครที่สำคัญ คำถาม:จากมุมมองการออกแบบระบบฝังตัวข้อดีและข้อเสียของการใช้ Bluetooth smart / BLE บน Zigbee หรือในทางกลับกัน อ้างอิง: uIP (micro IP)

0
Keil Dialog Semiconductor
ฉันพยายามสร้างโครงการด้วย keil uVision 5 สำหรับ DA14580 (Dialog Semiconductor) http://www.keil.com/dd/chip/6853.htm แต่ในกล่องโต้ตอบเลือกอุปกรณ์ไม่มีอุปกรณ์จาก Dialog Semiconductor อย่างที่คุณเห็นในภาพฉันไม่พบ Dialog Semiconductor MCU คำถามคือ: ฉันจะเริ่มโครงการด้วย mcu ที่เลือกได้อย่างไร ตัวอย่างทั้งหมดที่ฉันสามารถพบได้สำหรับไมโครคอนโทรลเลอร์ TI หรือ Atmel นอกจากนี้อุปกรณ์ขาดหายไปจาก Pack Installer เช่นกัน: ข้อมูลเฉพาะเกี่ยวกับอุปกรณ์ที่ฉันกำลังดูอยู่ในฐานข้อมูลอุปกรณ์ในเมนูไฟล์: ฉันพยายามที่จะ "เพิ่ม" อุปกรณ์ แต่เมื่อฉันสร้างโครงการใหม่สำหรับอุปกรณ์เฉพาะ (ภาพถ่าย No1) ฉันไม่พบอุปกรณ์ในรายการ

0
สร้างต้นแบบของแท็บเล็ตอักษรเบรลล์โดยใช้ arduino [ปิด]
ฉันต้องการสร้างคอนโทรลเลอร์เมทริกซ์พินโดยใช้สปริงแม่เหล็กไฟฟ้าหรือมอเตอร์ขนาดเล็ก ฤดูใบไม้ผลิเป็นตัวเลือกที่เหมาะสมที่สุด บางอย่างที่แสดงในภาพ ฉันค่อนข้างใหม่สำหรับ arduino และไมโครคอนโทรลเลอร์โดยทั่วไปดังนั้นการป้อนข้อมูลใด ๆ จะได้รับการชื่นชม

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