版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
CC2530可編程輸入輸出口(I/O)應(yīng)用本實(shí)驗(yàn)通過控制CC2530端口輸出,并利用圖1.36所示的基礎(chǔ)實(shí)驗(yàn)板上的4所示的8個(gè)LED燈觀察現(xiàn)象?;A(chǔ)實(shí)驗(yàn)板是為了幫助學(xué)習(xí)和認(rèn)識(shí)CC2530資源和特性而設(shè)計(jì)的。2、 電路原理圖CC2530單片機(jī)端口驅(qū)動(dòng)能力有限,所以用ULN2003芯片做驅(qū)動(dòng),其電路原理圖如圖1.4.3所示。ULN2003內(nèi)部含有7個(gè)不能輸出高電平的反相器。當(dāng)輸入高電平時(shí),輸出為低電平,此時(shí)它可以吸收500mA,一般用于LED驅(qū)動(dòng)。(詳細(xì)資料參考ULN2003數(shù)據(jù)手冊(cè))。為了節(jié)省端口,采用串行輸入、并行輸出的移位鎖存器74HC595。這樣便可利用3個(gè)IO口控制8個(gè)LED燈以及數(shù)碼管的狀態(tài)。74HC595的電路原理圖如圖1.4所示。74HC595是8位輸出鎖存移位寄存器,數(shù)據(jù)輸入由三個(gè)引腳組合控制,分別是數(shù)據(jù)輸入引腳SER、數(shù)據(jù)輸入控制引腳SRCK和數(shù)據(jù)輸出鎖存引腳RCK.SER引腳上的數(shù)據(jù)在SRCK引腳的上升沿信號(hào)保存到QA引腳,同時(shí)QA位上的數(shù)據(jù)移位到QB位,QB位的數(shù)據(jù)移位到QC位、、、、、、。依次類推,所有數(shù)據(jù)向后串行移動(dòng)一位,QH位上的數(shù)據(jù)移位到QH’位,所有位的數(shù)據(jù)在RCK引腳的上升沿信號(hào)被所存到輸出端。設(shè)計(jì)11.編程要求:編寫一段C語言程序;2.實(shí)現(xiàn)功能:通過P1口輸出的數(shù)據(jù)控制8個(gè)發(fā)光二極管的亮滅;3.實(shí)訓(xùn)現(xiàn)象:利用基礎(chǔ)實(shí)驗(yàn)板上的8個(gè)LED燈實(shí)現(xiàn)循環(huán)依次點(diǎn)亮D2,D4,D6,D8的效果。CC2530定時(shí)器概述標(biāo)準(zhǔn)51芯片voiddelay(){u8j,k;for(j=0;j<1000;j++)for(k=0;k<110;k++);}(1/12M)*12(標(biāo)準(zhǔn)的51,相當(dāng)于12個(gè)系統(tǒng)時(shí)鐘)=1us110*1000*9*1us=1sC語言到匯編,1條相當(dāng)于9條匯編。延時(shí)代碼:voiddelay(unsignedintcount){unsignedinti,j;for(i=0;i<count;i++)for(j=0;j<1174;j++);}
問題二:延時(shí)時(shí)間上述代碼經(jīng)過反匯編之后就是16句匯編代碼,一句代碼需要一個(gè)指令周期來完成,時(shí)鐘頻率是32M,上述delay(1)的時(shí)間是: 1*1174*16/(32*106)=587usdelay(10);//延時(shí)時(shí)間就是5870us,就是5.87msdelay(800)//延時(shí)時(shí)間就是469600us,就是0.4696s
使用delay的時(shí)間很不準(zhǔn)確,只能是大概的時(shí)間,需要精確的時(shí)間可以采用定時(shí)器功能!
一、定時(shí)器概述CC2530有5個(gè)定時(shí)器:定時(shí)器1;定時(shí)器2;定時(shí)器3;定時(shí)器4;睡眠定時(shí)器。其中睡眠定時(shí)器,和定時(shí)器2配合使用,可以使CC2530進(jìn)入低功耗模式。CC2530含有四個(gè)定時(shí)器即Timer1、Timer2、Timer3和Timer4。其中Timer1為16位的定時(shí)器,Timer2為ZigBee協(xié)議MAC層專用定時(shí)器,Timer3、Timer4為8位寄存器,它們的工作原理與Timer1相同。一、定時(shí)器1當(dāng)時(shí)鐘脈沖設(shè)置為32M,不分頻不分頻自由運(yùn)行模式每次溢出時(shí)間間隔為:系統(tǒng)時(shí)鐘源(32M或16M)CLKCONCMD.OSC全局定時(shí)器分頻CLKCONCMD.TICKSPDT1再分頻T1CTL.DIV16位計(jì)數(shù)器T1CNTH、1CNTL定時(shí)器溢出不分頻定時(shí)器溢出500次,就讓燈狀態(tài)取反:燈每隔1.024S亮一次,隔1.024S滅一次每次溢出時(shí)間間隔為:定時(shí)器12.計(jì)數(shù)器T1的中斷溢出標(biāo)志位:IRCON.T1IF和T1STAT.OVFIF1.計(jì)數(shù)器的16位初值寄存器:高8位T1CNTH、低8位T1CNTL+65535定時(shí)器100000000T1CNTH00000000T1CNTL11111111T1CNTH11111111T1CNTL經(jīng)歷了65535個(gè)時(shí)鐘脈沖后變成16個(gè)1,如下:每經(jīng)歷一個(gè)時(shí)鐘脈沖,數(shù)值加100000000T1CNTH00000000T1CNTL同時(shí)產(chǎn)生中斷溢出標(biāo)志位:IRCON.T1IF和T1STAT.OVFIF+1初始值:為0配置寄存器T1CTL定時(shí)器的計(jì)時(shí)原理可用公式:T=c*t來描述。其中“T”為計(jì)時(shí)時(shí)間,“c”為計(jì)數(shù)器的數(shù)值,“t”為單位時(shí)間(由DIV所設(shè)置的時(shí)間)。假如本實(shí)訓(xùn)配置定時(shí)器工作在無閥值計(jì)數(shù)模式,單位時(shí)間為“系統(tǒng)時(shí)鐘頻率/128”。請(qǐng)問寄存器T1CTL的值為。0x0DT1STAT--定時(shí)器1狀態(tài)寄存器重要知識(shí)點(diǎn):系統(tǒng)在不配置工作頻率時(shí)默認(rèn)為2分頻,即32M/2=16M,所以定時(shí)器每次溢出時(shí)T=1/(32M/128)*65536=0.25s,所以總時(shí)間Ta=T*COUTN=0.25*4=1S。1、初始化io端口voidinit_io()和定時(shí)器init_timer_1()2、設(shè)置計(jì)數(shù)時(shí)間if(IRCON>0)3、主函數(shù)main(),完成兩位數(shù)據(jù)的計(jì)數(shù)。intkey(){T1CTL=0X0D;T1STAT=0X21;}if(IRCON>0){IRCON=0;if(++m>=3){n++;m=0;}}1、初始化io端口voidinit_io()和定時(shí)器init_timer_1()2、初始化按鍵端口P0_3、P0_4、P0_5、P0_63、主函數(shù)main(),完成四個(gè)按鍵分別控制1、2、4、8燈的亮滅。外部中斷intkey(){P0IEN|=0X08;PICTL&=0X01;IEN1|=0X20;P0IFG=0X00;EA=1;}大課(1)CC2530中斷原理(難點(diǎn))(2)CC2530外部中斷編程(重點(diǎn))小課(1)串口通過標(biāo)志位發(fā)送接收串口初始化:時(shí)鐘、位置、方式、波特率、優(yōu)先級(jí)等;串口發(fā)送:等待、清0、發(fā)送;串口接收:等待、接收(2)CC2530外部中斷外部中斷初始化:輸入方式、清除中斷標(biāo)志位、合上開關(guān);中斷響應(yīng)程序:教學(xué)回顧#pragmavector=中斷向量地址__interruptvoid中斷函數(shù)名(void) {
中斷處理;
中斷清除; }#pragmavector=P0INT_VECTOR__interruptvoidIS(void){HC595(0X04);P0IF=0;}P1SEL=0X00;P1DIR=0XFF;P0DIR|=~0X08;使用按鍵P0_3實(shí)現(xiàn)外部中斷。1、初始化init_io()2、初始化輸出函數(shù)hc595();3、初始中斷init_inter();4、初始化P0輸入輸出口io;P0DIR=~0X085、寫中斷函數(shù)#pragmavector=中斷向量地址。6、主函數(shù)main(),實(shí)現(xiàn)按鍵進(jìn)入中斷函數(shù),點(diǎn)亮燈。實(shí)現(xiàn)基礎(chǔ)芯片中燈D8亮,當(dāng)按下基礎(chǔ)芯片中的最后一個(gè)按鍵,D8燈滅,基礎(chǔ)芯片中的LED燈D1和D2點(diǎn)亮。睡眠喚醒-中斷方式LED1閃爍3次后進(jìn)入睡眠狀態(tài),通過按下按鍵S2產(chǎn)生外部中斷進(jìn)行喚醒IO口初始化函數(shù)外部中斷初始化函數(shù)設(shè)置系統(tǒng)電源工作模式函數(shù)中斷處理函數(shù)HC595處理函數(shù)延時(shí)函數(shù)主函數(shù)PICTL&=0x01;
P0IFG=0x00;
P0IEN|=0x10;IEN1|=0x20;//此項(xiàng)設(shè)置非常重要,不然進(jìn)不了中斷函數(shù)允許P0口中斷;EA=1;zhongduanchushi(){P0DIR|=~0X08;P0IEN|=0X08;PICTL&=0X01;IEN1|=0XFF;P0IFG=0X00;EA=1;}電源管理寄存器PowerMode(ucharmode){if(mode<4){SLEEPCMD|=mode;PCON=0x01;}elsePCON=0x00;}#pragmavector=P0INT_VECTOR__interruptvoidP0_ISR(void){if(P0IFG>0){P0IFG=0;}
P0IF=0;PowerMode(4);}voidmain(void){uchari=0;uintled=HC595(0X01);iochushi(); zhongduanchushi();
while(1){for(i=0;i<6;i++){LED1=~LED1;delay(500);}PowerMode(3);}}睡眠喚醒-定時(shí)器設(shè)置定時(shí)器讓系統(tǒng)在設(shè)定的時(shí)間被喚醒,每次喚醒LED1閃爍3下提示用戶延時(shí)函數(shù)ioc初始化函數(shù)HC595處理函數(shù)設(shè)置系統(tǒng)電源工作模式函數(shù)睡眠定時(shí)器中斷函數(shù)睡眠定時(shí)器初始化zhongduanchushi(){ST2=0X00;ST1=0X0F;ST0=0X0F;EA=1;STIE=1;STIF=0;}voidSet(uintsec){ulongsleepTimer=0;
sleepTimer|=ST0;sleepTimer|=(ulong)ST1<<8;sleepTimer|=(ulong)ST2<<16;sleepTimer+=((ulong)sec*(ulong)32768);ST2=(uchar)(sleepTimer>>16);ST1=(uchar)(sleepTimer>>8);ST0=(uchar)sleepTimer;}PowerMode(ucharmode){if(mode<4){SLEEPCMD|=mode;PCON=0x01;}elsePCON=0x00;}#pragmavector=ST_VECTOR__interruptvoidST_ISR(void){STIF=0;PowerMode(4);}voidmain(void){uchari=0;
iochushi(); zhongduanchushi();HC595(0X00);while(1){for(i=0;i<6;i++){
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024校園閱讀促進(jìn)合同3篇
- 2024版咨詢服務(wù)費(fèi)合同協(xié)議書范本
- 2024煤礦用工承包合同-技術(shù)培訓(xùn)與晉升協(xié)議3篇
- 2025年人教五四新版五年級(jí)英語下冊(cè)月考試卷
- 二零二五年餐飲服務(wù)企業(yè)員工勞動(dòng)合同范本2篇
- 新蘇教版一年級(jí)數(shù)學(xué)下冊(cè)第五單元第2課時(shí)《兩位數(shù)加、減一位數(shù)(不進(jìn)位、不退位)》教案
- 2024版人力資源總監(jiān)聘用合同協(xié)議書范本
- 2024年重慶商務(wù)職業(yè)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(頻考版)含答案解析
- 2025-2030年中國冷陰極螢光燈管市場(chǎng)發(fā)展?fàn)顩r及投資前景規(guī)劃研究報(bào)告
- 2025-2030年中國全棉高支紗市場(chǎng)運(yùn)行動(dòng)態(tài)及前景趨勢(shì)預(yù)測(cè)報(bào)告
- 2025年1月普通高等學(xué)校招生全國統(tǒng)一考試適應(yīng)性測(cè)試(八省聯(lián)考)語文試題
- 人教版五年級(jí)數(shù)學(xué)下冊(cè)(全冊(cè))同步練習(xí)隨堂練習(xí)一課一練
- GB/T 29165.4-2015石油天然氣工業(yè)玻璃纖維增強(qiáng)塑料管第4部分:裝配、安裝與運(yùn)行
- 血液凈化十大安全目標(biāo)課件
- 鼻竇負(fù)壓置換療課件
- 國際森林日森林防火教育宣傳主題班會(huì)PPT模板
- 藥廠質(zhì)量管理部QA人員崗位設(shè)置表
- 劍橋國際少兒英語“第三級(jí)”單詞默寫表
- (精心整理)高中生物必修二非選擇題專題訓(xùn)練
- 小學(xué)二年級(jí)100以內(nèi)進(jìn)退位加減法混合運(yùn)算
- 市委組織部副部長任職表態(tài)發(fā)言
評(píng)論
0/150
提交評(píng)論