#include "iodefine.h"
#include "led_ctrl.h"

void init_led(void)
{
	/* ポートCデータレジスタ0 */
	PORT.PCDR0.BIT.PC8DR = 1;			/* ポートCの第8ビットを1に設定 */

	/* ポートC・IOレジスタ0 */
	PORT.PCIOR0.BIT.PC8IOR = 1;			/* ポートCの第8ビットを出力に設定 */

	/* ポートCコントロールレジスタ2 */
	PORT.PCCR2.BIT.PC8MD = 0;			/* ポートCの第8ビットの機能をPC8に設定 */

	return;
}

/* 基板上のLEDを点灯 */
void led_on(void)
{
	PORT.PCDR0.BIT.PC8DR = 0;
	return;
}

/* 基板上のLEDを消灯 */
void led_off(void)
{
	PORT.PCDR0.BIT.PC8DR = 1;
	return;
}

/* 基板上のLEDを反転 */
void led_toggle(void)
{
	PORT.PCDR0.BIT.PC8DR = ~PORT.PCDR0.BIT.PC8DR;
	return;
}

/* 基板上のLEDを分周して反転 */
void led_toggle_div(unsigned int div)
{
	static unsigned int n = 0;

	if(++n >= div)
	{
		n = 0;
		led_toggle();
	}
	return;
}
