Microchip的PIC18-Q71系列微控制器
來源:http://69677.cn 作者:億金電子 2024年03月04
Microchip的PIC18-Q71系列微控制器
PIC18-Q71系列微控制器的移位寄存器使用信號(hào)路由端口
PIC18-Q71系列微控制器的移位寄存器使用信號(hào)路由端口
這篇博客文章介紹了集成到PIC18-Q71系列微控制器(MCU)和未來設(shè)備上的新信號(hào)路由端口(SRPORT)外設(shè)。我們將討論如何將SRPORT與其它外設(shè)配合使用來實(shí)現(xiàn)串行輸入并行輸出(SIPO)移位寄存器。
了解問題
在I/O引腳有限的MCU中,引腳可用性通常成為主要的系統(tǒng)限制。通常在可用引腳的數(shù)量與芯片本身的成本、石英晶振尺寸和復(fù)雜性之間存在權(quán)衡,這使得很難找到完美的平衡。涉及多個(gè)外設(shè)互連的應(yīng)用經(jīng)常會(huì)遇到并非所有外設(shè)信號(hào)都能直接互連的問題,需要通過外部I/O引腳路由信號(hào)才能建立連接。這可能并不理想,因?yàn)樗拗屏薓CU在需要時(shí)與多個(gè)外部元件接口的能力,從而降低了系統(tǒng)的整體功能。
這種情況有解決方案,例如使用更高引腳數(shù)的設(shè)備來確保所有連接都可以進(jìn)行,或者添加額外的硬件(例如I/O擴(kuò)展器)來增加可用的引腳數(shù)。盡管這些解決方案看似可行,但理解其中的利弊很重要,因?yàn)樗鼈兛赡軙?huì)增加系統(tǒng)的復(fù)雜性,從而增加總成本。
什么是信號(hào)路由端口?
歐美進(jìn)口晶振Microchip的SRPORT是一個(gè)軟件接口,它模擬微控制器上的物理硬件端口,本質(zhì)上類似于一個(gè)沒有物理連接到外部引腳的常規(guī)I/O端口。這樣就可以像連接到微控制器的物理端口一樣與器件通信,無需在應(yīng)用中使用任何額外的物理I/O線路。SRPORT為設(shè)計(jì)帶來了先進(jìn)的互連性,最終最大限度地減少了對(duì)外部引腳布線的需求。這允許用戶創(chuàng)建自定義配置,而無需復(fù)雜的軟件開發(fā)或大量PCB修改。
SRPORT模塊是一種多功能硬件解決方案,由8個(gè)虛擬輸入引腳和8個(gè)虛擬輸出引腳組成。這些引腳非常靈活,可以滿足特定的應(yīng)用需求。每個(gè)信號(hào)路由引腳提供一系列輸入選擇,包括各種獨(dú)立于內(nèi)核的外設(shè)的輸出,這使得基于硬件的解決方案能夠在選定外設(shè)和虛擬引腳之間交換數(shù)據(jù)。
對(duì)于需要高級(jí)同步和時(shí)序的應(yīng)用,SRPORT提供廣泛的時(shí)鐘源選擇,包括來自外設(shè)的時(shí)鐘源。每個(gè)信號(hào)路由引腳都配有一個(gè)觸發(fā)器,以便在需要時(shí)幫助信號(hào)同步,最終幫助設(shè)計(jì)基于硬件的狀態(tài)機(jī)。
SRPORT用作高電平輸入選擇多路復(fù)用器,貼片晶振,通過外設(shè)引腳選擇(PPS)在內(nèi)部將數(shù)字外設(shè)輸出連接到其它外設(shè)的輸入,無需將這些信號(hào)路由至外部I/O引腳以實(shí)現(xiàn)外設(shè)之間的通信。輸入選擇范圍還包括緊鄰的下一個(gè)信號(hào)路由引腳的輸出作為輸入。這與每個(gè)信號(hào)路由引腳提供的觸發(fā)器結(jié)合使用,允許移位寄存器操作。最后,SRPORT提供專用的更改時(shí)中斷。這在用于DMA控制器或模數(shù)轉(zhuǎn)換器等其它外設(shè)的觸發(fā)事件時(shí)非常有用。
使用SRPORT創(chuàng)建串行輸入并行輸出(SIPO)移位寄存器
既然我們對(duì)SRPORT有了很好的了解,現(xiàn)在我們將討論我們的應(yīng)用團(tuán)隊(duì)如何利用SRPORT和其它外設(shè)實(shí)現(xiàn)SIPO移位寄存器。
該應(yīng)用使用帶有PIC18F46Q71微控制器的Curiosity高引腳數(shù)(HPC)板。
下面顯示了代碼示例如何運(yùn)行的高級(jí)框圖。


什么是串行輸入并行輸出(SIPO)移位寄存器?
移位寄存器是一種可以存儲(chǔ)和傳輸二進(jìn)制數(shù)據(jù)的數(shù)字電路。移位寄存器由多個(gè)相互級(jí)聯(lián)的觸發(fā)器組成,其中每個(gè)觸發(fā)器可以存儲(chǔ)一位數(shù)據(jù),而整個(gè)鏈可以存儲(chǔ)多位數(shù)據(jù)。
SIPO移位寄存器是一種數(shù)字電路,可以在一系列觸發(fā)器中存儲(chǔ)和傳輸數(shù)據(jù)。它通過串行輸入一次接收一位或一個(gè)字節(jié)的數(shù)據(jù),并并行輸出整組位或字節(jié)。SIPO移位寄存器通常由多個(gè)相互連接的觸發(fā)器組成,使用它們的數(shù)據(jù)和時(shí)鐘信號(hào)作為輸入。
SIPO移位寄存器的基本表示如下所示:


操作理論
讓我們首先討論SRPORT在這個(gè)移位寄存器示例中必須扮演什么角色。SRPORT模塊負(fù)責(zé)根據(jù)輸入的時(shí)鐘信號(hào)存儲(chǔ)和移位數(shù)據(jù)。要將SRPORT配置為移位寄存器,SRPORT允許其輸入選擇選項(xiàng)之一是作為輸入的下一個(gè)信號(hào)路由引腳的輸出。
下圖顯示了這種情況。


SRPORT從脈寬調(diào)制器(PWM)外設(shè)獲取時(shí)鐘信號(hào)和數(shù)據(jù)。PWM1模塊產(chǎn)生一個(gè)1kHz時(shí)鐘信號(hào),用作SRPORT的時(shí)鐘輸入。為了將該信號(hào)用作SRPORT的時(shí)鐘信號(hào),可配置邏輯單元(CLC)用于將時(shí)鐘信號(hào)重定向至SRPORT的時(shí)鐘輸入選擇。
PWM2模塊用于產(chǎn)生一個(gè)數(shù)據(jù)信號(hào),作為移位寄存器的輸入。PWM2產(chǎn)生的數(shù)據(jù)在1kHz時(shí)鐘信號(hào)的每個(gè)上升沿移位并存儲(chǔ)。一旦出現(xiàn)8個(gè)時(shí)鐘周期,代表前8個(gè)時(shí)鐘周期數(shù)據(jù)的8位值就會(huì)存儲(chǔ)在PORTW寄存器中。一旦第八個(gè)時(shí)鐘周期出現(xiàn),通用定時(shí)器(UTMR)就會(huì)觸發(fā)直接存儲(chǔ)器訪問(DMA)傳輸,將數(shù)據(jù)從SRPORT轉(zhuǎn)移到RAM。隨后,使用另一個(gè)DMA模塊將數(shù)據(jù)從RAM移動(dòng)到UART的發(fā)送緩沖區(qū),以便在數(shù)據(jù)終端上顯示。
最后,在Curiosity HPC開發(fā)板上使用板載按鈕啟動(dòng)每一輪數(shù)據(jù)傳輸。為了解決按鈕具有潛在去抖的問題,定時(shí)器2模塊與CLC模塊結(jié)合使用,以創(chuàng)建基于硬件的無代碼按鈕去抖解決方案。
總之,這表明可以利用SRPORT和其它獨(dú)立于內(nèi)核的外設(shè)來有效實(shí)現(xiàn)移位寄存器。要進(jìn)一步了解演示內(nèi)容,您可以探索MPLAB Discover環(huán),指導(dǎo)您完成項(xiàng)目的MPLAB代碼配置器(MCC)設(shè)置。
原廠代碼 | 進(jìn)口晶振 | 型號(hào) | 頻率 |
DSC1123CI2-125.0000 | Microchip晶振 | DSC1123 | 125MHz |
DSC1123CI2-200.0000 | Microchip晶振 | DSC1123 | 200MHz |
DSC1123AE2-100.0000 | Microchip晶振 | DSC1123 | 100MHz |
DSC1001CI2-027.0000 | Microchip晶振 | DSC1001 | 27MHz |
DSC1123CE1-156.2500 | Microchip晶振 | DSC1123 | 156.25MHz |
DSC1123CI2-150.0000 | Microchip晶振 | DSC1123 | 150MHz |
DSC1123CI2-100.0000 | Microchip晶振 | DSC1123 | 100MHz |
DSC1103DI2-312.5000 | Microchip晶振 | DSC1103 | 312.5MHz |
DSC1123DI2-050.0000 | Microchip晶振 | DSC1123 | 50MHz |
DSC1123CI2-156.2500 | Microchip晶振 | DSC1123 | 156.25MHz |
DSC1123BL2-125.0000 | Microchip晶振 | DSC1123 | 125MHz |
DSC1123CI5-125.0000 | Microchip晶振 | DSC1123 | 125MHz |
DSC1103CI5-300.0000 | Microchip晶振 | DSC1103 | 300MHz |
DSC1123DL5-200.0000 | Microchip晶振 | DSC1123 | 200MHz |
DSC1123NL5-100.0000 | Microchip晶振 | DSC1123 | 100MHz |
DSC1001CI2-018.4320 | 石英晶振 | DSC1001 | 18.432MHz |
DSC1123CI1-200.0000 | Microchip晶振 | DSC1123 | 200MHz |
DSC1123CI1-156.2500 | Microchip晶振 | DSC1123 | 156.25MHz |
DSC1123AE2-300.0000 | Microchip晶振 | DSC1123 | 300MHz |
DSC1123AI1-125.0000 | Microchip晶振 | DSC1123 | 125MHz |
DSC1123AI2-125.0000 | Microchip晶振 | DSC1123 | 125MHz |
DSC1122CE1-125.0000 | Microchip晶振 | DSC1122 | 125MHz |
DSC1123AE2-200.0000 | Microchip晶振 | DSC1123 | 200MHz |
DSC1103CI1-075.0000 | Microchip晶振 | DSC1103 | 75MHz |
DSC1123AI2-150.0000 | Microchip晶振 | DSC1123 | 150MHz |
DSC1123AI1-200.0000 | Microchip晶振 | DSC1123 | 200MHz |
DSC557-0344SI1 | Microchip晶振 | DSC557-03 | 100MHz |
正在載入評(píng)論數(shù)據(jù)...
發(fā)表評(píng)論:
姓名: | |
郵箱: | |
正文: | |
歡迎參與討論,請(qǐng)?jiān)谶@里發(fā)表您的看法、交流您的觀點(diǎn)。
此文關(guān)鍵字: 石英晶體
相關(guān)資訊
- [2025-02-06]Abracon的2024年最佳產(chǎn)品:尖端的計(jì)時(shí)...
- [2025-01-13]MEMS振蕩器:針對(duì)現(xiàn)代應(yīng)用進(jìn)行定制的高...
- [2025-01-13]計(jì)時(shí)的故事:從擺鐘到現(xiàn)代計(jì)時(shí)
- [2025-01-08]生命周期:Microcrystal的可持續(xù)回收指...
- [2024-12-20]小基站中的時(shí)鐘和同步要求
- [2024-12-20]適用于您的家庭和工業(yè)物聯(lián)網(wǎng)設(shè)計(jì)的石...
- [2024-12-19]使用頻譜分析儀消除時(shí)鐘幅度變化對(duì)抖...
- [2024-12-18]什么是同步保持,為什么它在面向未來的...