PIC的查表程序可以利用子程序帶值返回的特點(diǎn)來(lái)實(shí)現(xiàn)。具體是在主程序中先取表數(shù)據(jù)地址放入W,接著調(diào)用子程序,子程序的第一條指令將W置入PC,則程序跳到數(shù)據(jù)地址的地方,再由“RETLW”指令將數(shù)據(jù)放入
PSWEQU03R0EQU08R1EQU09R2EQU0AH R3EQU0BHR4EQU0CHR5EQU0DHR6EQU0EHR7EQU0FHTEMPEQU13HCNT1EQU11HCNTHEQU12HBUF0EQU17HBUF1EQU18HESUM1EQU13HESUM2EQU14HESUM3EQU15HESUM4EQU16HDSUM1EQU19HDSUM2EQU1AH
八位單片機(jī)由于內(nèi)部構(gòu)造簡(jiǎn)單,體積小,成本低廉,在一些較簡(jiǎn)單的控制器中應(yīng)用很廣。即便到了本世紀(jì),在單片機(jī)應(yīng)用中,仍占有相當(dāng)?shù)姆蓊~。由于八位單片機(jī)種類繁多,本文僅將常用的幾種在性能上作一個(gè)簡(jiǎn)單
美國(guó)MICroChip公司的PIC單片機(jī)是一種CMOS8位單片機(jī),該系列單片機(jī)采用了IUSC精簡(jiǎn)指令系統(tǒng)和哈佛總線結(jié)構(gòu),其運(yùn)行速度比一般的單片機(jī)快4倍。PIC單片機(jī)的程序存儲(chǔ)器有多種類型:EEPROM型、Flashmemor
#include"1602.h"#include"18b20.h"#include"main.h"__CONFIG(0X0B31);main(){charmsg[2][16]={"Temperature:",".C"};delay_us2(40,40);delay_us2(100,200);initial();while(1){start_convert();change
工作以來(lái)一直使用ST的單片機(jī),其他的單片機(jī)雖大致了解但從未認(rèn)真看過(guò),近幾日恰好無(wú)事,決定熟悉一下PIC的單片機(jī),于是想將自己從網(wǎng)上或這書本上的東西轉(zhuǎn)下來(lái),予以同一樣的初學(xué)者共同參考。 PIC的指令系統(tǒng) PIC 8位
DMF5001N圖形液晶顯示模塊由一塊160×128點(diǎn)陣單屏結(jié)構(gòu)的液晶顯示器件、兩片T6961B、兩片T6A39、一片T6963C及其8KRAM以及配套電路組成。T6963C有一內(nèi)置字符器CGROM,共有128個(gè)5×7點(diǎn)陣ASCII字符;它
//中斷的應(yīng)用二//★★★★★★★★★數(shù)字鐘★★★★★★★★★★★\\\\ //單征機(jī)型號(hào):PIC16F877A //功能描述:數(shù)字鐘功能,初始顯示時(shí)間為12點(diǎn),且?guī)謩?dòng)調(diào)整時(shí)間功能。 //端口定義:RA0~RA5數(shù)碼管位控制口、RD0~R
看門狗計(jì)時(shí)器(Watch Dog Timer)是一個(gè)片內(nèi)自振式的RC振蕩計(jì)時(shí)器,無(wú)需任何的外接元件。這意味著即使芯片OSC1/OSC2上振蕩停止了(例如執(zhí)行指令SLEEP后),WDT照樣保持計(jì)時(shí)。WDT計(jì)時(shí)溢出將產(chǎn)生RESET。在
PIC16C5X內(nèi)藏有上電復(fù)位電路(POR)。在芯片上有一復(fù)位端MCLR,對(duì)于一般的應(yīng)用,只要把MCLR端接在高電位(VDD)即可,因?yàn)閮?nèi)部復(fù)位電路會(huì)在芯片上電時(shí)自動(dòng)復(fù)位,無(wú)需在MCLR端再加上電復(fù)位電路。對(duì)于某些
在我一次產(chǎn)品中有AVR和PIC兩種芯片同時(shí)存在,當(dāng)用AVR推動(dòng)繼電器--再推動(dòng)接觸器。用PIC來(lái)顯示。發(fā)現(xiàn)PIC居然有點(diǎn)小小的干擾,不得不在外圍電路上加措施才解決問(wèn)題。都說(shuō)PIC的抗干擾一流的,我懷疑之下對(duì)兩種單片機(jī)做一
菜鳥學(xué)PIC單片機(jī)(三)LCD時(shí)鐘的總結(jié),并由中斷暫禁的后果說(shuō)開去上回說(shuō)到剛接觸PIC沒(méi)20天的菜鳥碧水長(zhǎng)天準(zhǔn)備"野心勃勃"寫一段LCD顯示精確時(shí)鐘的但遭到無(wú)情狙擊的故事,幸好得到這里行家的點(diǎn)撥,方能理清一點(diǎn)
用c語(yǔ)言實(shí)現(xiàn)24LC256讀寫(非軟件模擬方式)#include unsignedCHARi=0; unsignedCHARreceive=0x00; void i2c_start() { SEN=1;//啟動(dòng) do{ }while(SSPIF==0); SSPIF=0; } void i2c_stop() { PEN=1;//
PIC系列8位單片機(jī)為適應(yīng)各種不同的用途,有多種型號(hào)可供選用。但是,盡管PIC單片機(jī)有不同的檔次和型號(hào),但其最基本的組成則大同小異。因此,在這里先從型號(hào)PIC16F84的單片機(jī)入手,討論其基本組成。PIC1
INCLUDE ;MCUPIC16F877DIP40LIST P=PIC16F877;__CONFIG _CP_OFF&_DEBUG_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC&_LVP_OFF ;PIC16F877;__IDLOCS0x7206errorlevel -302 errorlevel -203CBLOCK 20HCOUNTERHC
下面的例子對(duì)BANK1和BANK2的30H及50H寄存器寫入數(shù)據(jù)。 例1.(設(shè)目前體選為BANK0) BSF 4,5 ;置位bit5=1,選擇BANK1 MOVLW DATA MOVWF 10H
1.書本學(xué)習(xí)和動(dòng)手編程對(duì)已有一定電子技術(shù)實(shí)踐知識(shí)的讀者而言,初學(xué)PIC單片機(jī)編程技術(shù)時(shí),初其階段最好是書本學(xué)習(xí)為輔、動(dòng)手編程為主,其分配比例為20%與80%的關(guān)系。這樣可達(dá)到速成目的。為此必須首
/*CCP1輸出比較*/#include "pic.h"void initPORTB(void); void initCCP1(void); void interrupt CCP1INT(void);void main() { initPORTB(); initCCP1(); while(1) { } }void initCCP1() { TRISC=0x00; T
一、引言 當(dāng)前,能源已成為制約很多國(guó)家發(fā)展的瓶頸,特別是廣大發(fā)展中國(guó)家,能源緊缺現(xiàn)象逐步凸現(xiàn),世界各國(guó)對(duì)石油資源的爭(zhēng)奪不斷加劇,甚至引發(fā)局部戰(zhàn)爭(zhēng);作為最大的發(fā)展中國(guó)家,我國(guó)必須在實(shí)現(xiàn)能源來(lái)
//利用T1中斷實(shí)現(xiàn)每秒加1功能 // //PORTC為段選控制端a-g,D0-D4分別控制共陽(yáng)極數(shù)碼管的位選, #include #include #define uint unsigned int #define uchar unsigned char const char table[10]= //恒定不變