Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » DSDP - Real-Time Software Components (RTSC) » Additional information
Additional information [message #967362] Thu, 01 November 2012 14:03
James Lockwood is currently offline James Lockwood
Messages: 27
Registered: July 2009
Junior Member
I have some more unexpected behaviour that may help in debugging.

When the mapping is declared statically in my .xdc module (not in my .cfg file), not only are the fields disabled, but my config options are not displayed correctly in the "Advanced" screen, as shown.

Note that:
- "PortAConfig" displays propery will all the bits expandable.
- Ports["PORT_A"] should be referencing PortAConfig, but the values of baseIndex, and baseAddress are not set.
- Ports["PORT_A"] isn't even the same structure as PortAConfig, as only "bit0" has it's fields declared. All other bits are not expandable.
- Ports["PORT_B"] doesn't contain any any fields that are settable.

Relevant parts of my PinProfile.xdc file are:
	metaonly config IPinDefinitions.Gpio0Settings gpio0 = {
		name: "GPIO 0",
		isConfigurable: true,
		isUsedInProfile: false,
		mux: IMuxOptions.GPIO0_MUXVALUE_GPIO,
		pin: {
			owner: IPinOptions.PIN_OWNER_M3,
			direction: IPinOptions.PIN_DIRECTION_MODE_IN,
			pinType: IPinOptions.PIN_TYPE_STD,
			interruptLevel: IPinOptions.PIN_INT_INPUT_LEVEL_LOW,
			poundDefineName: ""
		}
	};

	metaonly config IPinDefinitions.Gpio1Settings gpio1 = {
		name: "GPIO 1",
		isConfigurable: true,
		isUsedInProfile: false,
		mux: IMuxOptions.GPIO1_MUXVALUE_GPIO,
		pin: {
			owner: IPinOptions.PIN_OWNER_M3,
			direction: IPinOptions.PIN_DIRECTION_MODE_IN,
			pinType: IPinOptions.PIN_TYPE_STD,
			interruptLevel: IPinOptions.PIN_INT_INPUT_LEVEL_LOW,
			poundDefineName: ""
		}
	};

	metaonly struct PortA {
		UInt8 baseIndex;
		UInt32 baseAddress;
		IPinDefinitions.Gpio0Settings bit0;
		IPinDefinitions.Gpio1Settings bit1;
		IPinDefinitions.Gpio2Settings bit2;
		IPinDefinitions.Gpio3Settings bit3;
		IPinDefinitions.Gpio4Settings bit4;
		IPinDefinitions.Gpio5Settings bit5;
		IPinDefinitions.Gpio6Settings bit6;
		IPinDefinitions.Gpio7Settings bit7;
	};
	metaonly struct PortB {
		UInt8 baseIndex;
		UInt32 baseAddress;
		IPinDefinitions.Gpio8Settings bit0;
		IPinDefinitions.Gpio9Settings bit1;
		IPinDefinitions.Gpio10Settings bit2;
		IPinDefinitions.Gpio11Settings bit3;
		IPinDefinitions.Gpio12Settings bit4;
		IPinDefinitions.Gpio13Settings bit5;
		IPinDefinitions.Gpio14Settings bit6;
		IPinDefinitions.Gpio15Settings bit7;
	};

	metaonly config PortA PortAConfig = {
		baseIndex: 0,
		baseAddress: 12,
		bit0: gpio0,
		bit1: gpio1,
		bit2: gpio2,
		bit3: gpio3,
		bit4: gpio4,
		bit5: gpio5,
		bit6: gpio6,
		bit7: gpio7};

	metaonly config PortB PortBConfig = {
		baseIndex: 1,
		baseAddress: 34,
		bit0: gpio8,
		bit1: gpio9,
		bit2: gpio10,
		bit3: gpio11,
		bit4: gpio12,
		bit5: gpio13,
		bit6: gpio14,
		bit7: gpio15};

	metaonly config Any Ports[string] = [ ["PORT_A", PortAConfig], ["PORT_B", PortBConfig] ];
Previous Topic:'atexit' error when upgrading to xdctools 3.16
Next Topic:Property params of the build target was not copied to the config object model
Goto Forum:
  


Current Time: Fri Aug 01 18:40:06 EDT 2014

Powered by FUDForum. Page generated in 0.01384 seconds