/*
 * main.c
 *
 *  Created on: 2017416
 *      Author: admin
 */
/**
 *˼·:
 * һ:FLASHдͲ;
 * ڶ:֤CAN߽;
 * :ǰĲۺ
 * һ֤FLASHܺ;
 * Ҫܺ:ĳַдʹĳַĺ
 ***************************************/




#include "main.h"
//#include "BootLoader.h"
//#include "LED.h"

CanTxMsg can_tx_msg;
CanTxMsg can_tx_msg1;
int i;

int main(void)
{


    //жϡʼPIE
    //DINT;
    //DRTM;
    /*Initializes device clock and peripherals*/
    //ʼϵͳơPLLŹʱӡʼGPIO
    Device_init();

#ifdef _FLASH
    Device_bootCM(BOOTMODE_BOOT_TO_FLASH_SECTOR0);
#else
    Device_bootCM(BOOTMODE_BOOT_TO_S0RAM);
#endif
    // Initialize GPIO and configure GPIO pins for CANTX/CANRX
    // on module A.
    Device_initGPIO();
    /*Initializes PIE and clears PIE registers. Disables CPU interrupts.*/
    Interrupt_initModule();
    //IER = 0x0000;   // ֹCPUж
    //IFR = 0x0000;   //CPUжϱ־
    /*Initializes the PIE vector table with pointers to the shell Interrupt Service Routines (ISR).*/
    Interrupt_initVectorTable();
    CAN_GPIO_Config(CANA);
    CAN_Config(CANA);
    //EINT; //ȫ
    //ERTM; //ȫʵʱж

    //CAN_GPIO_Config(CANB);
    //CAN_Config(CANB);
    //ʼPIEж





    for(i = 0; i< 8;i++)
    {
        can_tx_msg.Data[i] =i;
       // can_tx_msg1.Data[i]=i*2;
    }
    can_tx_msg.Length = 4;
    can_tx_msg.CAN_num = CANA;

   // can_tx_msg1.Length = 8;
   // can_tx_msg1.CAN_num = CANB;
    int j;

	for(j= 0 ;j<10;j++)
	{
        CAN_Tx_Msg(&can_tx_msg);  //Ϣ
        DEVICE_DELAY_US(250000);
       // while(txMsgSuccessful);

      //  CAN_Tx_Msg(&can_tx_msg1);  //Ϣ
	}
	 SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_CANA);

     SysCtl_enablePeripheral(SYSCTL_PERIPH_CLK_CANA);
     SysCtl_allocateSharedPeripheral(SYSCTL_PALLOCATE_CAN_A,0x1U);
	 GPIO_setMasterCore(DEVICE_GPIO_PIN_LED2, GPIO_CORE_CM);

}
