日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 電源 > 數(shù)字電源
[導讀]TMS320F240是TI公司定點DSP芯片F(xiàn)24x系列中具有代表性的一種。

摘要:TMS320F240是TI公司定點DSP芯片F(xiàn)24x系列中具有代表性的一種。在分析其多中斷源共享DSP內(nèi)核同一中斷級原理的基礎(chǔ)上,探討該系列芯片在實時多中斷任務處理的軟件編程過程中的實現(xiàn)方法,并給出具體的應用實例。

    關(guān)鍵詞:TMS320F240 實時多中斷任務 ISR GISR SISR

引言

TMS320F240內(nèi)部集成了完善的外圍設(shè)備,包括2個10位的A/D轉(zhuǎn)換器和1個串口通信接口模塊(SCI),以及其獨有的、可提供3個16位的定時器,3個單比較單元和3個全比較單元的事件管理器(event manager)單元。F240芯片采用多個中斷源共享DSP內(nèi)核同一中斷級的中斷結(jié)構(gòu),與常用的數(shù)學控制芯片相比,它提供了更多的中斷源,可以滿足對復雜控制對象的實時多中斷任務處理要求,使得用戶能更加方便、靈活地編寫中斷處理程序。

1 TMS320F240中斷系統(tǒng)的特點及中斷響應過程

1.1 TMS320F240的中斷系統(tǒng)的特點

TMS320F240芯片中斷系統(tǒng)的基本特點是:通過賦予每個中斷源以不同的優(yōu)先級,使多個中斷源可以共享DSP內(nèi)核中同一中斷級,從而提供更多的中斷源和更靈活的中斷處理方法。具體而言,在F240器件中,所有的中斷請求都是送至DSP內(nèi)核進行處理的。對可屏蔽中斷,DSP內(nèi)核只提供了6個可屏蔽的中斷級(INT1~INT6)。而F240的可屏蔽中斷源大大超過了6個(例如:僅F240器件的3個通用定時器就有12個可屏蔽中斷源,用戶可使用的中斷源則多達36個)。所以,在F240中,這6個中斷級中的每一個都會被多個中斷源共享,即F240在實現(xiàn)多中斷任務時,基本上都會出現(xiàn)多中斷源共享DSP內(nèi)核同一中斷的情況。當多于一個的硬件中斷被觸發(fā)掛起時,F(xiàn)240將根據(jù)優(yōu)先級別的高低順序執(zhí)行相應的中斷服務子程序。F240器件可以識別下列4種類型的中斷源:

①復位中斷;

②由6個外部引腳(XINT1、XINT2、XINT3、PDPINT、RS以及NMI引腳)產(chǎn)生的外部中斷;

③由片內(nèi)外設(shè)模塊,包括事件管理模塊(EV)、A/D轉(zhuǎn)換模塊(ADC)、串行通信模塊(SCI)等產(chǎn)生的外設(shè)中斷;

④由INTR指令、NMI指令或TRAP指令等引起的軟件中斷等。

    其中,除了軟件中斷、兩個外部硬件中斷RS和NMI是不可屏蔽中斷之外,其余的都是可屏蔽中斷。相對于可屏蔽中斷而言,不可屏蔽中斷涉及的寄存器較少,處理方法較為簡便。文中主要對可屏蔽中斷的多中斷任務處理進行詳細分析。

1.2 TMS320F240多級中斷寄存器的結(jié)構(gòu)

在TMS320F240的程序空間中,中斷向量占據(jù)了0000h~0003fh的地址空間。中斷向量地址被分為兩個地址單元,從而雙字的轉(zhuǎn)移指令可存放在這些單元中。為了處理多中斷源共享DSP內(nèi)核同一中斷級的問題,DSP內(nèi)部提供了多級中斷控制寄存器以滿足需要。

(1)CPU總中斷級寄存器

①中斷屏蔽寄存器(IMR)。它包含用于使能或禁止每一中斷級(INT1~INT6)的屏蔽位,地址為0004h,各位情況如圖1所示。它用來屏蔽外部和內(nèi)部硬件中斷(NMI和RS除外)。當要屏蔽某硬件中斷時,就把相應位清0;當要開放某硬件中斷時,就把相應位置1,并且它的每一位不受硬件復位的影響。在圖1中,0表示一般情況下讀的數(shù)為0,R表示讀,W表示寫,-0表示復位后這位為0。

    ②中斷標志寄存器(IFR)。它包含用以指示INT1~INT6中斷級中,已經(jīng)發(fā)送至CPU的可屏蔽中斷請求的標志位,地址為0006h,各位情況如圖2所示。當有一個可屏蔽中斷到達CPU時,IFR的相應標志位就置1,表明相應中斷(INT1~INT6)正在被掛起或正在等待響應。將1寫入到相應的標志位,可清除相應位,并清除其中斷請求。在圖2中,0表示一般情況下讀的數(shù)為0,R表示讀,W1C表示寫1時把這位清為0,-0表示復位后這位為0。

(2)外設(shè)備中斷源分級控制寄存器

由外設(shè)產(chǎn)生的每一個特定中斷源,DSP都提供兩個相應的分級控制寄存器,包括一個子標志位中斷控制寄存器和一個子屏蔽位中斷控制寄存器。

對于由事件管理器產(chǎn)生的中斷事件,每個中斷源都有相應的中斷控制寄存器,如圖3所示。

①三組事件中斷子屏蔽寄存器(EVIMRA/EVIMRB/EVIMRC),用以屏蔽對應的事件管理器中斷。EVIMRi(i=A,B,C)各位的意義基本與IMR一致。

②三組事件中斷子標志寄存器(EVIFRA/EVIFRB/EVIFRC),用以指示對應的事件管理器中斷。EVIFRi(i=A,B,C)各位的意義基本與IFR一致。

對于系統(tǒng)模塊中斷,其各個中斷事件的中斷屏蔽位和中斷標志位由各個專用的分級模塊寄存器提供。如SCI中斷,其掃收中斷RXINT的屏蔽與使能由SCI模塊內(nèi)的控制寄存器SCICLT2的中斷位RX/BKEN設(shè)置。當接收中斷產(chǎn)生后,SCI的接收狀態(tài)寄存器SCIRXST的RXRDY位置1,以表示接收中斷產(chǎn)生。

圖4 可屏蔽中斷的多中斷任務響應處理示意圖

    另外,值得注意的是,DSP內(nèi)核的ST0狀態(tài)寄存器中還有一個中斷總屏蔽位-INTM。INTM為0時,開中斷,允許沒有被屏蔽的中斷使能;INTM為1時,則禁止所有可屏蔽中斷。

1.3 TMS320F240的中斷響應過程

(1)TMS320F240中斷響應過程

當有中斷事件發(fā)生時,F(xiàn)240器件分三個階段進行中斷處理。

①接收中斷請求。由軟件中斷(來自程序代碼)或硬件中斷(來自引腳或片內(nèi)外設(shè))提出中斷請求,將主程序掛起。

②響應中斷。如果中斷是可屏蔽的,當這些可屏蔽中斷的應用條件滿足時,F(xiàn)240器件響應中斷;對于不可屏蔽的硬件中斷和軟件中斷,F(xiàn)240器件將立即作出響應。

③執(zhí)行中斷服務子程序。一時中斷被響應,F(xiàn)240器件便轉(zhuǎn)移到其相應的中斷子程序ISR(Interrupt Service Routine)。F240按用戶放置在預定地址(向量存儲單元)處的轉(zhuǎn)移指令,執(zhí)行用戶寫好的中斷服務程序。

在完成對多中斷任務的實時處理時,對不同級別的中斷源響應,直接進入相應的ISR進行處理即可。對共享DSP內(nèi)核中同一中斷優(yōu)先級的多中斷源,DSP則利用內(nèi)部的多級中斷控制寄存器,對每一個中斷源發(fā)出的中斷請求都用多個中斷標志進行標識。圖4是一個多中斷源共享INT3級中斷的多中斷任務請求響應處理過程示意圖。當接收到一個中斷信號(TPINT2/TOFINT3)時,相應的中斷源子標志寄存器(EVIFRB)中的標志位被置位,用以指示中斷已被請求。如果中斷源子屏蔽寄存器(EVIMRB)中的屏蔽位也被設(shè)置為開中斷,則該信號被送至仲裁邏輯器,仲裁邏輯可能同時從一個或多個中斷控制寄存器接收到類似的多中斷任務信號。仲裁邏輯通過比較這些競爭中斷請求的優(yōu)先級,將具有最高優(yōu)先級的中斷送至CPU。CPU的總中斷級標志寄存器IFR中與所接收的中斷優(yōu)先級相對應的中斷標志位將被置位,指示中斷被掛起。如果總中斷級屏蔽寄存器IMR中相應的屏蔽位為1,并且DSP中斷總屏蔽位INTM為0,則CPU響應該中斷并執(zhí)行相應的中斷服務子程序。

(2)中斷向量偏移地址

為了更好地處理多中斷源復用的問題,DSP采用了向量偏移地址的方法。因為采用中斷標志分辨的方法需要進行多次條件判斷才能把涉及到的具體中斷源分辨出來;而采用中斷向量偏移地址的方法,只需兩條指令即可完成分辨任務,減少了程序存儲器的存儲開銷,節(jié)約了CPU的時鐘開銷。

DSP控制器為事件管理模塊的每一個中斷都分配了一個不同的中斷向量偏移地址。當某個事件管理模塊發(fā)出了請求信號,分自動地將該中斷的向量偏地址寫入到對應的事件管理中斷向量寄存器(EVIVRA/EVIVRB/EVIVRC)中。而對于由系統(tǒng)外設(shè)模塊產(chǎn)生的中斷,DSP控制器將分配的中斷向量偏移地址寫入到系統(tǒng)中斷向量寄存器(SYSIVR)中。用戶可以通過讀取該寄存器來取得外設(shè)中斷的中斷向量偏移地址。所以在編程開發(fā)時,先要編好一個中斷向量表,對于沒有用到的中斷也應該編上,并讓它返回到一個空位置,以免發(fā)生意外情況。這里,給出事件管理器B組的INT3級中斷向量寄存器的結(jié)構(gòu)示意圖,如表1所列。關(guān)于每一個中斷級的中斷向量寄存器(IVR)單元和每一中斷事件的偏移量的詳細信息,見F240的數(shù)據(jù)手冊。

表1 TMS320F240 INT3級中斷控制向量表

中斷源名稱 DSP內(nèi)核中斷級向量地址 外設(shè)向量寄存器地址 外設(shè)向量偏移地址 是否可屏蔽 控制器模塊 中斷功能
TPINT2 INT3(0006H)

事件管理器中斷組B
EVIVRB(7433H) 002AH EV.GPT2 定時器2周期中斷
TCINT2 002CH EV.GPT2 定時器2比較中斷
TUFINT2 002DH EV.GPT2 定時器2下溢中斷
TOFINT2 002EH EV.GPT2 定時器2上溢中斷
TPINT3 002FH EV.GPT3 定時器3周期中斷
TCINT3 0030H EV.GPT3 定時器3比較中斷
TUFINT3 0031H EV.GPT3 定時器3下溢中斷
TOFINT3 0032H EV.GPT3 定時器3上溢中斷

2 TMS320F240實時多中斷任務處理的軟件實現(xiàn)

由于F240器件采用了多個中斷源共享內(nèi)核同一中斷級的中斷方式,不僅提供了更多的中斷源,而且使得用戶能方便地處理各種中斷源的中斷請求。

如圖5所示,當系統(tǒng)有多中斷任務產(chǎn)生時,一旦有中斷任務被響應,則CPU終止當前正在執(zhí)行的程序代碼,轉(zhuǎn)移至中斷服務子程序并執(zhí)行。中斷服務子程序主要分兩個步驟完成。

①轉(zhuǎn)移至通用中斷服務子程序(GISR-G功Interrupt Service Routine)。當中斷級中的某一個中斷被響應時,CPU將轉(zhuǎn)移至相應的向量地址,并根據(jù)該地址轉(zhuǎn)移至GISR。例如,若INT3中的一個中斷被響應,則程序計數(shù)器(PC)值被存入棧頂,然后PC機中裝入程序寄存器地址0006h。地址0006h和0007h中包含一條轉(zhuǎn)移指令。該指令使CPU轉(zhuǎn)移至GISR。

②轉(zhuǎn)移至特定中斷服務子程序(SISR-Special Interrupt Service Routine)。當一個外設(shè)中斷請求被響應時,外設(shè)產(chǎn)生一個相應于該特定中斷事件的向量地址偏移量。該偏移量通常被鎖存在系統(tǒng)中斷向量寄存器(SYSIVR)或事件管理中斷向量寄存器(EVIVRA/EVIVRB/EVIVRC)中。GISR必須讀取存儲在IVR中的值,確定具體的子中斷源,并據(jù)此產(chǎn)生轉(zhuǎn)移至SISR的轉(zhuǎn)移目標地址,然后進行特定的中斷處理。

在對SISR進行處理完畢之后,ISR以一條返回指令RET結(jié)束。該指令將把返回地址從堆棧彈出。然后,CPU繼續(xù)執(zhí)行被中斷的代碼序列。

如果對于某一中斷級,并沒有多中斷源共享的情況,則直接在GISR中進行中斷處理即可。此時,沒有必要進入SISR進行子中斷源的判斷。另外,進入中斷后,INTM位自動置1,以防止其它的可屏蔽中斷。若想允許中斷嵌套,則要在ISR中清除INTM位(CLRC INTM),在全局上重新使能可屏蔽中斷,使得新的ISR得以嵌套。

圖6 中斷服務程序結(jié)構(gòu)框圖

    下面結(jié)合一個具體的機器人DSP控制程序,給出DSP實時多中斷任務處理的實例。在本機器人DSP控制程序中,一共要完成四個中斷實時處理任務,并且涉及到了多個中斷源共享DSP內(nèi)核同一中斷級的中斷方式。中斷服務程序結(jié)構(gòu)框圖如圖6所示。串行中斷SCI占用了INT1第一級中斷,完成DSP與上位機的通信任務。定時器T1中斷占用了INT2第二級中斷,完成傳感器的位置信息采集和PID控制任務。而定時器T2中斷和定時器T3中斷則共用了INT3第三級中斷,完成產(chǎn)生兩路PWM波形的任務。定時器T2和定時器T3各自周期中斷的向量偏移地址分別為002BH和002FH。當有INT3級中斷申請時,在對應的中斷服務程序(ISR)中判斷中斷的向量偏移地址,以此來確定具體是產(chǎn)生了定時器T2中斷還是定時器T3中斷,再轉(zhuǎn)入定時器T2/T3相應的子中斷服務程序。在中斷服務程序中,需要根據(jù)在中斷程序中對各種寄存器的使用情況,編寫中斷保護和中斷恢復代碼,即在進入ISR時,要對這些寄存器變量進行堆棧保護;在ISR完成時,要對這些寄存器變量進行堆?;謴汀A硗?,在編寫中斷服務程序時,要注意對各寄存器的中斷標志位和中斷屏蔽位進行適當?shù)奶幚?,為進入下一次中斷做準備。以下即為給出的機器人中斷服務程序的核心代碼,主要對兩個定時器中斷源共享INT3中斷級的中斷處理進行詳盡地闡述。對于INT1和INT2這兩個中斷任務,由于無多中斷源共享的問題,在進行中斷處理時比較簡單,直接進入相應的ISR即可。相應的中斷處理程序請見網(wǎng)絡補充版。

結(jié)語

在利用DSP進行數(shù)字化控制的過程中,必然要使用到較多的中斷才能圓滿完成對復雜控制系統(tǒng)的控制任務。F240作為DSP TMS320F24x系列的典型代表,掌握F240的中斷處理方法,對TMS320F24x系列的TMS320F241/F243/C242以及TMS320LF2406/LF2407等芯片同樣具有參考意義。因此,這種處理方法還具有一定的通用性。筆者將該處理方法應用到基于TMS320F240的主從遙控作業(yè)機器人控制系統(tǒng)的軟件開發(fā)中。經(jīng)實踐證明,這能夠滿足機器人的實時多中斷任務處理的要求,并取得了良好的實際效果。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

柏林2025年9月9日 /美通社/ -- 2025年9月5日,納斯達克上市公司優(yōu)克聯(lián)集團(NASDAQ: UCL)旗下全球互聯(lián)品牌GlocalMe,正式亮相柏林國際消費電子展(IFA 2025),重磅推出融合企...

關(guān)鍵字: LOCAL LM BSP 移動網(wǎng)絡

深圳2025年9月9日 /美通社/ -- PART 01活動背景 當技術(shù)的鋒芒刺穿行業(yè)壁壘,萬物互聯(lián)的生態(tài)正重塑產(chǎn)業(yè)疆域。2025年,物聯(lián)網(wǎng)產(chǎn)業(yè)邁入?"破界創(chuàng)造"與"共生進化"?的裂變時代——AI大模型消融感知邊界,...

關(guān)鍵字: BSP 模型 微信 AIOT

"出海無界 商機無限"助力企業(yè)構(gòu)建全球競爭力 深圳2025年9月9日 /美通社/ -- 2025年8月28日, 由領(lǐng)先商業(yè)管理媒體世界經(jīng)理人攜手環(huán)球資源聯(lián)合主辦、深圳?前海出海e站通協(xié)辦的...

關(guān)鍵字: 解碼 供應鏈 AI BSP

柏林2025年9月9日 /美通社/ -- 柏林當?shù)貢r間9月6日,在2025德國柏林國際電子消費品展覽會(International Funkausstellung...

關(guān)鍵字: 掃地機器人 耳機 PEN BSP

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠通信宣布,其自研藍牙協(xié)議棧DynaBlue率先通過藍牙技術(shù)聯(lián)盟(SIG)BQB 6.1標準認證。作為移遠深耕短距離通信...

關(guān)鍵字: 藍牙協(xié)議棧 移遠通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實黨中央、國務院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務業(yè)的決策部署,更好發(fā)揮人力資源服務業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達成合作,為其自主研發(fā)的"旗馭車管"車輛運營管理平臺提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺對百余家企業(yè)客戶的運營管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟和信息化委員會、上海市發(fā)展和改革委員會、上海市商務委員會、上海市教育委員會、上海市科學技術(shù)委員會指導,東浩蘭生(集團)有限公司主辦,東浩蘭生會展集團上海工業(yè)商務展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動駕駛
關(guān)閉