CIRCUIT : Window Comparator

สำหรับหัวข้อนี้ จะเป็นการอธิบายหลักการทำงานของ Window Comparator Circuit และการนำไปประยุกต์ใช้งาน ก่อนอื่นผู้เขียนขออธิบายพื้นฐานการทำงานของ Op-Amp คร่าวๆก่อน op-amp เป็นอุปกรณ์อิเล็กทรอนิกส์ที่เกิดจาก Component ต่างๆมาประกอบกัน เพื่อให้เกิดการทำงานร่วมกัน หรือเรียกกันว่า IC ( Integrated Circuit ) ซึ่งเป็นที่นิยมมากในวงการอิเล็กทรอนิกส์ op-amp มีการใช้งานที่หลากหลาย แต่ในเนื้อหานี้จะขอนำเสนอการนำ op-amp มาใช้ในการเปรียบเทียบสัญญาณ ( Comparator ) จะตรวจจับความแตกต่างของสัญญาณที่เข้ามาทาง input สัญลักษณ์ op-amp มีลักษณะเป็นรูปสามเหลี่ยม ด้านซ้ายจะเป็นสัญญาณ input จะมีขั้ว non-inverting (V+) และ inverting (V-) ส่วนทางด้านขวาจะเป็นสัญญาณ output (Vout) op-amp ต้องการไฟเลี้ยง ซึ่งเป็นไฟกระแสตรงเพื่อเลี้ยงวงจร ส่วนมากจะมีทั้งไฟบวกและลบ ( ไฟลบต่อลง ground ก็มี ) จึงมีขา … Read More

Introduction to Ltspice

LTspice เป็นฟรีซอฟต์แวร์สำหรับจำลองวงจรการทำงานทางด้านอิเล็กทรอนิกส์ผลิตโดยบริษัท Linear Technology (ซึ่งตอนนี้ถูกซื้อกิจการไปเป็นของ Analog Devices) LTspice นั้นมีข้อดีกว่าซอฟต์แวร์ spice อื่นๆ คือ LTspice นั้นไม่มีการจำกัดจำนวน node จำนวน component หรือแม้แต่จำนวนวงจรย่อย บทความนี้ขอนำเสนอวิธีการใช้งานเบื้องต้นของ LTspice เพื่อเป็นตัวอย่างให้สำหรับผู้สนใจ Note : LTspice นั้น สามารถ simulate ได้หลายโหมดแต่ในบทความนี้ขอยกตัวอย่างเฉพาะ Transient, AC Analysis เท่านั้น   เรามาเริ่มต้น simulate ง่ายๆ ด้วยตัวอย่าง low pass filter ดังรูปด้านล่างก่อนนะครับ เริ่มจากเปิดโปรแกรม LTspice ขึ้นมาแล้วทำการสร้างวงจรใหม่โดยไปที่ File -> New Schematic เพิ่ม resistor และ capacitor และ GND โดยไปที่เมนูด้านบนแล้วคลิกไปที่ … Read More

9 Steps to design a PCB

9 ขั้นตอนในการออกแบบ PCB บทความนี้จะกล่าวถึงขั้นตอนของ PCB Development ตั้งแต่เริ่มสร้างการออกแบบ Schematic ที่มีข้อกำหนดเฉพาะต่างๆ ไปจนถึงขั้นตอนสุดท้ายของการออกแบบ PCB Layout รวมถึงการจัดเตรียมเอกสารข้อมูลสำหรับกระบวนการผลิต PCB (PCB Fabrication) บทความนี้จะสรุปขั้นตอนการออกแบบตัวอย่าง และใช้โปรแกรมการออกแบบ PCB ด้วย Altium Designer เพื่อใช้ในการสร้างรูปภาพประกอบบทความ รูปด้านล่างแสดงตัวอย่าง 9 ขั้นตอนการออกแบบ PCB จากรูป ทำให้เรามองเห็นภาพรวมของขั้นตอนการออกแบบ PCB แล้ว แต่ก่อนที่เราเริ่มต้นออกแบบ PCB ของเรา เราจำเป็นต้องมีข้อมูลหรือข้อกำหนดสำหรับการสร้างการออกแบบ PCB ดังนี้: Block Diagram เป็นกรอบหรือแนวคิดในการออกแบบ PCB สำหรับอุปกรณ์ที่จะสร้างขึ้นใหม่ Finish Circuit Design วงจรอิเล็กทรอนิกส์ที่ได้รับการออกแบบสำหรับอุปกรณ์ตัวใหม่ของเราที่เสร็จสมบูรณ์แล้ว โดยอาจจะอยู่ในรูปแบบ Hand Drawing, PDF File, หรือรูปแบบอื่น ๆ เป็นต้น Critical … Read More

FPGA : INTRODUCTION TO SYSTEM CONSOLE

  ท่านเคยเจอปัญหาเหล่านี้ไหมครับ ? เมื่อ FPGA บอร์ด ของเราผลิตออกมาเสร็จ หลังส่งบอร์ดให้นักพัฒนาเฟิร์มแวร์แล้ว โดนตอบกลับมาว่า ” บอร์ดมีปัญหาหรือเปล่า? อ่านเขียนข้อมูลบน RAM ไม่ได้เลย ทั้ง LED, Switch ก็ใช้ไม่ได้ บัคฮาร์ดแวร์หรือเปล่า ? “ วันนี้เราจะมาแก้ไขปัญหาเหล่านี้ให้หมดไปครับ เพื่อไม่ให้ใครมาว่าเราว่า บัคเกิดจากการออกแบบฮาร์ดแวร์ โดยเราสามารถใช้ความสามารถพิเศษของ FPGA มาช่วยแก้ไขปัญหาเหล่านี้ได้ครับ โดยที่ไม่ต้องรอเฟิร์มแวร์ สามารถทำได้ทันที และง่ายสุดๆ ด้วย System Console   System Console คือ เครื่องมือที่ใช้ debug IP ที่ถูกสร้างโดย Qsys โดยใช้ JTAG เป็นตัวกลางในการสื่อสารระหว่าง System Console ⇔ FPGA ซึ่งความสามารถของ System Console จะสามารถ Access register ของ … Read More

PCB : How to make pad array

    ในบทความนี้จะกล่าวถึงการการสร้าง Footprint ที่เป็นเเบบ Pad Array โดยการสร้างจากเครื่องมือ Paste Special ของ Altium เพื่อทำให้เกิดความสะดวกรวดเร็วเเละมีความเเม่นยำ ในเบื้องต้น ก่อนที่จะลงมือสร้าง Footprint ควรต้องทำความเข้าใจรายละเอียดจาก Datasheet ให้เข้าใจก่อน ว่ามีส่วนสำคัญอะไรบ้าง ตามหัวข้อด้านล่าง 1. ใน Datasheet อาจมีหลาย Part Number ให้เราตรวจสอบเเละ Highlight ให้ถูกต้องกับชื่อ Part ที่เราจะสร้าง 2. จำนวน Pad มีเท่าไหร่, มีรูสำหรับยึด Part กับ PCB ด้วยไหม รูยึดเป็นเเบบ PTH หรือ NPTH 3. ตำเเหน่งหรือทิศทางของจุดเริ่มต้น (Polarization) 4. ระยะห่างระหว่าง Pad (Pitch) เช่น 1.27mm หรือ … Read More

FPGA : FPGA คืออะไร

FPGA คืออะไร และข้อดีข้อเสียของ FPGA สวัสดีครับผู้อ่านทุกๆท่านนะครับ  วันนี้เราจะมาเรียนรู้เกี่ยวกับ FPGA กันนะครับ  ซึ่งถ้าเราอยู่ในกลุ่มที่สนใจเทคโนโลยี  เราอาจจะเคยได้ยินคำว่า FPGA มาบ้าง  แต่อาจจะไม่รุ้ว่า FPGA นั้นคืออะไร  ซึ่งที่เราได้ยินบ่อยขึ้นก็เพราะเดี่ยวนี้ FPGA ได้รับความสนใจมากขึ้นเรื่อยๆ  ไม่ใช่เป็นงานแค่เฉพาะทางเหมือนในสมัยก่อน ประกอบกับทางเรานั้นได้รับคำถามเกี่ยวกับข้อดีข้อเสีย FPGA มาบ่อยครั้งครับ  ทางเราก็เลยเขียนเรื่องนี้ขึ้นมา  ซึ่งก่อนที่เราจะไปรู้ว่าข้อดีข้อเสียของ FPGA คืออะไร  เราก็ควรที่จะรู้จักกับ FPGA ก่อนว่า FPGA นั้นคืออะไร FPGA คืออะไร   FPGA ก็คือชิปอุปกรณ์อิเล็กทรอนิกส์( IC )รูปแบบหนึ่ง  ซึ่งภายในนั้นจะมี Logic Gate ( ที่เอาไว้ทำ AND OR Gate ต่างๆ ) จำนวนมากมาย  โดยที่เราสามารถโปรแกรมลงไปเพื่อกำหนดการเชื่อมต่อของ Logic Gate ต่าง  ว่าเชื่อมต่อกันอย่างไร  การทำงานกันอย่างไรได้  … Read More

FPGA : Avalon bus simulation

    หลายท่านคงเคยประสบปัญหาที่ว่า เคยสร้างสร้าง Slave IP ของตัวเองซึ่งต่อกับ Avalon bus แล้วต้องการ simulate IP ที่เขียนมาเพื่อทดสอบฟังค์ชั่นต่างๆ ที่ออกแบบมา ซึ่งโดยปกติแล้วทาง intelFPGA ได้เตรียม IP ไว้สำหรับ verify โดยเฉพาะ เรียกว่า BFM (Bus Function Models) แต่ BFM นั้นค่อนข้างยุ่งยากซับซ้อนทำให้ยากต่อการนำมาใช้งาน บทความนี้จะนำเสนอวิธีการ verify IP ที่เราเขียนขึ้นมาโดยใช้วิธีอื่นๆนอกจากการใช้ BFM IP ของ intelFPGA Note :  1. ตัวอย่างนี้เพื่อเป็นการแนะนำวิธีการ simulate ดังนั้นจึงขอยกตัวอย่างการ simulate IP ง่ายๆ อย่าง GPIO ซึ่งเราจะใช้ IP ของ intelFPGA ที่ชื่อว่า PIO intelFPGA … Read More

PCB : Basic PCB for beginners

แผ่นวงจรพิมพ์หรือที่เรียกว่าพีซีบี (PCB) ทำจากแผ่นวัสดุที่นำไฟฟ้าและไม่นำไฟฟ้าที่แตกต่างกันซึ่งใช้เพื่อรองรับทางกายภาพ (Physically) และเชื่อมต่อส่วนประกอบเพื่อติดตั้งลงบนพื้นผิว แต่หน้าที่ของบอร์ดแผ่นวงจรพิมพ์คืออะไร อ่านบทความนี้เพื่อเรียนรู้และเข้าใจพื้นฐานแผ่นวงจรพิมพ์ (PCB)  แผ่นวงจรพิมพ์คืออะไร? ข้อมูลพื้นฐาน แผ่นวงจรพิมพ์ หรือเรียกว่า “แผ่นพีซีบี (PCB)” ที่นักอิเล็กทรอนิกส์ในประเทศไทยทั่วไปนิยมเรียกกันว่า “แผ่นปริ๊นท์” หรือ แผงวงจร” มีชื่อย่อมาจาก Printed Circuit Board เรียกสั้นๆ ว่า “PCB” อาจชื่อเรียกอีก ได้แก่ Circuit Board, PCB Board, Printed Wiring Board (PWB) หรือแม้กระทั่ง Etched Wiring Board (EWB) แต่ละชื่อก็มีความหมายเป็นสิ่งเดียวกัน นั่นก็คือ “แผ่นวงจรพิมพ์” นิยาม: โดยทั่วไปแล้วแผ่นวงจรพิมพ์ คือแผ่นบาง ๆ หรือแผ่นฉนวนมีลักษณะแบนทำมาจากแผ่นวัสดุชนิดต่าง ๆ ที่ไม่นำไฟฟ้า เช่น วัสดุไฟเบอร์กลาส (Fiberglass) วัสดุที่ประกอบด้วยยางสังเคราะห์ (Composite Epoxy … Read More

FPGA : Nios II Processor Booting Methods in Max10 FPGA

บทความนี้จะกล่าวถึงความสามารถในการบูต Nios II รูปแบบต่างๆของ MAX10 ก่อนจะเข้าเนื้อหาผู้เขียนขออธิบายความสามารถคร่าวๆเกี่ยวกับ MAX 10 ก่อน MAX 10 คืออะไร? MAX 10 เป็น FPGA ตระกูลหนึ่งของบริษัท Intel ที่มี Configuration memory ในตัว เมื่อปิดไฟหรือเกิดเหตุการณ์ไฟตก FPGA Image จะยังคงอยู่ ไม่หายไปเหมือน FPGA ทั่วไป ทำให้เวลาใช้งาน ไม่มีความจำเป็นต้องต่อ Configuration memory จากภายนอก และเวลาที่ใช้ในการบูตแค่หลัก ms เพียงเท่านั้น มี Soft Core CPU คือ Nios II ให้ใช้งานได้ฟรี สามารถเชื่อมต่อกับ External Memory ได้แก่ DDR3 SDRAM / DDR3L SDRAM / … Read More

Altium : How to use Collaborative PCB Design

Collaborate, Compare and  Merge เป็นเครื่องมือไว้สำหรับเปรียบเทียบการออกเบบ PCB ระหว่าง 2 เเบบที่ต่างกัน (2 versions) ที่มาจาก PCB เดียวกัน เเล้วรวมการออกเเบบเข้าเป็นอันเดียว เพื่อให้ผู้ออกเเบบ PCB ทำงานร่วมกันเเบบ Parallel หรือทำการออกเเบบพร้อมกันได้หลายคนในงานเดียวกัน เวลาเดียวกัน เพื่อความรวดเร็วในการทำงานของ Project นั้นๆ Collaborate, Compare and  Merge มีรูปเเบบการใช้งานเเบบงานต่องาน หรือ Compare เเละ Merge กันได้ทีละงาน ระหว่างงานที่มีการเปลี่ยนเเปลงกับงานต้นเเบบจนกว่าจะครบทุกงาน ไม่สามารถ Compare เเละ Merge พร้อมกันได้หลายงานในครั้งเดียว Collaborate, Compare and  Merge Tool มีโครงสร้างการใช้งานโดยเเบ่งออกได้เป็น 4 ส่วนหลัก ดังรูปด้านล่าง Collaborate, Compare and  Merge มีวิธีการใช้งาน ตามขั้นตอนดังต่อไปนี้ … Read More