learfix">
/*
* avr120.c
*
* 文字列から特定の文字を取り除く
*/
#include <avr/io.h>
#include "hd44780.h" // EZ-LCDインクルードファイル
void InitHard( void); // ポートの初期化
int main(void)
{
char str[] = "C-language";
char result[20];
int i, j;
InitHard(); // ポートの初期化をします。
lcd_init (); // LCDの初期化をします。
j = 0;
for ( i = 0; i < 10; i++) // strの文字が'a'と同じか比較し、異なる場合はresultに格納します。
{
if ( str[i] != 'a')
{
result[ j++] = str[i];
}
}
// 液晶表示器に表示します。
lcd_locate( 0, 0); // カーソルを1行目に移動します。
for( i = 0; i < 10; i++) // 元の文字列をLCDに表示します。
{
lcd_putc( str[i]);
}
lcd_locate( 1, 0); // カーソルを2行目に移動します。
for( i = 0; i < j; i++) // 結果を表示します。
{
lcd_putc( result[i]);
}
while(1)
{
//TODO:: Please write your application code
}
}
void InitHard( void) // ポートの初期化
{
// ポートB初期設定
DDRB = 0xff; // PB7~PB0を出力に設定します。
PORTB = 0; // PB7~PB0に'L'を出力します。
// ポートC初期設定
DDRC = 0x3f; // PC7,PC6は初期(入力)、PC5~PC0を出力に設定します。
PORTC = 0; // PC7~PC0に'L'を出力します。
// ポートD初期設定
DDRD = 0xf0; // PD7~PD4は出力、PD3~PD0は入力に設定します。
PORTD = 0; // PD7~PD0に'L'を出力します。
}