下图为仲裁寄存器,重要的是理解SDMAARB寄存器。在该寄存器中仅仅须要设计MAXWAIT值,PRI(优先级)设置要在外设(如FFTC,AIF2等)提供的仲裁寄存器中设置,由于是外设在訪问slave,所以他们最清楚应该设置多大的优先级。例如以下述代码(在每一个CPU上都要设置类似的代码,这样才干对每一个corePac中的资源起作用,即当FFTC,AIF2等外设訪问各个corePac中的资源的时候。会採用对应CPU上设置的优先级进行訪问):
/*Configure FFTC CDMA priority*/
*(u32*)(0x021F020C) = 0x00010001; /*FFTCA CDMA priority configuration*/
/*Configure AIF2 CDMA priority*/
*(u32*)(0x01F1400C) = 0x00010000;
这里MDMAARBU并没有MAXWAIT域,由于MDMAARBU是请求corePac外部的资源,所以自然由外部的资源设置自己的MAXWAIT。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWl5ZWd1emhvdTEwMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">