ชิ้นส่วน: โปรแกรมแอมพลิฟายเออร์ได้รับการตั้งโปรแกรม (MCP6S26)

March 5, 2023 0 Comments

micp6s21 / 2/6 / 8 ของไมโครชิปเป็นเครื่องขยายเสียงที่ตั้งโปรแกรมได้ที่ทวีคูณแรงดันไฟฟ้าอินพุตโดยปัจจัย 1, 2, 4, 5, 8, 10, 16, และ 32 . MCP6S22 / 6/8 ยังมีช่องสัญญาณอินพุตที่เลือกได้สำหรับการทำงานกับแหล่งสัญญาณที่แตกต่างกัน ปัจจัยการคูณและช่องสัญญาณอินพุตได้รับการกำหนดค่าผ่านอินเตอร์เฟส SPI ชิปนี้มีประโยชน์สำหรับการคูณสัญญาณอินพุตขนาดเล็กและการเลือกแหล่งอินพุตอะนาล็อกหลายแห่ง เราแสดงให้เห็นถึงหกช่อง MCP6S26 ด้านล่าง

MCP6S26 แอมพลิฟายเออร์ Gain โปรแกรม MCP6S26 (ค้นหา Mouser, Search Octopart, $ 2.56) แผ่นข้อมูล (PDF)

เราทดสอบชิปในวงจรที่แสดงข้างต้นด้วยแหล่งจ่ายไฟ 3.3Volt ตัวแบ่งแรงดันไฟฟ้าตัวต้านทาน (R1-4) เอาต์พุตเศษส่วนของอุปทานในช่อง 0, 2 และ 4. เราใช้ตัวต้านทาน 5K แต่ค่าไม่สำคัญ Divider เอาต์พุต 2.4Volts On Channel 0, 1.6volts บนช่อง 2 และ 0.8VOLTS บนช่อง 4

โจรสลัดรถบัส
DS1801 (PIN #)

adc
vout (1)

gnd
vref (8)

gnd
VSS (9)

cs
CS (10)

mosi
ศรี (11)

มิโซะ
ดังนั้น (12)

นาฬิกา
SCK (13)

+ 3.3V
VDD (13)

เราใช้อินเตอร์เฟส Serial Serial Bus Pirate Universal ของเราเพื่อสาธิตชิปนี้ แต่ลำดับการทำธุรกรรมจะเหมือนกันสำหรับการใช้งานไมโครคอนโทรลเลอร์ใด ๆ เราเชื่อมต่อโจรสลัดรถบัสไปยัง MCP6S26 ดังที่แสดงในตารางด้านบน เราตั้งค่ารถบัสโจรสลัดสำหรับโหมด RAW3Wire (M, 8) ที่มีเอาต์พุตปกติและเปิดใช้งานแหล่งจ่ายไฟแบบออนบอร์ด (Capital ‘W’)

raw3wire> [0b01000001 0] d
เปิดใช้งาน CS <-Begin SPI ธุรกรรม เขียน: 0x41 <-Change อินพุตช่องคำสั่ง เขียน: 0x00 <-Change to Channel 0 CS ปิดการใช้งาน <-End SPI ธุรกรรม โพรบแรงดันไฟฟ้า: 2.4volts <-vout การวัดแรงดันไฟฟ้า raw3wire>

การเขียน 0B01000001 (0x41) ตามด้วยหมายเลขช่องเปลี่ยนอินพุต MCP6S26 ที่ใช้งานอยู่ ‘[‘ ลดระดับชิปเลือกบรรทัดเพื่อเริ่มการทำธุรกรรม SPI เราส่งคำสั่ง Change Channel (0x41) ตามด้วย 0 เพื่อเลือกอินพุต 0. ‘]’ ยกระดับชิปเลือกบรรทัดเพื่อสิ้นสุดการทำธุรกรรม SPI ‘D’ ใช้แรงดันไฟฟ้าและแสดงให้เห็นว่าอินพุต 0 ที่มี 0 กำไรคือ 2.4volts

เราไม่สามารถขยายแรงดันไฟฟ้าได้เกินแหล่งจ่ายไฟ (2.4Volts * 2 = 4.8, 4.8VOLTS> 3.3VOLTS) ดังนั้นเราต้องเปลี่ยนเป็นช่องทางที่ต่ำกว่าในการเล่นกับคุณสมบัติที่ได้รับ

raw3wire> [0b01000001 4] d
เปิดใช้งาน CS
เขียน: 0x41 <-Change อินพุตช่องคำสั่ง เขียน: 0x04 <-Change to Channel 4 cs ปิดการใช้งาน โพรบแรงดันไฟฟ้า: 0.8volts <-vout การวัดแรงดันไฟฟ้า raw3wire>

การวัดในช่อง 4 แสดงผลลัพธ์ของเพียง 0.8VOLTS พื้นที่มากมายในการทดสอบคุณสมบัติการรับของชิป

raw3wire> [0b01000000 0b00000001] d
เปิดใช้งาน CS
เขียน: 0x40 <-Change Gain Command เขียน: 0x01 <-Gain การตั้งค่า (x2) cs ปิดการใช้งาน โพรบแรงดันไฟฟ้า: 1.6volts <-vout ตอนนี้ 0.8Olts * 2 raw3wire>

ลำดับสองไบต์ตั้งค่าจำนวนเงินที่ได้รับ คำสั่ง 0b01000000 (0x40) ที่อยู่การลงทะเบียนกำไร, ไบต์ที่สองตั้งค่าปัจจัยการคูณ (0x01 = กำไร 2) การตั้งค่าการเพิ่มเป็น 2 ทวีคูณแรงดันเอาท์พุทโดย 2, 0.8volts * 2 = 1.6volts

Raw3wire> [0B01000000 0B00000010] D
เปิดใช้งาน CS
เขียน: 0x40 <-Change Gain Command เขียน: 0x02 <-Gain การตั้งค่า (x4) cs ปิดการใช้งาน โพรบแรงดันไฟฟ้า: 3.2volts <-vout ตอนนี้ 0.8Olts * 4 raw3wire>

เวลานี้เราได้รับกำไรจาก 4, 0.8volts * 4 = 3.2 volts

raw3wire> [0b01000000 0b00000011] d
เปิดใช้งาน CS
เขียน: 0x40 <-Change Gain Command เขียน: 0x03 <-Gain การตั้งค่า (x5) cs ปิดการใช้งาน โพรบแรงดันไฟฟ้า: 3.3VOLTS <- ไม่เพียงพอที่จะเข้าถึง 0.8volts * 5 raw3wire>

แรงดันเอาท์พุทสูงสุดคือแรงดันไฟฟ้าของชิป หากเราตั้งค่าได้ถึง 5 แรงดันเอาท์พุทไม่สามารถเกินแหล่งจ่ายไฟของ 3.3VOLTS (0.8VOLTS * 5 = 4VOLTS, 4VOLTS> 3.3VOLTS)

Raw3wire> [0B00100000 0] D
เปิดใช้งาน CS
เขียน: 0x20 <-Sleep คำสั่ง เขียน: 0x00 <- ไม่สนใจไบต์ cs ปิดการใช้งาน โพรบแรงดันไฟฟ้า: 0.0volts <-output ถูกปิดใช้งาน raw3wire>

MCP6S26 มีโหมดสลีปประหยัดพลังงาน ปิดชิปด้วยคำสั่ง 0x20 ตามด้วยค่าไบต์ใด ๆ ปล่อยให้นอนหลับโดยส่งคำสั่งที่ถูกต้องใด ๆ

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

Leave a Reply

Your email address will not be published. Required fields are marked *