เรียนรู้เกี่ยวกับไมโครคอนโทรลเลอร์ PIC และสถาปัตยกรรมพร้อมคำอธิบาย

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





PIC คือไฟล์ ไมโครคอนโทรลเลอร์อุปกรณ์ต่อพ่วง ซึ่งได้รับการพัฒนาในปี 1993 โดยไมโครคอนโทรลเลอร์ General Instruments มันถูกควบคุมโดยซอฟต์แวร์และตั้งโปรแกรมในลักษณะที่ทำงานต่าง ๆ และควบคุมสายการผลิต ไมโครคอนโทรลเลอร์ PIC ใช้ในแอพพลิเคชั่นใหม่ ๆ เช่นสมาร์ทโฟนอุปกรณ์เสริมเครื่องเสียงและอุปกรณ์ทางการแพทย์ขั้นสูง

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

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



มี PIC มากมายในตลาดตั้งแต่ PIC16F84 ถึง PIC16C84 PIC ประเภทนี้เป็นแฟลช PIC ราคาไม่แพง ไมโครชิปเพิ่งเปิดตัวชิปแฟลชที่มีประเภทต่างๆเช่น 16F628, 16F877 และ 18F452 16F877 มีราคาสองเท่าของราคา 16F84 รุ่นเก่า แต่มีขนาดใหญ่กว่ารหัสถึงแปดเท่าพร้อม RAM ที่มากขึ้นและพิน I / O ที่มากขึ้นตัวแปลง UART, A / D และคุณสมบัติอื่น ๆ อีกมากมาย


สถาปัตยกรรมไมโครคอนโทรลเลอร์ PIC

ไมโครคอนโทรลเลอร์ PIC ขึ้นอยู่กับสถาปัตยกรรม RISC สถาปัตยกรรมหน่วยความจำเป็นไปตามรูปแบบความทรงจำที่แยกจากกันสำหรับโปรแกรมและข้อมูลของ Harvard โดยมีบัสแยกกัน



สถาปัตยกรรมไมโครคอนโทรลเลอร์ PIC

สถาปัตยกรรมไมโครคอนโทรลเลอร์ PIC

1. โครงสร้างหน่วยความจำ

สถาปัตยกรรม PIC ประกอบด้วยความทรงจำสองแบบ ได้แก่ หน่วยความจำโปรแกรมและหน่วยความจำข้อมูล

หน่วยความจำโปรแกรม: นี่คือพื้นที่หน่วยความจำ 4K * 14 ใช้เพื่อจัดเก็บคำสั่ง 13 บิตหรือรหัสโปรแกรม ข้อมูลหน่วยความจำโปรแกรมถูกเข้าถึงโดยรีจิสเตอร์โปรแกรมที่เก็บแอดเดรสของหน่วยความจำโปรแกรม ที่อยู่ 0000H ใช้เป็นพื้นที่หน่วยความจำรีเซ็ตและ 0004H ใช้เป็นพื้นที่หน่วยความจำขัดจังหวะ

หน่วยความจำข้อมูล: หน่วยความจำข้อมูลประกอบด้วย RAM 368 ไบต์และ EEPROM 256 ไบต์ แรม 368 ไบต์ประกอบด้วยหลายธนาคาร แต่ละธนาคารประกอบด้วยทะเบียนวัตถุประสงค์ทั่วไปและการลงทะเบียนฟังก์ชันพิเศษ


ฟังก์ชันพิเศษรีจิสเตอร์ประกอบด้วยรีจิสเตอร์ควบคุมเพื่อควบคุมการทำงานต่างๆของทรัพยากรชิปเช่นไทเมอร์ ตัวแปลงอนาล็อกเป็นดิจิตอล , พอร์ตอนุกรม, พอร์ต I / O เป็นต้นตัวอย่างเช่น TRISA register ที่สามารถเปลี่ยนบิตเพื่อแก้ไขการทำงานของอินพุตหรือเอาต์พุตของพอร์ต A

รีจิสเตอร์วัตถุประสงค์ทั่วไปประกอบด้วยรีจิสเตอร์ที่ใช้ในการจัดเก็บข้อมูลชั่วคราวและผลการประมวลผลของข้อมูล รีจิสเตอร์เอนกประสงค์เหล่านี้คือรีจิสเตอร์ 8 บิตแต่ละตัว

ทะเบียนการทำงาน: ประกอบด้วยพื้นที่หน่วยความจำที่เก็บตัวถูกดำเนินการสำหรับแต่ละคำสั่ง นอกจากนี้ยังเก็บผลลัพธ์ของการดำเนินการแต่ละครั้ง

ลงทะเบียนสถานะ: บิตของการลงทะเบียนสถานะแสดงถึงสถานะของ ALU (หน่วยตรรกะเลขคณิต) หลังจากการดำเนินการทุกครั้งของคำสั่ง นอกจากนี้ยังใช้เพื่อเลือกหนึ่งใน 4 ธนาคารของ RAM

การเลือกไฟล์ลงทะเบียน: ทำหน้าที่เป็นตัวชี้ไปยังรีจิสเตอร์เอนกประสงค์อื่น ๆ ประกอบด้วยที่อยู่ไฟล์ลงทะเบียนและใช้ในการระบุที่อยู่ทางอ้อม

รีจิสเตอร์เอนกประสงค์อีกแบบคือรีจิสเตอร์โปรแกรมซึ่งเป็นรีจิสเตอร์ 13 บิต บิตด้านบน 5 บิตถูกใช้เป็น PCLATH (Program Counter Latch) เพื่อทำหน้าที่เป็นอิสระจากรีจิสเตอร์อื่น ๆ และ 8 บิตด้านล่างจะใช้เป็นบิตตัวนับโปรแกรม ตัวนับโปรแกรมทำหน้าที่เป็นตัวชี้ไปยังคำสั่งที่เก็บไว้ในหน่วยความจำของโปรแกรม

EEPROM: ประกอบด้วยพื้นที่หน่วยความจำ 256 ไบต์ เป็นหน่วยความจำถาวรเช่น ROM แต่เนื้อหาสามารถลบและเปลี่ยนแปลงได้ระหว่างการทำงานของไมโครคอนโทรลเลอร์ เนื้อหาใน EEPROM สามารถอ่านหรือเขียนถึงได้โดยใช้ฟังก์ชันพิเศษลงทะเบียนเช่น EECON1, EECON เป็นต้น

2. พอร์ต I / O

ซีรี่ส์ PIC16 ประกอบด้วยพอร์ต 5 พอร์ตเช่นพอร์ต A พอร์ต B พอร์ต C พอร์ต D และพอร์ต E

พอร์ต A: เป็นพอร์ต 16 บิตซึ่งสามารถใช้เป็นพอร์ตอินพุตหรือเอาต์พุตตามสถานะของทะเบียน TRISA

พอร์ต B: เป็นพอร์ต 8 บิตซึ่งสามารถใช้เป็นทั้งพอร์ตอินพุตและเอาต์พุต 4 บิตของมันเมื่อใช้เป็นอินพุตสามารถเปลี่ยนแปลงได้ตามสัญญาณขัดจังหวะ

พอร์ต C: เป็นพอร์ต 8 บิตซึ่งการทำงาน (อินพุตหรือเอาต์พุต) ถูกกำหนดโดยสถานะของทะเบียน TRISC

พอร์ต D: เป็นพอร์ต 8 บิตซึ่งนอกเหนือจากการเป็นพอร์ต I / O แล้วยังทำหน้าที่เป็นพอร์ตทาสสำหรับการเชื่อมต่อกับ ไมโครโปรเซสเซอร์ รถบัส.

พอร์ต E: เป็นพอร์ต 3 บิตที่ทำหน้าที่เพิ่มเติมของสัญญาณควบคุมไปยังตัวแปลง A / D

3. ตัวจับเวลา

ไมโครคอนโทรลเลอร์ PIC ประกอบด้วย 3 ตัวจับเวลา ซึ่ง Timer 0 และ Timer 2 เป็นตัวจับเวลาแบบ 8 บิตและ Time-1 เป็นตัวจับเวลา 16 บิตซึ่งสามารถใช้เป็น เคาน์เตอร์ .

4. ตัวแปลง A / D

ไมโครคอนโทรลเลอร์ PIC ประกอบด้วย 8 ช่องสัญญาณตัวแปลงอนาล็อกเป็นดิจิตอล 10 บิต การทำงานของ ตัวแปลง A / D ถูกควบคุมโดยการลงทะเบียนฟังก์ชันพิเศษเหล่านี้: ADCON0 และ ADCON1 บิตล่างของตัวแปลงจะถูกเก็บไว้ใน ADRESL (8 บิต) และบิตด้านบนจะถูกเก็บไว้ในทะเบียน ADRESH ต้องใช้แรงดันอ้างอิงอะนาล็อกที่ 5V สำหรับการทำงาน

5. ออสซิลเลเตอร์

ออสซิลเลเตอร์ ใช้สำหรับการสร้างเวลา ไมโครคอนโทรลเลอร์ PIC ประกอบด้วยออสซิลเลเตอร์ภายนอกเช่นคริสตัลหรือ RC ออสซิลเลเตอร์ ในกรณีของคริสตัลออสซิลเลเตอร์คริสตัลจะเชื่อมต่อระหว่างพินออสซิลเลเตอร์สองพินและค่าของตัวเก็บประจุที่เชื่อมต่อกับแต่ละพินจะกำหนดโหมดการทำงานของออสซิลเลเตอร์ โหมดต่างๆ ได้แก่ โหมดพลังงานต่ำโหมดคริสตัลและโหมดความเร็วสูง ในกรณีของ RC ออสซิลเลเตอร์ค่าของตัวต้านทานและตัวเก็บประจุจะกำหนดความถี่สัญญาณนาฬิกา ความถี่สัญญาณนาฬิกาอยู่ในช่วง 30 kHz ถึง 4 MHz

6. โมดูล CCP:

โมดูล CCP ทำงานในสามโหมดต่อไปนี้:

โหมดจับภาพ: โหมดนี้จะจับเวลาที่สัญญาณมาถึงหรืออีกนัยหนึ่งคือจับค่าของ Timer1 เมื่อพิน CCP สูงขึ้น

เปรียบเทียบโหมด: ทำหน้าที่เป็นตัวเปรียบเทียบแบบอะนาล็อกที่สร้างเอาต์พุตเมื่อค่า timer1 ถึงค่าอ้างอิงที่แน่นอน

โหมด PWM: มันให้ มอดูเลตความกว้างของพัลส์ เอาต์พุตที่มีความละเอียด 10 บิตและรอบการทำงานที่ตั้งโปรแกรมได้

อุปกรณ์ต่อพ่วงพิเศษอื่น ๆ ได้แก่ ตัวจับเวลา Watchdog ที่รีเซ็ตไมโครคอนโทรลเลอร์ในกรณีที่ซอฟต์แวร์ทำงานผิดพลาดและการรีเซ็ต Brownout ที่รีเซ็ตไมโครคอนโทรลเลอร์ในกรณีที่พลังงานผันผวนและอื่น ๆ เพื่อความเข้าใจที่ดีขึ้นเกี่ยวกับไมโครคอนโทรลเลอร์ PIC นี้เรากำลังจัดทำโครงการที่ใช้งานได้จริงหนึ่งโครงการซึ่งใช้คอนโทรลเลอร์นี้ในการทำงาน

ไฟถนนที่ส่องสว่างเมื่อตรวจจับการเคลื่อนไหวของยานพาหนะ

นี้ โครงการควบคุมไฟถนน LED ได้รับการออกแบบมาเพื่อตรวจจับการเคลื่อนไหวของรถบนทางหลวงเพื่อเปิดปิดไฟถนนข้างหน้าและปิดไฟท้ายเพื่อประหยัดพลังงาน ในโครงการนี้การเขียนโปรแกรมไมโครคอนโทรลเลอร์ PIC ทำได้โดยใช้ ฝัง C หรือภาษาแอสเซมบลี

ไฟถนนที่ส่องสว่างเมื่อตรวจจับการเคลื่อนไหวของยานพาหนะ

ไฟถนนที่ส่องสว่างเมื่อตรวจจับการเคลื่อนไหวของยานพาหนะ

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

โครงการไมโครคอนโทรลเลอร์ PIC สามารถใช้ในแอปพลิเคชั่นต่างๆได้เช่นอุปกรณ์ต่อพ่วงวิดีโอเกมอุปกรณ์เสริมเสียง ฯลฯ นอกเหนือจากนี้หากต้องการความช่วยเหลือเกี่ยวกับโครงการใด ๆ คุณสามารถติดต่อเราได้โดยการแสดงความคิดเห็นในส่วนความคิดเห็น