#include
#pragma config JTAGEN =OFF
char Led[]={0x42, 0xf3, 0x86, 0xa2, 0x33, 0x2a, 0x0a, 0xf2, 0x02, 0x22, 0x40, 0xf1, 0x84, 0xa0, 0x31, 0x28, 0x08, 0xf0, 0x00, 0x20, 0x1e, 0x0e, 0x0f, 0xbf, 0x23, 0x9b, 0x8b};
//led字庫
void spiout(char image[],int len)
{
int i;
PORTClearBits(IOPORT_B, BIT_9);
for (i = 0; i < len; i++)
{
SpiChnPutC(2, image[i]);
}
for(i=0;i<2;i++);//延時(shí)使數(shù)據(jù)傳輸完后鎖存,通常數(shù)碼管亂碼都是這導(dǎo)致的。
PORTSetBits(IOPORT_B, BIT_9);//數(shù)據(jù)鎖存
}
int main()
{
SpiOpenFlags oFlags = SPI_OPEN_MSTEN | SPI_OPEN_CKP_HIGH | SPI_OPEN_MODE8 | SPI_OPEN_ON;//作為主機(jī), ,8位數(shù)據(jù)模式,SPI使能
PORTSetPinsDigitalOut(IOPORT_B, BIT_9);//外部移位寄存器數(shù)據(jù)鎖存,1鎖存,0開放
SpiChnOpen(2, oFlags, 6);//打開通道2即SDO2,配置SPI,fpbDiv(2~1024).波特率BR=Fpb/fpbDiv
PPSOutput(2, RPB8, SDO2);//輸出針腳組2中,查表將針腳RPB8,作為數(shù)據(jù)輸出2口SDO2.實(shí)際連線也是如此
spiout(Led,4);
}
//PPSOutput(2,RPB5,SDO1);//輸出針腳組2中,查表將針腳RPB5,作為數(shù)據(jù)輸出1口SDO1.
//也可查數(shù)據(jù)手冊(cè)用另一種,以后再說
//查找頭文件PPSOUT.h在C:Program Files (x86)Microchipxc32v1.21pic32-libsincludeperipheral
{
Output Pin Group 2
#define OUT_PIN_PPS2_RPA1 RPA1Rbits.RPA1R
#define OUT_PIN_PPS2_RPB5 RPB5Rbits.RPB5R
#define OUT_PIN_PPS2_RPB1 RPB1Rbits.RPB1R
#define OUT_PIN_PPS2_RPB11 RPB11Rbits.RPB11R
#define OUT_PIN_PPS2_RPB8 RPB8Rbits.RPB8R
#define OUT_PIN_PPS2_RPA8 RPA8Rbits.RPA8R
#define OUT_PIN_PPS2_RPC8 RPC8Rbits.RPC8R
#define OUT_PIN_PPS2_RPA9 RPA9Rbits.RPA9R
//#define OUT_FN_PPS2_SDO1 3 // RPn tied to SDO1
//#define OUT_FN_PPS2_SDO2 4 // RPn tied to SDO2
//#define OUT_FN_PPS2_OC2 5 // RPn tied to OC2
}
秒表
#include
#pragma config JTAGEN=OFF
#pragma config FPLLIDIV = DIV_2 //振蕩器配置
#pragma config FPLLMUL = MUL_24
#pragma config FPLLODIV = DIV_2
#pragma config FNOSC = FRCPLL
#pragma config FPBDIV = DIV_1 //8MHZ/2*24/2/1=48MHZ
#pragma config FWDTEN = OFF
#pragma POSCMOD = OFF
#define PERIOD 48000 //t=ps*period/48000000=0.001s
int n=0,sta=0,ledflag=1,butflag=0,i=0,b=0,bit1=0,bit2=0;;
char t[4],Led[]={0x42, 0xf3, 0x86, 0xa2, 0x33, 0x2a, 0x0a, 0xf2, 0x02, 0x22, 0x40, 0xf1, 0x84, 0xa0, 0x31, 0x28, 0x08, 0xf0, 0x00, 0x20, 0x1e, 0x0e, 0x0f, 0xbf, 0x23, 0x9b, 0x8b},image[]={0x42,0x42,0x42,0x42};
//Led 字庫
void timer1init()//時(shí)鐘源1初始化,配置中斷等
{
OpenTimer1(T1_ON|T1_SOURCE_INT|T1_PS_1_1,PERIOD);
ConfigIntTimer1(T1_INT_ON|T1_INT_PRIOR_2|T1_INT_SUB_PRIOR_0);
INTEnableSystemMultiVectoredInt();
}
void spiinit()//SPI初始化
{
SpiOpenFlags oFlags = SPI_OPEN_MSTEN | SPI_OPEN_CKP_HIGH | SPI_OPEN_MODE8 | SPI_OPEN_ON;//作為主機(jī),,8位數(shù)據(jù)模式,SPI使能
SpiChnOpen(2, oFlags, 6);//打開通道2即SDO2,配置SPI,fpbDiv(2~1024).波特率BR=Fpb/fpbDiv
PPSOutput(2, RPB8, SDO2);//輸出針腳組2中,查表將針腳RPB8,作為數(shù)據(jù)輸出2口SDO2.實(shí)際連線也是如此
PORTSetPinsDigitalOut(IOPORT_B,BIT_9);//外部移位寄存器SLCK數(shù)據(jù)鎖存,1鎖存,0開放
PORTSetBits(IOPORT_B, BIT_9);//先置一鎖存數(shù)據(jù)
}
void __ISR(_TIMER_1_VECTOR,ipl2) timer(void)//中斷函數(shù)0.001s一次中斷
{
INTClearFlag(INT_T1);
n++;
if(n>100)//0.1s
{
n=0;
ledflag=1;
// PORTBINV=(1<<7); RB7口led燈與按鍵AN1的RA0并聯(lián)沖突,不能同時(shí)使用
}
}
void buttoninit()//按鍵初始化
{
// ANSELAbits.ANSA0 = 0; //Button1
// ANSELAbits.ANSA1 = 0; //Button2
PORTSetPinsDigitalIn(IOPORT_A,BIT_0|BIT_1);//按鍵電位檢測(cè)讀數(shù)據(jù)
PORTSetPinsDigitalIn(IOPORT_B,BIT_3|BIT_14);//需將對(duì)應(yīng)的按鍵針腳位設(shè)為數(shù)字輸入
}
void spiout(char im[])//SPI數(shù)據(jù)輸出函數(shù)
{
PORTClearBits(IOPORT_B, BIT_9);
for(i=0;i<4;i++)
{
SpiChnPutC(2,im[i]);//2號(hào)通道依次傳輸數(shù)據(jù)
}
for(i=0;i<2;i++);//延時(shí)使數(shù)據(jù)傳輸完后鎖存,通常數(shù)碼管亂碼都是這導(dǎo)致的。
PORTSetBits(IOPORT_B, BIT_9);//數(shù)據(jù)鎖存
}
void led(char imag[3])//秒表換算函數(shù)
{
t[0]++;
if(t[0]>9)
{
t[0]=0;
t[1]++;
if(t[1]>19)
{
t[1]=10;
t[2]++;
if(t[2]>9)
{
t[2]=0;
t[3]++;
if(t[3]>9)
t[3]=0;
}
}
}
image[0]=Led[t[3]];
image[1]=Led[t[2]];
image[2]=Led[t[1]];
image[3]=Led[t[0]];
spiout(image); //四個(gè)數(shù)據(jù)相互變換
}
void main()//主函數(shù)
{
timer1init();
spiinit();
buttoninit();
PORTSetPinsDigitalOut(IOPORT_B,BIT_13);
PORTSetBits(IOPORT_B,BIT_13);
while(1)//死循環(huán)檢測(cè)按鍵狀態(tài)和不斷投影數(shù)碼管
{
if(PORTAbits.RA0==0)
{
bit1++;
if(bit1==5)//防止按鍵顫動(dòng),一種狀態(tài)只運(yùn)行一次(非常巧妙)
{
sta=0;
PORTBINV=(1<<13);
}
}
else bit1=0;
if(PORTAbits.RA1==0)
{
bit2++;
if(bit2==5)//防止按鍵顫動(dòng),一種狀態(tài)只運(yùn)行一次(非常巧妙)
{
if(sta==1)
sta=2;
else
sta=1;
}
}
else bit2=0;
switch(sta)//不同狀態(tài)運(yùn)行不同函數(shù)
{
case 0:
for(i=0;i<4;i++)
t[i]=0;
t[1]=10;
image[0]=Led[t[3]];
image[1]=Led[t[2]];
image[2]=Led[t[1]];
image[3]=Led[t[0]];
spiout(image);break; //初始化重置數(shù)碼管
case 1:
if(ledflag==1)
{
ledflag=0;
led(image);
}
break; //秒表開始
case 2:
break; //暫停
}
}
}
// }
上一篇:pic 18 __config 配置位 學(xué)習(xí)
下一篇:PIC單片機(jī)上串口測(cè)試模塊
推薦閱讀
史海拾趣
作為一家有社會(huì)責(zé)任感的企業(yè),Acculin Inc積極參與公益事業(yè),為社會(huì)做出貢獻(xiàn)。公司定期舉辦慈善活動(dòng),支持教育、環(huán)保等公益事業(yè)。此外,Acculin還注重環(huán)保生產(chǎn),通過采用環(huán)保材料和節(jié)能技術(shù),降低生產(chǎn)過程中的環(huán)境影響。這些舉措不僅提升了公司的社會(huì)形象,也增強(qiáng)了消費(fèi)者對(duì)品牌的信任度。
這些故事雖然基于虛構(gòu),但反映了電子行業(yè)中企業(yè)可能面臨的一些常見挑戰(zhàn)和機(jī)遇。通過技術(shù)創(chuàng)新、國際合作、戰(zhàn)略調(diào)整、人才培養(yǎng)和社會(huì)責(zé)任等方面的努力,一個(gè)電子行業(yè)的企業(yè)可以逐漸發(fā)展壯大,并在市場(chǎng)中取得一席之地。
隨著公司的發(fā)展,璟德(ACX)在LTCC技術(shù)的研發(fā)上取得了重大突破。這些突破不僅提升了產(chǎn)品的性能和質(zhì)量,也為公司贏得了多項(xiàng)國內(nèi)外專利。這些專利的獲取進(jìn)一步鞏固了璟德(ACX)在無線通信領(lǐng)域的領(lǐng)先地位,也為其后續(xù)的市場(chǎng)拓展提供了有力支持。
AE&ST公司自創(chuàng)立之初,就深知技術(shù)創(chuàng)新是電子行業(yè)的核心競(jìng)爭(zhēng)力。公司投入大量資源進(jìn)行研發(fā),不斷探索新的半導(dǎo)體材料和生產(chǎn)工藝。在一次偶然的實(shí)驗(yàn)中,AE&ST的研發(fā)團(tuán)隊(duì)發(fā)現(xiàn)了一種新型半導(dǎo)體材料,這種材料在能效和穩(wěn)定性方面表現(xiàn)出色。公司迅速將這一發(fā)現(xiàn)轉(zhuǎn)化為產(chǎn)品,并推向市場(chǎng)。新產(chǎn)品一經(jīng)推出,便因其卓越的性能獲得了市場(chǎng)的廣泛認(rèn)可,AE&ST公司因此獲得了巨大的商業(yè)成功。
Hammond公司的故事始于1916年,當(dāng)時(shí)它僅僅是一個(gè)位于加拿大安大略省圭爾夫的后院車間。1917年,OS Hammond and Son正式成立,并在接下來的幾年里開始制造電子管收音機(jī)、電池充電器等電子產(chǎn)品。這一時(shí)期,Hammond逐步積累了技術(shù)和市場(chǎng)經(jīng)驗(yàn),為后續(xù)的快速發(fā)展奠定了基礎(chǔ)。隨著廣播和通訊行業(yè)的興起,Hammond敏銳地捕捉到了市場(chǎng)機(jī)遇,開始專注于為這些行業(yè)提供關(guān)鍵組件。
隨著市場(chǎng)的不斷擴(kuò)大和需求的增加,藍(lán)箭電子逐漸形成了年產(chǎn)150億只的生產(chǎn)規(guī)模,成為華南地區(qū)主要的半導(dǎo)體器件生產(chǎn)基地之一。公司憑借優(yōu)質(zhì)的產(chǎn)品和服務(wù),贏得了廣大客戶的認(rèn)可,市場(chǎng)份額逐年提升。
隨著市場(chǎng)競(jìng)爭(zhēng)的加劇,Chyao Shiunn意識(shí)到品質(zhì)管理的重要性。公司開始加強(qiáng)產(chǎn)品質(zhì)量的控制,從原材料的采購到生產(chǎn)流程的每一個(gè)環(huán)節(jié)都嚴(yán)格把關(guān)。同時(shí),公司還加大了品牌宣傳力度,通過參加行業(yè)展會(huì)、舉辦技術(shù)研討會(huì)等方式提升品牌知名度。這些舉措不僅提高了公司的市場(chǎng)份額,也增強(qiáng)了客戶對(duì)公司的信任。
1 nRF24L01概述 nRF24.L01是一款新型單片射頻收發(fā)器件,工作于2.4 GHz~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型ShockBurst技術(shù),其中輸出功率和通信頻道可通過程序進(jìn)行配置。nRF24L01功耗低,在 ...… 查看全部問答∨ |
|
我06年做的at91rm9200的arm9開發(fā)板全套資料 http://www.08680.com/dw/cd_rom.rar 希望對(duì)大家有點(diǎn)幫助。 成品沒有了,只有29片空pcb?!? 查看全部問答∨ |
|
辛昕 是個(gè)好好小伙兒?。?! 在震蕩電路詳解一帖中他推薦了一本好書 這個(gè)資源貌似EEW里頭還未收藏,我在其他地方把它找來了,供感興趣的朋友們分享?。?!… 查看全部問答∨ |
|
用8個(gè)LED發(fā)光管(4紅4綠)的來回滾動(dòng)顯示模擬打乒乓球時(shí),乒乓球在兩邊球臺(tái)上的來回運(yùn)動(dòng)。比賽雙方用按按鈕(雙方各用一個(gè)按鈕)的方法來模擬發(fā)球與接球,即發(fā)球方按動(dòng)其控制的按鈕,球從發(fā)球方一側(cè)向?qū)Ψ竭\(yùn)動(dòng)(LED發(fā)光管從發(fā)球方到對(duì)方逐個(gè)點(diǎn)亮, ...… 查看全部問答∨ |
|
usb設(shè)備驅(qū)動(dòng),可能性評(píng)估? 我手上有一個(gè)讀卡器設(shè)備,支持usb和串口,我只有它的windows驅(qū)動(dòng)程序。 我用串口調(diào)試工具配合它的協(xié)議可以完全操作這個(gè)讀卡器, 也就是說如果我用串口通信的話,在wince下,不需要驅(qū)動(dòng)也能搞定。 問題是如果我要用wince下的usb host來操作讀卡器 ...… 查看全部問答∨ |
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- STM32單片機(jī)VDD與VDDA的供電方案
- 基于STM32單片機(jī)的物聯(lián)網(wǎng)遠(yuǎn)程數(shù)據(jù)監(jiān)控系統(tǒng)
- STM32單片機(jī)外部中斷的設(shè)置方法
- STM32單片機(jī)的定時(shí)器和ADC的應(yīng)用方法介紹
- STM32單片機(jī)以NEC協(xié)議實(shí)現(xiàn)紅外遙控設(shè)計(jì)
- STM32單片機(jī)GPIO口的八種工作模式介紹
- DSP與STM32單片機(jī)的區(qū)別是什么
- STM32單片機(jī)實(shí)現(xiàn)無源蜂鳴器產(chǎn)生音樂聲的設(shè)計(jì)
- STM32單片機(jī)的低功耗模式與待機(jī)模式解析
- 秉持開放互融理念,OPPO攜手上汽集團(tuán)探索渠道合作新模式
- 電動(dòng)車?yán)m(xù)航突破四位數(shù):解密奔馳顛覆性“固態(tài)密碼
- 大眾再加碼!1.31億美元捧場(chǎng)固態(tài)電池
- 小馬智行L4級(jí)無人駕駛技術(shù) | 申報(bào)2025第七屆金輯獎(jiǎng)最佳技術(shù)實(shí)踐應(yīng)用獎(jiǎng)
- TELUS Digital AI智能輔助駕駛數(shù)據(jù)解決方案 | 申報(bào)2025第七屆金輯獎(jiǎng)中國汽車新供應(yīng)鏈百強(qiáng)
- 智加領(lǐng)航自動(dòng)駕駛系統(tǒng)Navigate | 申報(bào)2025第七屆金輯獎(jiǎng)最佳技術(shù)實(shí)踐應(yīng)用獎(jiǎng)
- STM32單片機(jī)VDD與VDDA的供電方案
- 英飛凌2025財(cái)年第三季營(yíng)收符合預(yù)期,利潤(rùn)超出預(yù)期
- 基于STM32單片機(jī)的物聯(lián)網(wǎng)遠(yuǎn)程數(shù)據(jù)監(jiān)控系統(tǒng)
- 智加領(lǐng)航自動(dòng)駕駛系統(tǒng)Navigate | 申報(bào)2025第七屆金輯獎(jiǎng)最佳技術(shù)實(shí)踐應(yīng)用獎(jiǎng)
- 將低功耗設(shè)計(jì)進(jìn)行到底——評(píng)論、轉(zhuǎn)發(fā)贏大禮!
- 芯幣競(jìng)拍:感恩教師節(jié)專場(chǎng)
- Keysight示波器主題月有獎(jiǎng)系列活動(dòng)之 注冊(cè)大獎(jiǎng)天天抽 搶樓踩中亦有獎(jiǎng)
- Microchip有獎(jiǎng)直播:VectorBlox™ SDK 報(bào)名中
- 有獎(jiǎng)直播|ADI 慣性MEMS應(yīng)用那些事
- 借助 Microchip 生態(tài)系統(tǒng)中的 PIC® 和 AVR® 單片機(jī)開啟嵌入式到云端之旅 系列在線研討會(huì)
- 帶你零起點(diǎn)入門STM32(專為嵌入式應(yīng)用而開發(fā)的內(nèi)核)
- 福祿克首款熱成像萬用表Fluke-279FC 即將上市!填寫問卷贏好禮嘍!
- EEWorld Datasheet 伴你同行!快來領(lǐng)取200芯積分福利啦~
- 泰克福袋:示伴功倍,萬能福袋派送中
- FreeRTOS移植-基于STM32F407
- 讓MDK支持printf(基于stm32)
- 越疆全感知協(xié)作機(jī)器人加速智造場(chǎng)景化落地
- 各地“十四五?規(guī)劃中釋放出哪些智能制造相關(guān)信號(hào)?
- 國自掛軌巡檢機(jī)器人助力新能源充換電站智能運(yùn)維
- 蘋果開放了App Store小型企業(yè)優(yōu)惠計(jì)劃注冊(cè)
- 蘋果內(nèi)部備忘錄顯示 下周或推出AirPods Studio
- Moto G真機(jī)圖解密:搭載驍龍865處理器,前置雙打孔屏
- DxoMark公布三星Galaxy Note20 Ultra 5G前置鏡頭得分:100分
- 爆料稱高通將在2021年一季度推出全新7系列驍龍芯片組
- 一篇文章幫你規(guī)劃C語言從入門到進(jìn)階學(xué)習(xí)之路
- 迅為3399開發(fā)板使用ADB命令傳遞文件到android設(shè)備
- 求助:wince socket 藍(lán)牙編程中怎樣用OBEX協(xié)議封裝數(shù)據(jù)
- EEWORLD大學(xué)堂----MSP430入門課程-Launchpad CCS基本開發(fā)流程
- 程序求大神,,,
- 論南北方冬天的差異
- SensorTile.Box開箱2——TF卡里有什么
- 美國國家半導(dǎo)體為高壓功率轉(zhuǎn)換系統(tǒng)提供電源管理解決方案
- PMSM3.1
- 請(qǐng)教:dsp2407a不能進(jìn)入中斷!