12F系列PIC單片機(jī)是方便的小型8引腳器件,設(shè)計(jì)用于不需要太多I/O資源且體積較小的小型嵌入式應(yīng)用。這些應(yīng)用包括各種各樣的日常產(chǎn)品,例如吹風(fēng)機(jī),電動(dòng)牙刷,電飯煲,吸塵器,咖啡機(jī)和攪拌器。盡管PIC12F系列單片機(jī)體積很小,但它們?nèi)蕴峁┯腥さ墓δ埽▽捁ぷ麟妷海瑑?nèi)部可編程振蕩器,4個(gè)10位ADC通道,板載EEPROM存儲(chǔ)器,片上基準(zhǔn)電壓源,多個(gè)通信外設(shè)(UART,SPI和I2C),PWM等。以下項(xiàng)目板旨在使用PIC12F單片機(jī)快速輕松地開發(fā)獨(dú)立應(yīng)用。它具有板載穩(wěn)壓+ 5V電源,用于訪問(wèn)I/O引腳的插頭連接器,用于編程的ICSP插頭,復(fù)位電路以及用于放置其他組件的小原型區(qū)域。
PIC12F開發(fā)板驅(qū)動(dòng)串行七段式LED顯示屏
下圖顯示了板上功能的詳細(xì)視圖。
板載功能
DMS IC插座上的AMS1117-5.0V調(diào)節(jié)器
PIC12F微控制器
輕觸開關(guān)連接到RA3 I/O引腳,僅輸入。如果啟用了MCLR,則可用于重置微控制器。否則,它可以用作用戶輸入開關(guān)。
用于使用chipKIT2/3進(jìn)行ICSP編程的接頭連接器。
用于訪問(wèn)I/O引腳和電源引腳的接頭(Vcc = + 5V)。 請(qǐng)注意,在絲網(wǎng)印刷上RA5被錯(cuò)誤地標(biāo)記為RP5。
用于連接其他電路的小原型區(qū)域。可以從Vcc插頭引腳獲得附加電路的+ 5V穩(wěn)壓電源。
重要提示: RA0-RA5名稱用于增強(qiáng)型中檔系列(PIC12F1822,PIC12F1840等)中PIC12F微控制器的I/O引腳。老式的相應(yīng)I/O引腳(PIC12F629,PIC12F675,PIC12F683等)被命名為GP0-GP5,并且具有相同的引腳配置。因此,該板可同時(shí)用于這兩種電路板。
測(cè)試程序
下面的程序是用mikroC Pro編寫的PIC編譯器,用于說(shuō)明《帶有PIC12F開發(fā)板的strong》 4位串行七段LED顯示模塊。板上使用的單片機(jī)是PIC12F683。 PIC12F683的GP0,GP1和GP2引腳分別驅(qū)動(dòng)7段顯示模塊的CS,MOSI和CLK引腳,以創(chuàng)建4位向上計(jì)數(shù)器。計(jì)數(shù)器的計(jì)數(shù)從0000到9999,然后重置為零,然后重新開始。
// Define Soft-SPI connections
#define CS_Pin GP0_bit
#define MOSI_Pin GP1_bit
#define CLK_Pin GP2_bit
void SPI_Write_Byte(unsigned short num){
unsigned short t, Mask, Flag;
CLK_Pin = 0;
Mask = 128;
for (t=0; t《8; t++){
Flag = num & Mask;
if(Flag == 0) MOSI_Pin = 0;
else MOSI_Pin = 1;
CLK_Pin = 1;
CLK_Pin = 0;
Mask = Mask 》》 1;
}
}
void MAX7219_INIT() {
// Disable Shutdown mode
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x0C); // Select Shutdown register
SPI_Write_Byte(0x01); // Set D0 bit to return to normal operation
CS_Pin = 1; // CS pin is pulled HIGH
// Set BCD decode mode for digits DIG0-DIG3
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x09); // Select Decode Mode register
SPI_Write_Byte(0x0F); // Select BCD mode for digits DIG0-DIG3
CS_Pin = 1; // CS pin is pulled HIGH
// Set display brighness
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x0A); // Select Intensity register
SPI_Write_Byte(0x0F); // Set maximum brightness
CS_Pin = 1; // CS pin is pulled HIGH
// Set display refresh
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x0B); // Select Scan-Limit register
SPI_Write_Byte(0x03); // Select digits DIG0-DIG3
CS_Pin = 1; // CS pin is pulled HIGH
// Enable Display-Test
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x0F); // Select Display-Test register
SPI_Write_Byte(0x01); // Enable Display-Test
CS_Pin = 1; // CS pin is pulled HIGH
Delay_ms(1000);
// Disable Display-Test
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(0x0F); // Select Display-Test register
SPI_Write_Byte(0x00); // Disable Display-Test
CS_Pin = 1; // CS pin is pulled HIGH
}
void Display_Counter(unsigned int j){
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(4); // Send thousands digit
SPI_Write_Byte((j/1000)%10);
CS_Pin = 1; // CS pin is pulled HIGH
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(3); // Send hundreds digit
SPI_Write_Byte((j/100)%10);
CS_Pin = 1; // CS pin is pulled HIGH
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(2); // Send tens digit
SPI_Write_Byte((j/10)%10);
CS_Pin = 1; // CS pin is pulled HIGH
CS_Pin = 0; // CS pin is pulled LOW
SPI_Write_Byte(1); // Send ones digit
SPI_Write_Byte(j%10);
CS_Pin = 1; // CS pin is pulled HIGH
}
unsigned short i;
unsigned int counter = 0;
void main() {
TRISIO=0b00001000; // GP3 is input only
CMCON0 = 0x07;
ANSEL = 0x00;
MAX7219_INIT(); // Initialize MAX7219
do{
for (counter=0; counter《10000; counter++) {
Display_Counter(counter);
Delay_ms(1000);
}
}while(1);
}
想知道如何使用此板?如果在線搜索,您會(huì)發(fā)現(xiàn)使用PIC12F單片機(jī)完成的許多很棒的項(xiàng)目。以下是其中的一些列表。
具有串行接口的初學(xué)者數(shù)據(jù)記錄器
0-20V數(shù)字電壓表 》
使用PIC12F683播放樂曲
超聲波聲音檢測(cè)器
金屬檢測(cè)器
PAL視頻疊加器
激光投影儀
超級(jí)簡(jiǎn)單紅外遙控器
帶有諾基亞3310 LCD的溫度計(jì)
傍視頻游戲
小型伺服控制器
溫度感應(yīng)杯
紅外燈調(diào)光器
還有更多!
現(xiàn)在我有12個(gè)PCB。我將為自己保留五個(gè),其余的將分發(fā)出去。讓我知道您是否需要一個(gè)。一塊PCB的價(jià)格為7.99美元,包括美國(guó)境內(nèi)的免費(fèi)送貨。您將需要以下零件來(lái)組裝電路板。
四個(gè)電容器:C1,C2,C4 = 0.1uF陶瓷電容器和C3 = 10uF-100uF電解電容器。
一個(gè)電阻器,R1 = 10K。
一個(gè)2針輕觸開關(guān),尺寸為6mm x 6mm。
一個(gè)AMS1117 TO-223調(diào)節(jié)器。
一個(gè)1N4004 1.0A二極管。
一個(gè)用于DC輸入的2引腳接線端子(間距5mm)。
一個(gè)8引腳DIP插座。
您選擇的PIC12F單片機(jī)(PIC12F683,
用于ICSP和I/O引腳的接頭連接器。
我還可以幫助您提供其中的一些組件,并提供以下組件:PIC12F675,PIC12F1822,PIC12F1840等。 PCB。如果需要,請(qǐng)通過(guò)admin(at)embedded-lab(dot)com向我發(fā)送電子郵件。然后,我將向您發(fā)送我的Paypal ID以進(jìn)行付款。
PCB尺寸為1.95英寸x 1.95英寸
PCB板底面
注: PIC12F單片機(jī)的引腳號(hào)1由其在PCB上占位面積的小方形焊盤標(biāo)識(shí)。
組裝好的板
責(zé)任編輯:wv
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44970瀏覽量
649307
發(fā)布評(píng)論請(qǐng)先 登錄
輝芒微單片機(jī)FT60E011A-RB兼容PIC12F508/509主控芯片

輝芒微單片機(jī)FT61F023-RB國(guó)產(chǎn)替代微芯PIC16F676芯片

輝芒微FT61FC23-RB單片機(jī)兼容微芯PIC16F676芯片

Microchip發(fā)布PIC16F17576系列單片機(jī)
AN4121-采用PIC16F單片機(jī)進(jìn)行系統(tǒng)電源控制

普冉PY32F002A單片機(jī)特性介紹

如何優(yōu)化單片機(jī)項(xiàng)目的功耗


PIC單片機(jī)的優(yōu)勢(shì)和不足之處
單片機(jī)燒錄程序的基本步驟是什么

EN8F1823E完全替代PIC16F883,PIC16F1883,PIC16F1936,PIC16F1937

評(píng)論