Hi,
Unfortunately, the MC56F83xxx no longer supports PE, now all MCU uses SDK package to develop code.
Pls download SDK package from the link based on MC56F83xxx.
Hope it can help you
BR
XiangJun Rong
Hi,
Pls download CodeWarrior for MCU ver10.x from the link and install it on your PC.
For the patch installation, I attach a doc, but I suppose the doc is very old.
Hope it can help you
BR
XiangJun Rong
Thanks,
Do you mean that ver. 10 support this chip and ver 11 doesnt?
I think that ver. 10 is older than this chip
please explain
Hi,
I am sorry, it was my mistake, I suggest you download latest version of CodeWarrior for MCU ver11.1 instead of version 10.x.
I suppose that maybe version 11.1 supports MC56F83xxx, you do not need install patch.
Hope it can help you
BR
XiangJun Rong
Thanks,
I am using ver 11.1, so I installed the last updates 3 and 4 and now I can open new project with this chip. BUT: there is no internal PE support for the chip, and I can not see it in the processors library list.
Is there any add-on I should install to get full support for this chip (MC56F83783)?
Hi,
Unfortunately, the MC56F83xxx no longer supports PE, now all MCU uses SDK package to develop code.
Pls download SDK package from the link based on MC56F83xxx.
Hope it can help you
BR
XiangJun Rong
Thanks Rong,
I tried to work with the xpresso before. I dont like the config activity: I had to enter the online tool, define the I/O and modules, then pack it to installation file and install it on my computer.
This works good, but what happens if I want to change the I/O? do I have to enter the config tool again and install a new project on my computer? what about all the code I already wrote?
Please guide me if there is another way to make changes.
Hi,
Regarding the pin configuration, I suggest you write the peripheral register directly.
This is an example to configure the pin as PWM function.
Secondly, you can call the SDK api function for example:
void BOARD_InitPins(void)
{
/* GPIOC IPBus Clock Enable: The peripheral is clocked. */
CLOCK_EnableClock(kCLOCK_GPIOC);
/* GPIOD IPBus Clock Enable: The peripheral is clocked. */
CLOCK_EnableClock(kCLOCK_GPIOD);
/* Enable peripheral functionality on pin GPIOC0 (pin 3) */
GPIO_PinSetPeripheralMode(BOARD_EXTAL_GPIO, BOARD_EXTAL_PIN_MASK, kGPIO_ModePeripheral);
/* Peripheral functionality on pin GPIOC0 (pin 3) */
GPIO_PinSetPeripheralMux(kGPIO_Peri_C0_EXTAL);
/* Enable peripheral functionality on pin GPIOC1 (pin 4) */
GPIO_PinSetPeripheralMode(BOARD_XTAL_GPIO, BOARD_XTAL_PIN_MASK, kGPIO_ModePeripheral);
/* Enable peripheral functionality on pin GPIOD5 (pin 10) */
GPIO_PinSetPeripheralMode(BOARD_RXD_BDM_GPIO, BOARD_RXD_BDM_PIN_MASK, kGPIO_ModePeripheral);
/* Peripheral functionality on pin GPIOD5 (pin 10) */
GPIO_PinSetPeripheralMux(kGPIO_Peri_D5_RXD2);
/* Enable peripheral functionality on pin GPIOD6 (pin 9) */
GPIO_PinSetPeripheralMode(BOARD_TXD_BDM_GPIO, BOARD_TXD_BDM_PIN_MASK, kGPIO_ModePeripheral);
/* Peripheral functionality on pin GPIOD6 (pin 9) */
GPIO_PinSetPeripheralMux(kGPIO_Peri_D6_TXD2);
}
void PWMPinAssignment(void)
{
//enable gated clock for GPIOE and GPIUOG port
SIM->PCE0|=1<<2|1<<0;
GPIOE->PER|=0x3F;
GPIOG->PER|=1<<5;
//clear E0/E1/E2/E3/E4/E5 bits
SIM->GPSEL&=~(0xFFF);
//set up the G5 as 2b'01
SIM->GPSGL&=~(0xC00);
SIM->GPSGL|=1<<10;
}
//use GPIOG6 as GPIO output signal, which can be a PWM fault signal
//GPIOG6 pin pin11 of J4
void GpioG6_GPIOOUTPUT_Init(void)
{
//enable GPIOG port clock
SIM->PCE0|=1<<0;
//clear the GPIOG6 bit in PER reg
GPIOG->PER&=~(0x40);
GPIOG->DDR|=1<<6;
GPIOG->DR=GPIOG->DR^0x40;
__asm(nop);
GPIOG->DR=GPIOG->DR^0x40;
}
//the PIT0 cycle time is 0.5s
void PIT0_Init(void)
{
//enable PIT0 gated clock
SIM->PCE2|=1<<3;
//PIT0 prescaler is 32768, the PIT0 cycl;e time is (100 000 000/32768)=3051
PIT0->CTRL=0x0F<<3;
PIT0->MOD=1525;
PIT0->CTRL|=0x03;
INTC->IPR10|=3<<12;
}
#pragma interrupt on
void PIT0_ISR(void)
{
//clear the flag of PIT0
PIT0->CTRL&=~(0x01<<2);
//toggle led0
__asm(nop);
GPIOG->DR=GPIOG->DR^0x40;
}
#pragma interrupt off
Hope it can help you
BR
XiangJun Rong