在進(jìn)行MCU開發(fā)時,有時需要用到一些簡單的數(shù)字邏輯電路,LPC804與LPC55XX系列集成了PLU(Programmable Logic Unit),即可編程邏輯單元,可創(chuàng)建小型組合與時序邏輯電路,降低成本。
有些客戶在使用PLU時,對PLU的概念以及使用方法有些許疑問,本文對此進(jìn)行講解。
1、PLU簡介
LPC804與LPC55XX的PLU在使用上是完全相同的。包含了6個輸入、8個輸出、26個5輸入查找表(LUT)、4個觸發(fā)器(state Flip-Flops),其中26個PLU是相互連接的,輸出與查找表、觸發(fā)器之間采用多路復(fù)用,如下:
數(shù)字邏輯電路分為組合邏輯電路與時序邏輯電路,只有時序邏輯電路需要使用觸發(fā)器。當(dāng)使用觸發(fā)器時,需要外部向PLU_CLKIN提供時鐘輸入,即使用組合邏輯電路無需外部提供時鐘,使用時序邏輯電路時需要外部時鐘。如下:
2、PLU配置
測試最簡單的組合邏輯電路與時序邏輯電路,如下:
根據(jù)LPC55S69-EVK引出的引腳,如下:
配置引腳,如下:
配置時鐘,PLU的CLKIN時鐘設(shè)置為10K輸入,如下:
配置PLU外設(shè),如下:
配置PWM外設(shè),設(shè)置PWM為50%占空比,10K頻率,如下:
3、PLU Configuration tool 配置
NXP開發(fā)了PLU Configuration tool,此工具可以根據(jù)數(shù)字邏輯電路生成對應(yīng)代碼,去配置PLU及其真值表,下載鏈接可以在PLU外設(shè)配置界面復(fù)制,鏈接如下:
https://www.nxp.com/mcu-plu-config-tool
3.1 原理圖配置
打開PLU配置工具,選擇原理圖設(shè)計,做一個簡單的或運算與D觸發(fā)器實驗,如下:
點擊菜單欄File-》Export-》PLU source file將其導(dǎo)出為C文件,將C文件的內(nèi)容復(fù)制到main函數(shù)中,如下:
/* LUT0 (or01) */
PLU->LUT[0].INP_MUX[0] = 0x00000003; /* IN3 (IN3) */
PLU->LUT[0].INP_MUX[1] = 0x00000004; /* IN4 (IN4) */
PLU->LUT[0].INP_MUX[2] = 0x0000003F; /* default */
PLU->LUT[0].INP_MUX[3] = 0x0000003F; /* default */
PLU->LUT[0].INP_MUX[4] = 0x0000003F; /* default */
PLU->LUT_TRUTH[0] = 0xeeeeeeee; /* or01 (or01) STD 2 INPUT OR */
PLU->OUTPUT_MUX[5] = 0x0000001a; /* FF0 (FF01) -> OUT5 */
邏輯分析儀檢測結(jié)果如下:
注意只有在verilog文件中聲明posedge clock才會使用到觸發(fā)器,而且不能使用negedge sys_rst_n用來復(fù)位。always語句中的posedge clock將由CLKIN引腳的時鐘輸入代替,所以clock引腳是不起作用的。將生成的代碼復(fù)制到main函數(shù)中,用邏輯分析儀測試的結(jié)果如下:
審核編輯:郭婷
-
mcu
+關(guān)注
關(guān)注
146文章
17148瀏覽量
351212 -
觸發(fā)器
+關(guān)注
關(guān)注
14文章
2000瀏覽量
61158 -
plu
+關(guān)注
關(guān)注
1文章
6瀏覽量
7280
原文標(biāo)題:LPC804與LPC55XX中的可編程邏輯單元PLU介紹及實例分析
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論