⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mcbsp1.c

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 C
📖 第 1 页 / 共 2 页
字号:
//===============================================================================
//            TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION           
//                                                                             
//   Property of Texas Instruments 
//   For  Unrestricted  Internal  Use  Only 
//   Unauthorized reproduction and/or distribution is strictly prohibited.  
//   This product is protected under copyright law and trade secret law 
//   as an unpublished work.  
//   Created 1999, (C) Copyright 1999 Texas Instruments.  All rights reserved.
//
//
//   Filename       	: mcbsp.c
//
//   Description    	: Header of the library driving the GPIOs
//
//   Project        	: HELEN
//
//   Author         	: Jean-Louis Masseau for Perseus
//   Modified by     : Jean-Philippe Ulpiano for Helen
//
//===============================================================================

#include "mcbsp1.h"
//---------------------------------------------------------------------
// NAME        : MCBSP1_TestResetValue
//
// DESCRIPTION : Test the reset values of MCBSP1 registers
//
// PARAMETERS  : None
//
// RETURN VALUE: None
//
// LIMITATIONS : None
//---------------------------------------------------------------------
void MCBSP1_Test_ResetValue(void)
{
  BEGIN_RESET_MODULE();

   /* reset value for these 4 registers are unknown
   
    BEGIN_RESET_TEST(MCBSP1_MCBSP_DRR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_DRR2_REG,DRR2,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_DRR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_DRR1_REG,DRR1,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_DXR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_DXR2_REG,DXR2,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_DXR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_DXR1_REG,DXR1,16);
    END_RESET_TEST();
    
   */

    BEGIN_RESET_TEST(MCBSP1_MCBSP_SPCR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,RSVD,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,FREE,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,SOFT,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,FRST_,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,GRST_,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,XINTM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,XSYNCERR,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,XEMPTY_,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,XRDY,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR2_REG,XRST_,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_SPCR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,DLB,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RJUST,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,CLKSTP,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RSVD,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,DXENA,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,ABIS,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RINTM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RSYNCERR,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RFULL,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RRDY,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SPCR1_REG,RRST_,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RPHASE,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RFRLEN2,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RWDLEN2,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RCOMPAND,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RFIG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR2_REG,RDATDLY,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR1_REG,RSVD1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR1_REG,RFRLEN1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR1_REG,RWDLEN1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCR1_REG,RSVD2,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XPHASE,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XFRLEN2,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XWDLEN2,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XCOMPAND,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XFIG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR2_REG,XDATDLY,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR1_REG,RSVD1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR1_REG,XFRLEN1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR1_REG,XWDLEN1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCR1_REG,RSVD2,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_SRGR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR2_REG,GSYNC,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR2_REG,CLKSP,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR2_REG,CLKSM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR2_REG,FSGM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR2_REG,FPER,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_SRGR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR1_REG,FWID,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_SRGR1_REG,CLKGDV,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_MCR2_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,RSVD,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,XMCME,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,XPBBLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,XPABLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,XCBLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR2_REG,XMCM,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_MCR1_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RSVD1,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RMCME,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RPBBLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RPABLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RCBLK,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RSVD2,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_MCR1_REG,RMCM,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERA_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERA_REG,RCERA,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERB_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERB_REG,RCERB,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERA_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERA_REG,XCERA,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERB_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERB_REG,XCERB,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_PCR_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,RSVD,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,IDLE_EN,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,XIOEN,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,RIOEN,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,FSXM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,FSRM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,CLKXM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,CLKRM,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,SCLKME,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,CLKS_STAT,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,DX_STAT,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,DR_STAT,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,FSXP,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,FSRP,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,CLKXP,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_PCR_REG,CLKRP,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERC_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERC_REG,RCERC,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERD_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERD_REG,RCERD,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERC_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERC_REG,XCERC,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERD_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERD_REG,XCERD,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERE_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERE_REG,RCERE,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERF_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERF_REG,RCERF,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERE_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERE_REG,XCERE,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERF_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERF_REG,XCERF,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERG_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERG_REG,RCERG,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_RCERH_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_RCERH_REG,RCERH,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERG_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERG_REG,XCERG,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_XCERH_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_XCERH_REG,XCERH,16);
    END_RESET_TEST();

    BEGIN_RESET_TEST(MCBSP1_MCBSP_REV_REG,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_REV_REG,RSVD,16);
    TEST_FIELD_RESET(MCBSP1_MCBSP_REV_REG,REV,16);
    END_RESET_TEST();

  END_RESET_MODULE();

}

//---------------------------------------------------------------------
// NAME        : MCBSP1_TestRegistersAccess
//
// DESCRIPTION : Test the access to MCBSP1 registers
//
// PARAMETERS  : None
//
// RETURN VALUE: None
//
// LIMITATIONS : None
//---------------------------------------------------------------------
void MCBSP1_TestRegistersAccess(void)
{
  BEGIN_ACCESS_MODULE();

    BEGIN_RW_TEST(MCBSP1_MCBSP_SPCR2_REG,16);
    //MCBSP1_MCBSP_SPCR2_REG,RSVD is Read Only
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,FREE,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,SOFT,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,FRST_,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,GRST_,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,XINTM,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,XSYNCERR,16);
    //MCBSP1_MCBSP_SPCR2_REG,XEMPTY_ is Read Only
    //MCBSP1_MCBSP_SPCR2_REG,XRDY is Read Only
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR2_REG,XRST_,16);
    RW_WRITE(MCBSP1_MCBSP_SPCR2_REG);
    //MCBSP1_MCBSP_SPCR2_REG,RSVD is Read Only
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,FREE,16);
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,SOFT,16);
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,FRST_,16);
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,GRST_,16);
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,XINTM,16);
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,XSYNCERR,16);
    //MCBSP1_MCBSP_SPCR2_REG,XEMPTY_ is Read Only
    //MCBSP1_MCBSP_SPCR2_REG,XRDY is Read Only
    RW_TEST_READ(MCBSP1_MCBSP_SPCR2_REG,XRST_,16);
    RW_WRITE_PREVIOUS_VALUE(MCBSP1_MCBSP_SPCR2_REG);
    END_RW_TEST();

    BEGIN_RW_TEST(MCBSP1_MCBSP_SPCR1_REG,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,DLB,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,RJUST,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,CLKSTP,16);
    //MCBSP1_MCBSP_SPCR1_REG,RSVD is Read Only
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,DXENA,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,ABIS,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,RINTM,16);
    RW_PREPARE_WRITE(MCBSP1_MCBSP_SPCR1_REG,RSYNCERR,16);
    //MCBSP1_MCBSP_SPCR1_REG,RFULL is Read Only
    //MCBSP1_MCBSP_SPCR1_REG,RRDY is Read Only

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -