版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——哈工大威海大四通信課設(shè)
課程設(shè)計(jì)
報(bào)告
日期:2023.01.09姓名:呂程學(xué)號(hào):100240217
同組成員:于曉菲趙海娜韓天羅紫丹
高尚
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
哈爾濱工業(yè)大學(xué)(威海)
此次課程設(shè)計(jì)主要基于DSP5509A開發(fā)板進(jìn)行板上一系列功能的試驗(yàn)驗(yàn)證與實(shí)現(xiàn),具體內(nèi)容如下:
?LED閃爍試驗(yàn)
?中斷的軟件編程——外部中斷試驗(yàn)?通用計(jì)時(shí)器的使用——timer試驗(yàn)?通用計(jì)時(shí)器的使用——看門狗wdt試驗(yàn)?RTC實(shí)時(shí)時(shí)鐘試驗(yàn)
?外部存儲(chǔ)器接口——SDRAM試驗(yàn)?外部存儲(chǔ)器接口——鍵盤掃描試驗(yàn)?Flash的使用——擴(kuò)展flash讀寫試驗(yàn)?數(shù)字信號(hào)處理——FIR/*鎖相環(huán)的設(shè)置*/
PLL_ConfigmyConfig={
0,//IAI:thePLLlocksusingthesameprocessthatwasunderway//beforetheidlemodewasentered
1,//IOB:IfthePLLindicatesabreakinthephaselock,//itswitchestoitsbypassmodeandrestartsthePLLphase-locking//sequence
24,//PLLmultiplyvalue;multiply24times
1//Divideby2PLLdividevalue;itcanbeeitherPLLdividevalue//(whenPLLisenabled),orBypass-modedividevalue//(PLLinbypassmode,ifPLLmultiplyvalueissetto1)};
4
(四)
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
/*輸出頻率=(PLL_MULT/(PLL_DIV+1))*輸入時(shí)鐘頻率=12M*24/(1+1)=144M*/main(){
inti=0;/*初始化CSL庫(kù)*/CSL_init();
/*設(shè)置系統(tǒng)的運(yùn)行速度為144MHz*/
PLL_config(/*時(shí)鐘配置/
/*確定方向?yàn)檩敵?/
GPIO_RSET(IODIR,0xFF);/每個(gè)端口通過軟件配置為輸入或輸出,1為輸出*/for(i=0;i哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
delay();}}
voiddelay(){
Uint32j=0,k=0;for(j=0;j#include#include#include#include#include
CSLBoolb;
Uint16eventId0;intold_intm;
interruptvoidint1(void);
//Functionprototypes
/*Referencestartofinterruptvectortable*//*Thissymbolisdefinedinfile,vectors_IP.s55*/
8
源碼及解釋
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
externvoidVECSTART(void);/*鎖相環(huán)的設(shè)置*/
PLL_ConfigmyConfig={
0,//IAI:thePLLlocksusingthesameprocessthatwasunderway//beforetheidlemodewasentered
1,//IOB:IfthePLLindicatesabreakinthephaselock,//itswitchestoitsbypassmodeandrestartsthePLLphase-locking//sequence
12,//PLLmultiplyvalue;multiply12times
1//Divideby2PLLdividevalue;itcanbeeitherPLLdividevalue//(whenPLLisenabled),orBypass-modedividevalue//(PLLinbypassmode,ifPLLmultiplyvalueissetto1)};
/***************5509A終端設(shè)置,使能INT1中斷***********************//*參考資料TMS320C55xChipSupportLibraryAPIReferenceGuide(Rev.J)TMS320VC5509ADataSheet
HX-5509A開發(fā)板使用手冊(cè)*/voidINTconfig(){
/*Temporarilydisableallmaskableinterrupts*/IRQ_setVecs((Uint32)(
/*Temporarilydisableallmaskableinterrupts*/old_intm=IRQ_globalDisable();
/*GetEventIdassociatedwithExternalINT1(8019),forusewith*/eventId0=IRQ_EVT_INT0;
/*ClearanypendingINT1interrupts*/IRQ_clear(eventId0);
/*Placeinterruptserviceroutineaddressat*//*associatedvectorlocation*/IRQ_plug(eventId0,
/*EnableINT1(8019)interrupt*/IRQ_enable(eventId0);
/*Enableallmaskableinterrupts*/IRQ_globalEnable();}main(){
/*初始化CSL庫(kù)*/CSL_init();
9
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
/*EMIF為全EMIF接口*/
CHIP_RSET(XBSR,0x0a01);
/*設(shè)置系統(tǒng)的運(yùn)行速度144MHz*/PLL_config(
//設(shè)置并使能5509A芯片的INT0中斷(EXINT中斷)INTconfig();
while(1);}
//ExternalINT0(EXINT)中斷處理函數(shù)interruptvoidint1(){
inti,j;
printf(\for(i=0;i
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
{
xfchange=1;}
if(timer0_cnt==2000){
timer0_cnt=0;xfchange=0;}}
(二)試驗(yàn)現(xiàn)象
板上LED燈閃亮,間隔時(shí)間約1s。
四、通用計(jì)時(shí)器的使用——看門狗wdt試驗(yàn)
(一)
看門狗簡(jiǎn)介
1.概念
硬件看門狗是利用了一個(gè)定時(shí)器,來監(jiān)控主程序的運(yùn)行,也就是說在主程序的運(yùn)行過程中,我們要在定時(shí)時(shí)間到之前對(duì)定時(shí)器進(jìn)行復(fù)位假使出現(xiàn)死循環(huán),或者說PC指針不能回來。那么定時(shí)時(shí)間到后就會(huì)使單片機(jī)復(fù)位。常用的WDT芯片MAX813,5045,IMP813等。
軟件看門狗技術(shù)的原理和這差不多,只不過是用軟件的方法實(shí)現(xiàn),用DSP的片上外設(shè)資源定時(shí)器timer來對(duì)主程序的運(yùn)行進(jìn)行監(jiān)控。
2.作用
監(jiān)控主程序的運(yùn)行,也就是說在主程序的運(yùn)行過程中,我們要在定時(shí)時(shí)間到之前對(duì)定時(shí)器進(jìn)行復(fù)位假使出現(xiàn)死循環(huán),或者說PC指針不能回來。那么定時(shí)時(shí)間到后就會(huì)使DSP復(fù)位。即:防止由于軟件死循環(huán)而造成的系統(tǒng)死鎖。
3.HX-5509看門狗的結(jié)構(gòu)
WatchdogTimer包括一個(gè)16bit的預(yù)定標(biāo)計(jì)數(shù)器和一個(gè)16bit的主計(jì)數(shù)器,從而提供一個(gè)32bit動(dòng)態(tài)范圍的計(jì)數(shù)器
16
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
當(dāng)預(yù)定標(biāo)計(jì)數(shù)器達(dá)到0時(shí),就會(huì)被重新加載,并重新開始計(jì)數(shù)。
裝入的值由WDTCR中TDDR位+WDTCR2中的預(yù)定標(biāo)模式PREMD位來決定。當(dāng)PREMD位為0時(shí),4位TDDR域的值直接加載到預(yù)定標(biāo)計(jì)數(shù)器上,提供20位動(dòng)態(tài)范圍;當(dāng)PREMD位為1時(shí),預(yù)定標(biāo)計(jì)數(shù)器通過非直接的方式加載16位的TDDR,這種模式提供32位動(dòng)態(tài)范圍的看門狗計(jì)時(shí)器。
當(dāng)主計(jì)時(shí)器減為0時(shí),產(chǎn)生超時(shí)事件,引發(fā)以下的可編程事件:
00b,一個(gè)看門狗定時(shí)器中斷10b,DSP復(fù)位
01b,一個(gè)非屏蔽中斷(NMI)11b,不發(fā)生任何事件
所產(chǎn)生的超時(shí)事件,通過編程控制寄放器WDTCR中的WDOUT域來控制(二)
相關(guān)寄放器
計(jì)數(shù)器寄放器
WDTIM
WDPRD周期寄放器WDTCR控制寄放器WDTCR2控制寄放器21.WDTCR:看門狗控制寄放器
17
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
WDOUT:用來控制超時(shí)引發(fā)的可編程事件
PSC:當(dāng)PREMD=0時(shí),用來存放預(yù)定標(biāo)計(jì)數(shù)器的值。
TDDR:當(dāng)PREMD=0時(shí),若預(yù)定標(biāo)計(jì)數(shù)器的值減為0,則將TDDR加載到預(yù)定標(biāo)計(jì)數(shù)器中。當(dāng)PREMD=1時(shí),若預(yù)定標(biāo)計(jì)數(shù)器的值減為0,則通過TDDR中的值選擇加載到預(yù)定標(biāo)計(jì)數(shù)器中的數(shù)。
1.WDTCR2:看門狗控制寄放器
PREMD:預(yù)定標(biāo)寄放器模式選擇位,0為直接模式,1為間接模式。2.WDPRD:看門狗周期寄放器
WDPRD用來加載看門狗定時(shí)器主計(jì)數(shù)寄放器(WDTIM)。
源碼及解釋
#include
#include#include
(三)
inti,pscVal;
WDTIM_ConfiggetConfig;/*配置寄放器*/
WDTIM_ConfigmyConfig={
18
哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)
0x1000,/*WDPRD*/0x0000,/*WDTCR*/0x1000/*WDTCR2*/
};/*這里看門狗配置時(shí)機(jī)還未完成,只是一個(gè)初始化,下面單獨(dú)的域配置才算完*/main(){
CSL_init();
WDTIM_config(//寄放器設(shè)置
/*對(duì)重要寄放器的域單獨(dú)設(shè)置*/
WDTIM_FSET(WDTCR,WDOUT,1);/*產(chǎn)生超時(shí)事件時(shí)引發(fā)非屏蔽中斷*/WDTIM_FSET(WDTCR,TDDR,0xF);/*設(shè)置加載PSC域的值*/WDTIM_FSET(WDTCR2,PREMD,0);/*設(shè)置為直接模式*//*就是這里,這才算配置完了在WDTIM_service之前配置完~*/WDTIM_service();/*使能看門狗計(jì)時(shí)器*/
for(;;){
WDTIM_getConfig(pscVal=WDTIM_FGET(WDTCR,PSC);printf(\pscVal,getConfig.wdtcr);}}
(四)試驗(yàn)結(jié)果顯示
pscVal:0,wdtcr:110fpscVal:9,wdtcr:134fpscVal:6,wdtcr:128fpscVal:3,wdtcr:11cfpscVal:0,wdtcr:110fpscVal:9,wdtcr:134f
五、RTC實(shí)時(shí)時(shí)鐘試驗(yàn)
(一)
RTC簡(jiǎn)介
RTC為運(yùn)行在DSP上的應(yīng)用程序提供了一個(gè)時(shí)間基準(zhǔn)。當(dāng)前的日期和時(shí)間由一組時(shí)間寄放器提供,每秒更新一次。
RTC時(shí)鐘來源于一個(gè)外部頻率為32768Hz的晶振,連接在RTCINX1和RTCINX2
19
溫馨提示
- 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 石河子大學(xué)《影像診斷學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《數(shù)據(jù)庫(kù)管理》2021-2022學(xué)年期末試卷
- 石河子大學(xué)《景觀生態(tài)學(xué)原理》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《數(shù)據(jù)庫(kù)原理》2023-2024學(xué)年期末試卷
- 沈陽理工大學(xué)《化工原理A》2021-2022學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《電路實(shí)驗(yàn)》2021-2022學(xué)年期末試卷
- 沈陽理工大學(xué)《產(chǎn)品語義學(xué)應(yīng)用設(shè)計(jì)》2021-2022學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《nux系統(tǒng)程序設(shè)計(jì)》2023-2024學(xué)年期末試卷
- 合伙承包高鈣粉合同
- 同步新課堂高中歷史專題二近代中國(guó)維護(hù)國(guó)家主權(quán)的斗爭(zhēng)課時(shí)訓(xùn)練7偉大的抗日戰(zhàn)爭(zhēng)含解析人民版必修1
- 外科手術(shù)中肝臟切除技術(shù)講解
- 駕校年度安全生產(chǎn)目標(biāo)方案
- 2024年插花花藝師理論知識(shí)考試題庫(kù)(含答案)
- 干部履歷表(中共中央組織部2015年制)
- 自身免疫性腦炎護(hù)理
- 2024年基因編輯技術(shù)的倫理問題
- “訂餐協(xié)議書:團(tuán)體訂餐服務(wù)合作協(xié)議”
- 材料力學(xué)課程導(dǎo)學(xué)與考研指導(dǎo)
- 小學(xué)各年級(jí)小學(xué)一年級(jí)提高思維能力的方法主題班會(huì)
- 宣傳欄安裝施工方案
- 張曉風(fēng)散文自選集
評(píng)論
0/150
提交評(píng)論