วันอาทิตย์ที่ 10 มิถุนายน พ.ศ. 2561

ไมโครคอนโทรลเลอร์

ไมโครคอนโทรลเลอร์ (อังกฤษmicrocontroller มักย่อว่า µC, uC หรือ MCU) คือ อุปกรณ์ควบคุมขนาดเล็ก ซึ่งบรรจุความสามารถที่คล้ายคลึงกับระบบคอมพิวเตอร์ โดยในไมโครคอนโทรลเลอร์ได้รวมเอาซีพียูหน่วยความจำ และพอร์ต ซึ่งเป็นส่วนประกอบหลักสำคัญของระบบคอมพิวเตอร์เข้าไว้ด้วยกัน โดยทำการบรรจุเข้าไว้ในตัวถังเดียวกัน

      โครงสร้างทั่วไป[แก้]

โครงสร้างโดยทั่วไป ของไมโครคอนโทรลเลอร์นั้น สามารถแบ่งออกมาได้เป็น 5 ส่วนใหญ่ๆ ดังต่อไปนี้
  1. หน่วยประมวลผลกลางหรือซีพียู (CPU : Central Processing Unit)
  2. หน่วยความจำ (Memory) สามารถแบ่งออกเป็น 2 ส่วน คือ หน่วยความจำที่มีไว้สำหรับเก็บโปรแกรมหลัก (Program Memory) เปรียบเสมือนฮาร์ดดิสก์ของเครื่องคอมพิวเตอร์ตั้งโต๊ะ คือข้อมูลใดๆ ที่ถูกเก็บไว้ในนี้จะไม่สูญหายไปแม้ไม่มีไฟเลี้ยง อีกส่วนหนึ่งคือหน่วยความจำข้อมูล (Data Memory) ใช้เป็นเหมือนกับกระดาษทดในการคำนวณของซีพียู และเป็นที่พักข้อมูลชั่วคราวขณะทำงาน แต่หากไม่มีไฟเลี้ยง ข้อมูลก็จะหายไปคล้ายกับหน่วยความจำแรม (RAM) ในเครื่องคอมพิวเตอร์ทั่วๆ ไป แต่สำหรับไมโครคอนโทรลเลอร์สมัยใหม่ หน่วยความจำข้อมูลจะมีทั้งที่เป็นหน่วยความจำแรม ซึ่งข้อมูลจะหายไปเมื่อไม่มีไฟเลี้ยง และเป็นอีอีพรอม (EEPROM : Erasable Electrically Read-Only Memory) ซึ่งสามารถเก็บข้อมูลได้แม้ไม่มีไฟเลี้ยงก็ตาม
  3. ส่วนติดต่อกับอุปกรณ์ภายนอก หรือพอร์ต (Port) มี 2 ลักษณะคือ พอร์ตอินพุต (Input Port) และพอร์ตส่งสัญญาณหรือพอร์ตเอาต์พุต (Output Port) ส่วนนี้จะใช้ในการเชื่อมต่อกับอุปกรณ์ภายนอก ถือว่าเป็นส่วนที่สำคัญมาก ใช้ร่วมกันระหว่างพอร์ตอินพุต เพื่อรับสัญญาณ อาจจะด้วยการกดสวิตช์ เพื่อนำไปประมวลผลและส่งไปพอร์ตเอาต์พุต เพื่อแสดงผลเช่น การติดสว่างของหลอดไฟ เป็นต้น
  4. ช่องทางเดินของสัญญาณ หรือบัส (BUS) คือเส้นทางการแลกเปลี่ยนสัญญาณข้อมูลระหว่าง ซีพียู หน่วยความจำและพอร์ต เป็นลักษณะของสายสัญญาณ จำนวนมากอยู่ภายในตัวไมโครคอนโทรลเลอร์ โดยแบ่งเป็นบัสข้อมูล (Data Bus) , บัสแอดเดรส (Address Bus) และบัสควบคุม (Control Bus)
  5. วงจรกำเนิดสัญญาณนาฬิกา เป็นองค์ประกอบที่สำคัญมากอีกส่วนหนึ่ง เนื่องจากการทำงานที่เกิดขึ้นในตัวไมโครคอนโทรลเลอร์ จะขึ้นอยู่กับการกำหนดจังหวะ หากสัญญาณนาฬิกามีความถี่สูง จังหวะการทำงานก็จะสามารถทำได้ถี่ขึ้นส่งผลให้ไมโครคอนโทรลเลอร์ตัวนั้น มีความเร็วในการประมวลผลสูงตามไปด้วย
ตัวอย่างไมโคร คอนโทรลเลอร์

  1. ไมโคร คอนโทรลเลอร์ คืออะไร?

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

            ภายในไมโครคอนโทรลเลอร์จะประกอบไปด้วย

    -หน่วยประมวลผล
    -หน่วยความจำชั่วคราว (RAM)
    -หน่วยความจำถาวร (ROM)
    -พอร์ตอินพุต,เอาท์พุต 
    *ส่วนพิเศษอื่นๆ จะขึ้นอยู่กับกระบวนการผลิตของแต่ละบริษัทที่จะผลิตขึ้นมา
    ใ่ส่คุณสมบัติพิเศษลงไปเช่น
         - ADC (Analog to Digital) ส่วนภาครับสัญญาณอนาล็อกแปลงไปเป็นสัญญาณดิจิตอล
         - DAC (Digital to Analog) ส่วนภาคส่งสัญญาณดิจิตอลแปลงไปเป็นสัญญาณอนาล็อก
         - I2C (Inter Integrate Circuit Bus) 
    เป็นการสื่อสารอนุกรม แบบซิงโครนัส (Synchronous)
    เพื่อใช้ ติดต่อสื่อสาร ระหว่าง ไมโครคอนโทรลเลอร์ (MCU) กับอุปกรณ์ภายนอก
    ซึ่งถูกพัฒนาขึ้นโดยบริษัท Philips Semiconductors โดยใช้สายสัญญาณเพียง 2 เส้นเท่านั้น
    คือ serial data (SDA) และสาย serial clock (SCL) ซึ่งสามารถ เชื่อมต่ออุปกรณ์
    จำนวนหลายๆ ตัว เข้าด้วยกันได้ ทำให้ MCU ใช้พอร์ตเพียง 2 พอร์ตเท่านั้น
         - SPI (
    Serial Peripheral Interface) เป็นการเชื่อมต่อกับอุปกรณ์เพื่อรับส่งข้อมูลแบบ
    ซิงโครนัส (Synchronize) มีสัญญาณนาฬิกาเข้ามาเกี่ยวข้องระหว่างไมโครคอนโทรลเลอร์
    (Microcontroller) หรือจะเป็นอุปกรณ์ภายนอกที่มีการรับส่งข้อมูลแบบ SPI อุปกรณ์ที่ทำหน้าที่
    เป็นมาสเตอร์ (Master) โดยปกติแล้วจะเป็นไมโครคอนโทรลเลอร์ หรืออาจกล่าวได้ว่าอุปกรณ์ Master
    จะต้องควบคุมอุปกรณ์ Slave ได้ โดยปกติตัว Slave มักจะเป็นไอซี (IC) หน้าที่พิเศษต่างๆ เช่น
    ไอซีอุณหภูมิ, ไอซีฐานเวลานาฬิกาจริง (Real-Time Clock) หรืออาจเป็นไมโครคอนโทรลเลอร์
    ที่ทำหน้าที่ในโหมด Slave ก็ได้เช่นกัน
         - PWM (Pulse Width Modulation) การสร้างสัญญาณพัลส์แบบสแควร์เวฟ
    ที่สามารถปรับเปลี่่ยนความถี่และ Duty Cycle ได้เพื่อนำไปควบอุปกรณ์ต่างๆเ่ช่น มอเตอร์
         - UART (Universal Asynchronous Receiver Transmitter
    ทำหน้าที่รับส่งข้อมูลแบบ

          ไมโคร คอนโทรลเลอร์ มีกี่ประเภทอะไรบ้าง?

         ไมโคร คอนโทรลเลอร์ มีด้วยกันหลายประเภทแบ่งตามสถาปัตยกรรม
    (การผลิตและกระบวนการทำงานระบบการประมวลผล) ที่มีใช้ในปัจจุบันยกตัวอย่างดังนี้
    1.ไมโคร คอนโทรลเลอร์ตระกูล PIC (บริษัทผู้ผลิต Microchip ไมโครชิป)
    2.ไมโคร คอนโทรลเลอร์ตระกูล MCS51 (บริษัทผู้ผลิต Atmel,Phillips)
    3.ไมโคร คอนโทรลเลอร์ตระกูล AVR (บริษัทผู้ผลิต Atmel)
    4.ไมโคร คอนโทรลเลอร์ตระกูล ARM7,ARM9 (บริษัทผู้ผลิต Atmel,Phillips,Analog Device,Sumsung,STMicroelectronics)
    5.ไมโคร คอนโทรลเลอร์ตระกูล Basic Stamp (บริษัทผู้ผลิต Parallax)
    6.ไมโคร คอนโทรลเลอร์ตระกูล PSOC (บริษัทผู้ผลิต CYPRESS)
    7.ไมโคร คอนโทรลเลอร์ตระกูล MSP (บริษัทผู้ผลิต Texas Intruments)
    8.ไมโคร คอนโทรลเลอร์ตระกูล 68HC (บริษัทผู้ผลิต MOTOROLA)
    9.ไมโคร คอนโทรลเลอร์ตระกูล H8 (บริษัทผู้ผลิต Renesas)
    10.ไมโคร คอนโทรลเลอร์ตระกูล RABBIT (บริษัทผู้ผลิต RABBIT SEMICONDUCTOR)
    11.ไมโคร คอนโทรลเลอร์ตระกูล Z80 (บริษัทผู้ผลิต Zilog)

           ภาษาที่ใช้เขียน โปรแกรมควบคุมไมโครคอนโทลเลอร์ มีอะไรบ้าง?

    1.ภาษา Assembly
    2.ภาษา Basic
    3.ภาษา C
    4.ภาษา Pascal
           ภาษาดัง กล่าวที่กล่าวในเบื้องต้น ไมโครคอนโทรลเลอร์บางตระกูล จะใช้ได้ครบทุกภาษา แต่บางตระกูลจะใช้ได้บางภาษา ขึ้นอยู่กับบริษัทผู้ผลิต Software (โดยทั่วไปจะเรียกว่า Editor And Complier) ที่ใช้เขียนภาษาไมโครคอนโทรลเลอร์นั้นจะผลิตออกมาให้ Support หรือไม่ 
    Webmaster Talk:ผมขอสรุปในเบื้องต้นแบบง่ายๆ ไมโครคอนโทรลเลอร์เปรียบเทียบรถยนต์ทั่วไป
         รถยนต์ มีหลายบริษัทผู้ผลิต,ในแต่ละบริษัทก็มีอยู่หลายรุ่นหลายแบบ รถยนต์มีระบบทุกอย่างพร้อมขึ้นอยู่กับเราจะขับหรือควบคุมการใช้งานนั่นเอง
         ไมโคร คอนโทรลเลอร์ก็เช่นกัน มีหลายบริษัทผู้ผลิต,ในแต่ละบริษัทผู้ผลิต ก็จะมีหลายเบอร์ให้เลือกใช้งาน,ไมโครคอนโทรลเลอร์ก็มีระบบต่างๆอยู่เพียบ พร้อม ส่วนการใช้งานขึ้นอยู่กับเราจะเขียนโปรแกรมควบคุมให้มันทำงานตามที่เราต้อง การเท่านั้นเองอะซิงโครนัสสำหรับมาตรฐานการรับส่งข้อมูลแบบ RS-232

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

หลักของมาตรฐาน ISO 9001:2000      หลักการมาตรฐานของ ISO 9001:2000 จะเป็นการระบุถึงข้อกำหนดที่ใช้ในระบบบริหารที่เกี่ยวกับคุณภาพ โดยเป้าหมา...