微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC16F887与MPLAB之应用设计

PIC16F887与MPLAB之应用设计

时间:02-24 来源:互联网 点击:
前言
  近年來由於半導體技術發展快速,使得電子產品的製造成本大幅降低,電子產品的使用也逐漸成為日常生活之中人們不可或缺的一部份,由於使用者的需求不同,電子產品也需不斷的求新求變。目前許多電子產品需利用單晶片微電腦(Single Chip Microcomputer) 作為控制核心,這一類的產品特色在於,只要將寫好的控制程式寫入單晶片的記憶體中,而且在單晶片外接一些週邊的電子元件,就可以形成一個新的電子產品,這一類電子產品在日常生活中隨處可見,例如生日卡片上的音樂IC、各式遙控器、行動電話,以及家電用品和汽車等其他產品均有单片机的運用,除此之外在個人電腦(PC)以及相關週邊也都需利用单片机,另外工業控制應用上更是少不了单片机。
  繼學習和使用Intel MCS-51系列单片机之後,我們決定再研究Microchip PIC16F87X系列单片机,以PIC16F877為研究目標,來探討单片机微電腦的組成架構,程式開發及控制應用技術,以此作為基礎,再擴展於其他類型單晶片的運用與應用電路設計。
I簡 介
1.1单片机基本架構
  单片机係指由中央處理單元(CPU),記憶體單元(Memory)及輸入/輸出單元三大部分所組成。其中CPU可分為兩部分,即算數邏輯(ALU)及控制單元(CU),CPU透過匯流排(BUS)執行程式碼的Fetch、Decode、算數邏輯運算及讀寫時序信號的控制。記憶體單元提供存放程式與資料之空間,包含唯讀記憶體(ROM)與隨機存取記憶體(RAM)。而輸入/輸出單元提供與外界週邊設備或元件溝通的管道。

1.1.1单片机微電腦
  单片机微電腦(Single Chip Microcomputer)簡稱為单片机,而所謂单片机微電腦就是構成一部微電腦系統所需的元件,如中央處理單元(CPU)、記憶體單元(Memory)、輸入/輸出(I/O)、時脈產生單元及相關週邊裝置製作在同一晶片上,而成為一能夠獨立運作的控制系統。

1.2 PIC16F877 單晶片微電腦
  PIC 16F87X系列單晶片是Microchip 公司所推出的產品,它為一顆RISC的八位元微電腦控制單晶片,搭配了高達8K的採用Flah型式的程式記憶體及5組的I/O PORT,和支援達14個中斷。
  PIC16F877的特性說明如下:

  ●採用高性能的RISC CPU核心
  ●8位元微電腦控制晶片
  ●8Kx14程式記憶體(Flash)
  ●368Bytes資料記憶體及256Bytes的EEPROM資料記憶體
  ●5組I/O ports(A,B,C,D,E)
  ●2組8位元計時/計數器Timer0,Timer2,及1組16位元計時/計數器Timer1
  ●支援14個中斷處理

1.3 MPLAB
  MPLAB是Microchip 公司對PIC系列单片机所發展的一套整合發展環境(Integrated Development Environment , IDE) MPLAB包含下列工具:
  ☆MPLAB Editor─程式編輯器
  ☆MPASM Assembler─程式組譯器
  ☆MPLAB-SIM Software Simulator─軟體模擬器
  ☆MPLAB-ICEMULATOR─硬體模擬器
  ☆MPLAB-ICD─ICD元件的偵錯模擬環境
II 系統架構
2.1 PIC16F87X单片机核心架構
  PIC系列单片机為RISC架構单片机,它所採用的Harvard結構和過去一般單晶片所採用的Von Neumann架構最大的差異在於匯流排的改變。Von Neumann結構是傳統的單晶片結構,程式記憶體和資料記憶體是在同一個記憶體區塊,記憶體與CPU之間只使用單一匯流排,不論是要對程式記憶體或資料記憶體作存取都是使用此匯流排,因此要完成一個指令通常必須依序使用匯流排,從指令的擷取、解碼、資料讀取、執行到資料的寫入,最後的結果是一個指令大都需要等待好幾個週期才能完成。Harvard結構改善了這樣的缺點,主要是程式記憶體和資料記憶體使用不同的記憶體區塊,而且也有各自獨立的匯流排,這樣的做法大大的改善了指令執行的頻寬,兩個匯流排可以同時的工作,最大的優點是當一個指令在執行時,已經可以去抓下一個指令,因此對於運作的效率會有顯著的提昇。

2.2內部結構圖
  圖2.2為 PIC16F877单片机的內部功能架構圖,圖中說明匯流排和各個功能方塊之間的連接方式,利用架構圖可以讓我們對於整個系統更加的了解。

2.3接腳功能描述
  下面列出PIC16F877单片机的接腳功能與說明。
  

 

2.3单片机的振盪時脈
  振盪時脈的速度決定了工作的速度,因為內部所有的動作都是這個時脈來驅動進行。PIC16F87X的時脈輸入是由OSC/CLKIN和OSC2/CLKOUT兩支接腳來輸入的,時脈的速度可以分成四種模式:
  ●LP模式─低功率振盪器
  ●XT模式─振盪器/諧振器
  ●HS模式─快速振盪器/諧振器
  ●RC模式─電阻器/電容器
  在LP、XT和HS模式之下,通常是使用石英振盪器(Crystal)或是陶瓷諧振器(ceramic resonator)連接在OSC1/CLKIN和OSC2/CLKOUT這兩支接腳上來產生振盪信號。或是直接用外部的時脈信號輸入作為單晶片的時脈,這個時脈信號從OSC1/CLKIN接腳輸入單晶片,OSC2/CLKOUT接腳則不使用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top