? ? ? ? PIC16F684功能介紹
?
?
PIC16F684單片機(jī)帶有Flash程序儲(chǔ)存結(jié)構(gòu),主要存放由用戶預(yù)編好的程序和一些固定不變的數(shù)據(jù)。程序存儲(chǔ)器共有2K×16位程序單元空間。
PIC16F684單片機(jī)數(shù)據(jù)存儲(chǔ)區(qū)主要包括特殊功能寄存器和通用寄存器兩部分,用于存放CPU在執(zhí)行過程中產(chǎn)生的的中間數(shù)據(jù)或預(yù)置參數(shù),共有128字節(jié)單元空間。
PIC16F684單片機(jī)配置有3個(gè)功能較強(qiáng)的多功能定時(shí)器模塊:TMR0(8位)、TMR1(16位)、TMR2(8)。除TMR2以外都可以作為計(jì)數(shù)器使用。每個(gè)定時(shí)器/計(jì)數(shù)器都配有不同比例的預(yù)分頻器。
PIC16F684單片機(jī)嵌入了一個(gè)具有較強(qiáng)功能的看門狗定時(shí)器WDT,能夠有效防止因環(huán)境干擾而引起系統(tǒng)程序“飛益”。WDT的定時(shí)/計(jì)數(shù)脈沖是由芯片內(nèi)專用的的RC振蕩器產(chǎn)生的。它的工作環(huán)境不需要任何外部器件,也與單片機(jī)的時(shí)鐘電路無關(guān)。這樣即使單片機(jī)的時(shí)鐘停止,WDT仍能繼續(xù)工作。
PIC16F684單片機(jī)嵌入了一個(gè)8路10位AD,用來將外部模擬信號(hào)轉(zhuǎn)換成單片機(jī)可以接受的和處理的數(shù)字信號(hào)。A/D轉(zhuǎn)換采用主次比較法,參考電壓既可以使用標(biāo)準(zhǔn)的VDD和VSS信號(hào),也可以使用外加參考電壓的方式。
PIC16F684引腳圖:
PIC16F684引腳說明
1、
VCC:C=circuit 表示電路的意思, 即接入電路的電壓;
VDD:D=device 表示器件的意思, 即器件內(nèi)部的工作電壓;
VSS:S=series 表示公共連接的意思,通常指電路公共接地端電壓;
VEE:E=electron 通常指負(fù)電壓供電;
VDDH:H=high 表示高壓,即高壓供電端;
VPP:編程/擦除電壓,片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。
2、
RA(0~5):具有可編程上拉和電平變化的PORTA I/O口,A口;
T1CKI:Timer1時(shí)鐘;
OSC(1~2):晶振/諧振器;
CLKIN:外部市政輸入、RC振蕩器連接。
3、
AN(0~7):A/D通道輸入;
T1G:Timer1門控;
CLKOUT:輸出。
4、
MCLR:帶有內(nèi)部上拉的主復(fù)位;
VPP:編程電壓。
5、
RC(0~5) :具有可編程上拉和電平變化的PORTC I/O口,C口;
CCP1:捕捉輸入、比較輸出;
P1A:PWM輸出。
6、
C2OUT:比較器2輸出;
P1B:PWM輸出。
7、
P1C:PWM輸出。
8、
P1D:PWM輸出。
9、
C2IN-:比較器2輸入。
10、
C2IN+:比較器2輸入。
11、
T0CKI:Timer0時(shí)鐘輸入;
INT:外部中斷;
C1OUT:比較器1輸出。
PIC16F684各個(gè)引腳介紹:
12、
C1IN-:比較器1輸入;
Vref:A/D外部參考電壓;
ICSPCLK:串行編程時(shí)鐘。
13、
ICSPDAT:串行編程數(shù)據(jù)I/O;
ULPWU:超低功耗喚醒輸入。
14、
VCC:C=circuit 表示電路的意思, 即接入電路的電壓;
VDD:D=device 表示器件的意思, 即器件內(nèi)部的工作電壓;
VSS:S=series 表示公共連接的意思,通常指電路公共接地端電壓;
VEE:E=electron 通常指負(fù)電壓供電;
VDDH:H=high 表示高壓,即高壓供電端;
?
VPP:編程/擦除電壓,片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。
PIC16F684功能圖框:
程序存儲(chǔ)器構(gòu)成
PIC16F684具有一個(gè)13位程序計(jì)數(shù)器,可以對(duì)8k x 14的程序存儲(chǔ)空間進(jìn)行尋址。 而PIC16F684僅在物理上實(shí)現(xiàn)了第一個(gè)2k x 14(0000h-07FFh)的存儲(chǔ)空間。訪問該邊界以外的單元將導(dǎo)致實(shí)際訪問存儲(chǔ)器的第一個(gè)2k x 14存儲(chǔ)空間。 復(fù)位向量地址為0000h,中斷向量地址為0004h如下圖:
PIC16F684程序存儲(chǔ)器映射和堆棧
?
pic16f684c程序:
#include
《pic.h》
#define uchar unsigned char
#define uint unsigned int
__CONFIG(0xF2C4);
void delay(uint x)
{
uint a,b;
for(a=x;a》0;a--)
for(b=110;b》0;
b--);
}
void main()
{
OSCCON = 0x70;
。。.
評(píng)論
查看更多