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

ฮาร์ดแวร์คอมพิวเตอร์คือชุดขององค์ประกอบทางกายภาพที่ประกอบขึ้นเป็นระบบคอมพิวเตอร์

6
เหตุใดการแบ่งฮาร์ดแวร์จึงใช้เวลานานกว่าการคูณ
เหตุใดการแบ่งฮาร์ดแวร์จึงใช้เวลานานกว่าการคูณบนไมโครคอนโทรลเลอร์มาก? เช่นใน dsPIC การหารใช้เวลา 19 รอบในขณะที่การคูณจะใช้เวลาหนึ่งรอบนาฬิกา ฉันผ่านบทเรียนบางอย่างรวมถึงอัลกอริทึมการหารและอัลกอริทึมการคูณใน Wikipedia นี่คือเหตุผลของฉัน อัลกอริทึมการหารเช่นวิธีการหารช้าพร้อมการเรียกคืนบนวิกิพีเดียเป็นอัลกอริทึมแบบเรียกซ้ำ ซึ่งหมายความว่าผลลัพธ์ (ขั้นกลาง) จากขั้นตอนkจะใช้เป็นอินพุตไปยังขั้นตอนk+1ซึ่งหมายความว่าอัลกอริทึมเหล่านี้ไม่สามารถทำการขนานกันได้ ดังนั้นจึงใช้เวลาอย่างน้อยหนึ่งnรอบในการแบ่งให้เสร็จสมบูรณ์ในขณะที่nมีจำนวนบิตในเงินปันผล สำหรับการจ่ายเงินปันผลแบบ 16 บิตนี่จะเท่ากับอย่างน้อย 16 รอบ อัลกอริทึมการคูณไม่จำเป็นต้องเรียกซ้ำซึ่งหมายความว่ามันเป็นไปได้ที่จะทำให้มันขนานกัน อย่างไรก็ตามมีอัลกอริทึมการคูณที่แตกต่างกันมากมายและฉันไม่มีเงื่อนงำที่ไมโครคอนโทรลเลอร์อาจใช้ การคูณจะทำงานกับฮาร์ดแวร์ / ไมโครคอนโทรลเลอร์ได้อย่างไร ฉันได้พบอัลกอริทึมตัวคูณ Daddaซึ่งควรจะใช้เวลาหนึ่งรอบนาฬิกาเพื่อเสร็จสิ้น อย่างไรก็ตามสิ่งที่ฉันไม่ได้รับที่นี่คืออัลกอริทึมของ Dadda ดำเนินการในสามขั้นตอนในขณะที่ผลลัพธ์จากขั้นตอนที่ 1 ถูกนำมาใช้ในขั้นตอนที่ 2 เป็นต้นจากนี้สิ่งนี้จะใช้เวลาอย่างน้อยสามรอบนาฬิกา

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

3
ชิ้นส่วนคอมพิวเตอร์ hotswapping ทำงานอย่างไร
คอมพิวเตอร์สนับสนุน hotswapping เพื่อให้ผู้ใช้สามารถแทนที่ฮาร์ดไดรฟ์ในขณะที่ระบบกำลังทำงาน นั่นคือซอฟต์แวร์ส่วนใหญ่เพิ่งปิดฮาร์ดไดรฟ์หรือเป็นฮาร์ดแวร์พิเศษที่เกี่ยวข้องหรือไม่ หากไม่มีฮาร์ดแวร์พิเศษฉันคิดว่าคุณสามารถ hotswap ไดรฟ์ใด ๆ ได้ แต่ดูเหมือนว่าไดรฟ์นั้นจะต้องรองรับในฮาร์ดแวร์

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

2
ความแตกต่างระหว่าง INPUT และ INPUT_PULLUP คืออะไร
เมื่อวันที่ Arduinos ใหม่หนึ่งสามารถตั้ง pinMode ให้เป็นหนึ่งในสามรัฐ: OUTPUT, และINPUTINPUT_PULLUP หน้านี้พูดว่า: ชิป Atmega บน Arduino มีตัวต้านทานแบบดึงขึ้นภายใน (ตัวต้านทานที่เชื่อมต่อกับพลังงานภายใน) ที่คุณสามารถเข้าถึงได้ หากคุณต้องการใช้สิ่งเหล่านี้แทนตัวต้านทานแบบดึงลงภายนอกคุณสามารถใช้อาร์กิวเมนต์ INPUT_PULLUP ใน pinMode () สิ่งนี้จะย้อนกลับพฤติกรรมได้อย่างมีประสิทธิภาพโดยที่ HIGH หมายถึงเซ็นเซอร์ปิดอยู่และ LOW หมายถึงเซ็นเซอร์เปิดอยู่ ฉันค่อนข้างแน่ใจว่าการคว่ำพฤติกรรมไม่ได้เป็นสิ่งเดียวที่ทำ อะไรINPUT_PULLUPทำอย่างไร อะไรทำให้แตกต่างจากINPUTและหนึ่งจะตัดสินใจเลือกที่จะใช้?

3
กำลังเปิด Arduino Arduino 12volts
ฉันรู้ว่า Arduino Nano สามารถจัดการ 12 โวลต์และมันบอกว่าจะแนะนำให้ใช้พลังงานระหว่าง 7 และ 12 โวลต์ ดังนั้นฉันสงสัยว่าฉันเพิ่งแฮ็กอะแดปเตอร์ขนาด 12 โวลต์เข้ากับ Mini-B หรือเป็นไปได้ไหมที่จะส่งพลังงานผ่านส่วนหัว ICSP?


3
'นิ้ว' บน LED ผ่านรูและโฟโตไดโอดคืออะไร
ฉันใช้ IR LED และโฟโต้ไดโอดและฉันได้ออกแบบ PCB ตามข้อกำหนดที่ฉันพบในแผ่นข้อมูล - เช่นขนาดรูสำหรับหมุดที่ 0.6 มม. อย่างไรก็ตามในองค์ประกอบเหล่านี้มี 'สนับมือ' (ดูภาพด้านล่าง) และสิ่งเหล่านี้มีความกว้างกว่าขนาดรูที่พวกเขาอ้างสำหรับหมุด ดังนั้นปัญหาคือองค์ประกอบไม่ได้ลงไปต่ำพอที่จะเข้าสู่บอร์ดเพราะข้อนิ้วเหล่านี้ ทำไมพวกเขาถึงอยู่ที่นั่น? ฉันจะรู้ได้อย่างไรว่าพวกเขามีความกว้างแค่ไหนในการทำให้บัญชีของฉันเป็นรู?

3
ฉันเผาพิน ตอนนี้ฉันจะทำอย่างไร
ฉันบังเอิญเสียบขาสั้น 10 และ 11 กับ 10 ชุดเป็นเอาต์พุต HIGH และ 11 ชุดเป็นอินพุต พิน 11 ไม่ทำงาน ฉันจะทราบได้อย่างไรว่าองค์ประกอบใดที่ฉันเผา สามารถแก้ไขปัญหาได้หรือไม่
16 arduino  hardware  pins 

2
ฉันจะใช้ SMD Arduino เพื่อตั้งโปรแกรม DIP ATmega328 ได้อย่างไร
ฉันมี Arduino ซึ่งมีไมโครคอนโทรลเลอร์ติดตั้งบนพื้นผิว (SMD): ฉันรู้วิธีใช้ DIP arduino เป็นโปรแกรมเมอร์สำหรับ DIP ATmega328 เป็นเรื่องง่าย - คุณเพียงแค่ใส่ไมโครคอนโทรลเลอร์ของคุณในที่ยึด อย่างไรก็ตามด้วย Arduino ที่ติดตั้งบนพื้นผิวก็ไม่มีความชัดเจน Desoldering ตัวควบคุมขนาดเล็กเป็นวิธีหนึ่ง แต่นั่นเป็นสิ่งที่เลวร้ายและเป็นอันตราย ฉันสามารถใช้ Arduino นี้เป็นโปรแกรมเมอร์สำหรับ DIP ATmega328 โดยไม่ทำลายบอร์ดได้หรือไม่? ถ้าเป็นเช่นนั้นได้อย่างไร

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

2
Pin 13: ฉันต้องการตัวต้านทานหรือไม่
คำถามนี้กล่าวว่าพิน 13 มีตัวต้านทานในตัวสำหรับ LED ที่มาพร้อมกับมาตรฐานในชุด Arduino ส่วนใหญ่ เพื่อนของฉันบอกกับฉันว่าเพราะมีตัวต้านทานอยู่บนพินอยู่แล้วฉันไม่จำเป็นต้องใส่มันเมื่อฉันเสียบ LED ภายนอกเข้ากับขา สิ่งนี้ไม่ถูกต้องกับฉันเพราะฉันอ่านไปทั่วทุกที่ที่มันแย่มากที่จะเสียบไฟ LED โดยไม่มีตัวต้านทาน จำกัด กระแส ฉันไม่สามารถหาตำแหน่งที่ pin 13 อยู่บนแผนภาพวงจร (ยังคงคุ้นเคยกับการอ่านเหล่านั้น) ดังนั้นฉันจึงไม่รู้ว่าตัวต้านทานแบบบิวด์อินมีสายอะไร คำถามสั้น ๆ :ฉันต้องการตัวต้านทาน จำกัด กระแสไฟฟ้าเมื่อใช้พิน 13 สำหรับ LED (เล็ก) หรือไม่? แก้ไข : ตามที่โพลาร์ชี้ไปที่ด้านล่างตัวต้านทานเพียงตัวเดียวจะทำเคล็ดลับได้ อย่างไรก็ตามฉันอยากรู้จริงๆเกี่ยวกับการวางตำแหน่งของตัวต้านทาน (บิวด์อิน) ตัวเดียว หากอยู่ในลำดับที่มีส่วนหัวสำหรับ P13 ก็ควร จำกัด กระแส ถ้ามันขนานกันฉันก็ไม่คิดอย่างนั้น อย่างไรก็ตามความรู้ทางอิเล็คทรอนิคส์ของฉันไม่ได้มีขนาดใหญ่มากดังนั้นฉันอาจผิดพลาดได้ ...
14 arduino  hardware  pins 

4
มีวิธีใดบ้างที่บอร์ด Arduino สามารถได้รับความเสียหายจากการใช้ออดโดยไม่มีตัวต้านทาน?
ฉันต้องการใช้ piezo buzzer แบบมาตรฐานบนหนึ่งในหมุดอะนาล็อกของ Arduino Uno โดยไม่ต้องใช้ตัวต้านทาน การเชื่อมต่อจะเป็นปัญหาสำหรับบอร์ด Arduino หรือไม่ ทำไม?

4
เป็นวิธีที่ดีสำหรับ mcu เพื่อตรวจสอบว่ารุ่นฮาร์ดแวร์ใดที่ทำงานอยู่?
ฉันทำงานเกี่ยวกับการออกแบบผลิตภัณฑ์ใหม่และอาจจะมีการเปลี่ยนแปลง / แก้ไขฮาร์ดแวร์เล็กหรือใหญ่ตลอดอายุของผลิตภัณฑ์ สำหรับการอัพเดตเฟิร์มแวร์ในอนาคตฉันต้องการวิธีการตรวจสอบการแก้ไขฮาร์ดแวร์ กลยุทธ์ที่ดีคืออะไร? ฉันกำลังดึงพินสำรองสองตัวขึ้น / ลงด้วยตัวต้านทานภายนอกและตรวจสอบรูปแบบ สิ่งนี้อนุญาตสำหรับการแก้ไขฮาร์ดแวร์ 4 ครั้งเท่านั้น แต่อาจเพียงพอสำหรับการใช้งานจริง มันอาจกลายเป็นปัญหาถ้าฉันต้องการพินเหล่านี้หนึ่งอันหรือทั้งสองอย่างในการแก้ไขฮาร์ดแวร์ในอนาคต ฉันคิดว่าวิธีที่ประหยัดกว่าอาจจะมีตัวต้านทานตัวต้านทานเชื่อมต่อกับขา ADC การแก้ไขฮาร์ดแวร์แต่ละครั้งอาจมีตัวต้านทานค่าที่แตกต่างกัน น่าเสียดายที่ฉันไม่มี ADC สำรองในการออกแบบปัจจุบันของฉัน ฉันเดาวิธีอื่นสามารถเข้ารหัสหมายเลขรุ่นฮาร์ดแวร์ใน EEPROM หรือแฟลช mcu ในระหว่างการผลิต? (เราไม่มีสิ่งอำนวยความสะดวกนั้นในขณะนี้) ฉันเดาว่าฉันกำลังมองหาคำแนะนำสำหรับวิธีการที่ยืดหยุ่นและแข็งแกร่ง [แก้ไข] เรื่อง ข้อเสนอแนะจาก @ trav1s: ฉันไม่มีบัสแอดเดรสต่อ se แต่ฉันมี 24LCxx EEPROM บนบัส I2C Slave Address 3 บิตต่ำนั้นใช้งานได้ยาก ฉันเดาว่าฉันสามารถเปลี่ยนบิตที่อยู่และค้นหา EEPROM ในระหว่างการเริ่มต้น

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

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