16F84
5000
SOP/21+
誠(chéng)信經(jīng)營(yíng)...品質(zhì)保證..價(jià)格優(yōu)勢(shì)...可提供一站式配套
16F84
65286
-/21+
全新原裝現(xiàn)貨,長(zhǎng)期供應(yīng),免費(fèi)送樣
16F84
41101
SOP/-
大量現(xiàn)貨,提供一站式配單服務(wù)
16F84
2000
SOP/25+
只做原裝,支持賬期,提供一站式配單服務(wù)
16F84
30000
-/DIP/SOP
原廠直銷,價(jià)格優(yōu)勢(shì),一站式配套服務(wù),可開增值稅發(fā)
16F84A
7300
DIP/23+
原裝現(xiàn)貨
16F84A
18900
DIP/2020+
原裝進(jìn)口現(xiàn)貨,假一賠十,價(jià)格優(yōu)勢(shì)
16F84A/04
7471
-/2024+
全新原裝現(xiàn)貨
16F84A-04/P
100000
-/-
-
16F84A-04/P
3000
-/2019+
原裝 部分現(xiàn)貨量大期貨
16F84A-04/SO
35215
SMD18/23+
23+
16F84A-04I/SO
3000
SOP/21+
原裝現(xiàn)貨,優(yōu)勢(shì)渠道
16F84A-20/P
521010
NR/2017+
-
16F84T-04/SO
3000
-/2019+
原裝 部分現(xiàn)貨量大期貨
16F84
18-pin Flash/EEPROM 8-Bit Microcontr...
MICROCHIP
16F84PDF下載
16F84
18-pin Flash/EEPROM 8-Bit Microcontr...
MICROCHIP [Microchip Technology]
16F84PDF下載
16F84A
18-pin Flash/EEPROM 8-Bit Microcontr...
MICROCHIP
16F84APDF下載
16F84A
18-pin Flash/EEPROM 8-Bit Microcontr...
MICROCHIP [Microchip Technology]
16F84APDF下載
16F84A
18-pin Enhanced Flash/EEPROM 8-Bit M...
MICROCHIP [Microchip Technology]
16F84APDF下載
pic16f84單片機(jī)點(diǎn)亮一只發(fā)光二極管的源程序?qū)嵗菫榱苏f明pic單片機(jī)16f84具體應(yīng)用時(shí)的基本格式。 現(xiàn)在我們已經(jīng)知道要單片機(jī)工作,就需用匯編語言編制程序。而對(duì)某個(gè)pic單片機(jī)編程時(shí),還需對(duì)選用的pic單片機(jī)內(nèi)部硬件資源有所了解。這里介紹pic16f84單片機(jī)的內(nèi)部結(jié)構(gòu),如圖1所示的框圖。由圖1看出,其基本組成可分為四個(gè)主要部分,即運(yùn)算器alu和工作寄存器w;程序存儲(chǔ)器;數(shù)據(jù)存儲(chǔ)器和輸入/輸出(i/o)口;堆棧存儲(chǔ)器和定時(shí)器等。現(xiàn)分別介紹如下。1運(yùn)算器alu及工作寄存器w 運(yùn)算器alu是一個(gè)通用算術(shù)、邏輯運(yùn)算單元,用它可以對(duì)工作寄存器w和任何通用寄存器中的兩個(gè)數(shù)進(jìn)行算術(shù)(如加、減、乘、除等)和邏輯運(yùn)算(如與、或、異或等)。16f84是八位單片機(jī),alu的字長(zhǎng)是八位。在有兩個(gè)操作數(shù)的指令中,典型的情況是一個(gè)操作數(shù)在工作寄存器w中,而另一個(gè)操作數(shù)是在通用寄存器中,或者是一個(gè)立即數(shù)。在只有一個(gè)操作數(shù)的情況下,該數(shù)要么是在工作寄存器w中,要么是在通用寄存器中。w寄存器是一個(gè)專用于alu操作的寄存器,它是不可尋址的。 根據(jù)所執(zhí)行的指令,alu還可能會(huì)影響框圖中狀態(tài)寄存器status的進(jìn)位
數(shù)據(jù)存儲(chǔ)器 在單片機(jī)pic16f84中,除了有存放程序的程序存儲(chǔ)器外,還有數(shù)據(jù)存儲(chǔ)器。單片機(jī)在執(zhí)行程序過程中,往往需要隨時(shí)向單片機(jī)輸入一些數(shù)據(jù),而且有些數(shù)據(jù)還可能隨時(shí)改變。在這種情況下就需用數(shù)據(jù)存儲(chǔ)器。由于數(shù)據(jù)存儲(chǔ)器不但要能隨時(shí)讀取存放在其各個(gè)單元內(nèi)的數(shù)據(jù),而且還需隨時(shí)寫進(jìn)新的數(shù)據(jù),或改寫原來的數(shù)據(jù)。因此,數(shù)據(jù)存儲(chǔ)器需由隨機(jī)存儲(chǔ)器ram構(gòu)成。ram存儲(chǔ)器在斷電時(shí),所存數(shù)據(jù)隨即丟失,這在實(shí)際應(yīng)用中有時(shí)會(huì)帶來不便。但是,在16f84單片機(jī)中有64×8位e2prom數(shù)據(jù)存儲(chǔ)器。存放在e2prom中的數(shù)據(jù)在斷電時(shí)不會(huì)丟失。 16f84單片機(jī)中的ram數(shù)據(jù)存儲(chǔ)器如表1所示,該ram分為兩個(gè)存儲(chǔ)體:即存儲(chǔ)體0(bank0)和存儲(chǔ)體1(bank1)。每個(gè)存儲(chǔ)體均可以直接用內(nèi)部總線傳送信息,所以它們都是以寄存器方式工作和尋址。這些八位寄存器,又可分為通用寄存器和專用寄存器兩個(gè)部分。通用寄存器存放數(shù)據(jù),專用寄存器存放控制單片機(jī)運(yùn)作的信息。每個(gè)存儲(chǔ)體最大可擴(kuò)展到7fh(128個(gè)字節(jié))。在每個(gè)存儲(chǔ)體中,專用寄存器被安排在低位地址空間,通用寄存器被安排在高位地址空間。 通用寄存器用法單一,但專用寄存器卻
機(jī)完成一項(xiàng)基本任務(wù),必須將任務(wù)分解成一些具體步驟,再要求它去逐項(xiàng)執(zhí)行每個(gè)步驟,還要對(duì)它下命令。該命令在單片機(jī)術(shù)語中稱為“指令”(inetruction)。完成一項(xiàng)任務(wù)所需的所有指令的有序集合就稱為“程序”(programm)。這些指令要預(yù)先一條一條順序地放到單片機(jī)的程序存貯器中,單片機(jī)在運(yùn)行時(shí),片中的cpu從程序存貯器中逐條有序取出指令,執(zhí)行指令,并將有關(guān)指令執(zhí)行完畢,即可完成既定任務(wù)。 不同種類的單片機(jī)有不同的一套命令(即所謂“指令系統(tǒng)”)。pic單片機(jī)其指令系統(tǒng)與51系列的完全不同。pic16f84單片機(jī)有30余條指令構(gòu)成的指令系統(tǒng)。每條指令由14位(bit)構(gòu)成,這些位是二進(jìn)制碼的0和1,如果要使16f84單片機(jī)端口b的b0位輸出高電平,以點(diǎn)亮一只發(fā)光二極管led,而b口的其余各位仍保持低電平,則需要使單片機(jī)執(zhí)行下列各條指令(機(jī)器碼): 11000000000000 00000001100110 11000000000001 00000010000110 10100000000100 早先的技術(shù)人員就是用這樣的二進(jìn)制碼來編寫程序的。上列程序,看起來像天書
12 e2prom的使用方法 在pic16f84單片機(jī)中,除了可直接尋址的由sram構(gòu)成的數(shù)據(jù)存儲(chǔ)器外,還另有可電擦、電寫的e2prom數(shù)據(jù)存儲(chǔ)器。該e2prom共有64字節(jié),其地址為00~3fh單元。由于e2prom具有在線改寫,并在掉電后仍能保持?jǐn)?shù)據(jù)的特點(diǎn),可為用戶的特殊應(yīng)用提供方便。16f84的e2prom在正常操作時(shí)的整個(gè)vdd工作電壓范圍內(nèi)是可讀寫的,典型情況下可重寫100萬次,數(shù)據(jù)保存期大于40年。 pic16f84單片機(jī)的e2prom并未映象在寄存器組空間中,所以它們不能像sram通用寄存器那樣用指令直接尋址訪問,而需要通過專用寄存器進(jìn)行間接尋址操作。因此,在16f84單片機(jī)中增加了以下四個(gè)專用寄存器,即eecon1、eecon2、eedata、eeadr,專門用于片內(nèi)對(duì)e2prom的操作。該專用寄存器中,eedata存放8位讀/寫數(shù)據(jù),eeadr存放正在被訪問的e2prom存儲(chǔ)單元的地址。 eecon1是只有低五位的控制寄存器,其高三位不存在,讀作“0”。具體見下表。 d7 d6 d5 d4 d3 d2 d1 d0 - - - eeif wrer
延時(shí)和定時(shí) 在設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)時(shí),經(jīng)常會(huì)遇到需要使某一過程(如加溫、加壓等)持續(xù)一段時(shí)間的情況,如連續(xù)加壓1分鐘,通電2分鐘等。單片機(jī)如何正確確定這段時(shí)間呢?這里可通過兩種方式,即延時(shí)和定時(shí)來實(shí)現(xiàn)。試看下例。 在應(yīng)用系統(tǒng)中要求pic16f84單片機(jī)的rao端控制一個(gè)發(fā)光二極管按一定頻率閃亮,可通過右圖的電路來實(shí)現(xiàn)。同時(shí)還必須為16f84單片機(jī)編制一個(gè)程序。由電路圖可知,要使發(fā)光二極管led按一定的頻率閃亮,只要使rao端輸出一個(gè)變化的高→低→高……電平即可。由此設(shè)計(jì)出如下的源程序(清單1): list p=16f84,f=inhx8m ;…… org 0 movlw 0 ;主程序開始 tris 5 ;置ra口為輸出 bcf 5,0 ;ra口0位清零 loop:call delay;閃動(dòng)延時(shí) comf 5 ;ra口求反,亮—滅交替 goto loop ;循環(huán) ;…… delay ;以下為延時(shí)子程序 movlw d′50 movwf 8
12 E2PROM的使用方法
在PIC16F84單片機(jī)中,除了可直接尋址的由SRAM構(gòu)成的數(shù)據(jù)存儲(chǔ)器外,還另有可電擦、電寫的E2PROM數(shù)據(jù)存儲(chǔ)器。該E2PROM共有64字節(jié),其地址為00~3FH單元。由于E2PROM具有在線改寫,并在掉電后仍能保持?jǐn)?shù)據(jù)的特點(diǎn)...
10 復(fù)位
復(fù)位是單片機(jī)的初始化操作。其主要功能是把程序計(jì)數(shù)器PCL初始化為000H,可使16F84單片機(jī)從000H單元開始執(zhí)行程序。
PIC16F84單片機(jī)有下列幾種不同的復(fù)位方式。
(1)芯片上電復(fù)位POR。
(2)正常工作...
中斷
PIC單片機(jī)16F84具有實(shí)時(shí)處理功能,能對(duì)外界異常發(fā)生的事件由中斷技術(shù)作及時(shí)處理。
當(dāng)單片機(jī)的CPU正在處理某事件時(shí),若外部發(fā)生了某一事件(如定時(shí)器溢出、引腳上電平變化),請(qǐng)求CPU迅速去處理,于是CPU就暫時(shí)中止當(dāng)...
延時(shí)和定時(shí)
在設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)時(shí),經(jīng)常會(huì)遇到需要使某一過程(如加溫、加壓等)持續(xù)一段時(shí)間的情況,如連續(xù)加壓1分鐘,通電2分鐘等。單片機(jī)如何正確確定這段時(shí)間呢?這里可通過兩種方式,即延時(shí)和定時(shí)來實(shí)現(xiàn)。試看下例。
...
定時(shí)器/計(jì)數(shù)器TMRO
PIC單片機(jī)16F84中有一個(gè)定時(shí)器,此定時(shí)器也可用于計(jì)數(shù),因此稱為定時(shí)器/計(jì)數(shù)器,符號(hào)為TMRO。TMRO可用于定時(shí)控制、延時(shí)、對(duì)外部事件計(jì)數(shù)和檢測(cè)等場(chǎng)合。TMRO是一個(gè)8位增量(加1)計(jì)數(shù)器。它在數(shù)據(jù)存貯器中的地址為01。...
16f84功能很一般啊?為什么那么貴啊?有些pic單片機(jī),功能比16f84多很多,但價(jià)格卻比16f84便宜.16f84為什么這么貴呢?
我早就講過16f84已經(jīng)是太老了。作為產(chǎn)品開發(fā)幾乎沒有人用了。現(xiàn)在有大量的和16f84引腳兼容但功能更強(qiáng)的芯片,售價(jià)也比16f84便宜許多。
和16f84內(nèi)部一樣吧 16f84有otp的嗎
用16f57代替16c56調(diào)試程序 microchip公司在2004年推出了16c54、16c57的flash的版本:16f54、16f57,可遺憾的是一直無16f56出來。雖也能用16f84代替16c56的調(diào)試程序,16f84與16c54、16c56管腳兼容,但軟件上需作較大的改動(dòng)。如果用16f57代替16c56,由于管腳不兼容,因此需要自己做一個(gè)轉(zhuǎn)換座,硬件上工作量大一些,但在軟件上需修改的地方較少,需注意以下幾個(gè)方面:1. 07h在16f57中是portc,那樣的話我們?cè)谡{(diào)試時(shí)就不能使用07h了。2. 復(fù)位地址不一樣。 #define __cpu57 ;57 pic56 equ 3ffh ;定義56程序開始地址 pic57 equ 7ffh ;定義57程序開始地址 org pic56 goto main
請(qǐng)教!為什么不對(duì)?16f84請(qǐng)教各位前輩我編了一個(gè)小程序,為什么16f84好象不干活似的?(初編程)程序如下,請(qǐng)指教!status equ 03hf12 equ 0chporta equ 05htrisa equ 85h movlw 00h bsf status,5 movwf trisa bcf status,5 movlw 00h movwf porta end匯編之后的信息有:message[302] d:\hw\210084\22.asm 7 : register in operand not in bank 0. ensure that bank bits are correct.