Написал программу бегущей строки для lcd-дисплея по алгоритму "запоминаем первый символ, затем берем второй символ и помещаем его на место первого, потом третий на место второго и так до последнего, после чего на место последнего символа ставим запомненный первый" получилось совсем не что я хотел
Вот сам код:
Код: Выделить всё
#include "mega8535.h"
#asm
.equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd>
#include <stdio>
#include <delay>
unsigned char nn;
unsigned char b[21] = "Hello World";
void main(void) {
lcd_init(20);
while(1) {
nn=b[0];
b[0]=b[1];
b[1]=b[2];
b[2]=b[3];
b[3]=b[4];
b[4]=b[5];
b[5]=b[6];
b[6]=b[7];
b[7]=b[8];
b[8]=b[9];
b[9]=b[10];
b[10]=b[11];
b[11]=b[12];
b[12]=b[13];
b[13]=b[14];
b[14]=b[15];
b[15]=b[16];
b[16]=b[17];
b[17]=b[18];
b[18]=b[19];
b[19]=b[20];
b[20]=nn;
delay_ms(500);
lcd_clear();
lcd_gotoxy(0,1);
lcd_puts(b);
}
}контроллер я использовал atmega8535-16pi
компилятор avr code vision
язык - си (других не знаю)
ниже выложил файл для протеуса и файлы для avr code vision
ктонибудь подскажите где я ошибся
заранее спасибо.