cancel
Showing results for 
Search instead for 
Did you mean: 

BlueNRG-1 Driver for SSD1306

Diltech
Associate II

Hi,

 

Here i post a driver for SSD1306 128X64 Oled Display.

 

You must enable I2C configuration 

void I2C_ConfigurationMaster(void) {
	GPIO_InitType GPIO_InitStructure;
	I2C_InitType I2C_InitStruct;

	/* Enable I2C and GPIO clocks */
	if ((I2C_Type*) SDK_EVAL_I2C== I2C2) {
		SysCtrl_PeripheralClockCmd(CLOCK_PERIPH_I2C2 | CLOCK_PERIPH_GPIO, ENABLE);
	}
	else {
		SysCtrl_PeripheralClockCmd(CLOCK_PERIPH_I2C1 | CLOCK_PERIPH_GPIO, ENABLE);
	}

	/* Configure I2C pins */
	GPIO_InitStructure.GPIO_Pin = SDK_EVAL_I2C_CLK_PIN;
	GPIO_InitStructure.GPIO_Mode = SDK_EVAL_I2C_DATA_MODE;
	GPIO_InitStructure.GPIO_Pull = DISABLE;
	GPIO_InitStructure.GPIO_HighPwr = DISABLE;
	GPIO_Init(&GPIO_InitStructure);

	GPIO_InitStructure.GPIO_Pin = SDK_EVAL_I2C_DATA_PIN;
	GPIO_InitStructure.GPIO_Mode = SDK_EVAL_I2C_DATA_MODE;
	GPIO_Init(&GPIO_InitStructure);

	/* Configure I2C in master mode */
	I2C_StructInit(&I2C_InitStruct);
	I2C_InitStruct.I2C_OperatingMode = I2C_OperatingMode_Master;
	I2C_InitStruct.I2C_ClockSpeed = SDK_EVAL_I2C_CLK_SPEED;
	I2C_Init((I2C_Type*) SDK_EVAL_I2C, &I2C_InitStruct);

	/* Clear all I2C pending interrupts */
	I2C_ClearITPendingBit((I2C_Type*) SDK_EVAL_I2C, I2C_IT_MSK);

}

 

Regards

0 REPLIES 0