.


:




:

































 

 

 

 





1) .

1.1) Code Composer Studio Lab10.pjt. Lab10.c E:\C281x\Labs\Lab10\lab10.c.

1.2) :

C:\tidcs\c28\dsp281x\v100\DSP281x_headers\source\DSP281x_GlobalVariableDefs.c

C:\tidcs\c28\dsp281x\v100\DSP281x_headers\source\DSP281x_GlobalVariableDefs.c

C:\tidcs\c28\dsp281x\v100\DSP281x_headers\cmd\F2812_Headers_nonBIOS.cmd

C:\tidcs\c28\dsp281x\v100\DSP281x_common\cmd\F2812_EzDSP_RAM_lnk.cmd

C:\ti\c2000\cgtools\lib\ rts2800_ml.lib

2) , .

2.1) : Project → Build Options, Compiler Preprocessor Include Search Path (-i) : C:\tidcs\C28\dsp281x\v100\DSP281x_headers\include;..\include

2.2) : Project → Build Options → Linker → Stack Size: 0x400.

2.3) Build Options, OK.

3) Lab9.c.

3.1) Lab10.c

, : cpu_timer0_isr() LED[8].

3.2) while(1) InitSystem() GpioSelect().

:

EALLOW;

SysCtrlRegs.WDKEY = 0x55;

SysCtrlRegs.WDKEY = 0xAA;

EDIS;

3.3) ECanaShadow:

struct ECAN_REGS ECanaShadow;

3.4) Gpio_select(). CANTxA CANRxA:

GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6 = 1;

GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7 = 1;

3.5) InitCan(), :

3.5.1) ECanaRegs.CANTIOC ECanaRegs.CANRIOC TXFUNC RXFUNC.

3.5.2) HECC CAN ( ECanaRegs.CANMC).

3.5.3) CCR ECanaRegs.CANMC.

3.5.4) CAN CCE ECanaRegs.CANES.

3.5.5) BRP, TSEG1 TSEG2 ECanaRegs.CANBTC.

3.5.6) ECanaRegs.CANBTC - CCR ECanaRegs.CANMC.

3.5.7) mailboxes , , 0 ECanaRegs.CANME.

3.6) mailbox#1 :

3.6.1) 0x10000000 ( IDE EcanaMboxes.MBOX1.MSGID).

3.6.2) mailbox#1 MD1 ECanaRegs.CANMD. ECanaShadow.CANMD.all ECanaRegs.CANMD:

ECanaShadow.CANMD.all = ECanaRegs.CANMD.all;

ECanaShadow.CANMD.bit.MD1 = 1;

ECanaRegs.CANMD.all = ECanaShadow.CANMD.all;

mailbox#5:

ECanaShadow.CANME.all = ECanaRegs.CANME.all;

ECanaShadow.CANME.bit.ME1 = 1;

ECanaRegs.CANME.all = ECanaShadow.CANME.all;

4) mailbox#1

4.1) . , RMP1 ECanaRegs.CANRMP 1.

do-while RMP1=1.

1. ECanaRegs.CANRMP ECanaShadow.CANRMP.

2. .

4.2) RMP1 1 GPIO-B7B0:

GpioDataRegs.GPBDAT.all = ECanaMboxes.MBOX1.MDL.byte.BYTE0;

4.3) RMP1, 1:

ECanaShadow.CANRMP.bit.RMP1 = 1;

ECanaRegs.CANRMP.all = ECanaShadow.CANRMP.all;

5) .

5.1) : Debug → Reset CPU, Debug → Restart.

5.2) : Debug → Go main.

5.3) : Debug → Run. [6]

 





:


: 2017-02-24; !; : 247 |


:

:

, .
==> ...

1475 - | 1302 -


© 2015-2024 lektsii.org - -

: 0.017 .