Мне надо разработать формирователь ступеньчатого напряжения N=256 (пуск и частота задаётся портом) на микросхеме ATmega103.
Я с другом который шарит в программировании составили вот такой код
#include <mega103>
#include <delay>
int i;
char j, s;
int main (void)
{
DDRA = 0;
DDRC = 0;
DDRB = 0xFF;
while (1)
{
s=PORTC;
if (i == 255) {i=0;} else {i++;}
if ((PORTA&1) == 0) {PORTB = i;}
while (j == s) ;
{
j++;};
}
}
Прошу посмотреть, правильно ли? И объяснить зачем тут нужна переменная j, и что означает "&" (PORTA&1), так же что означает while (1), что такое while знаю, а что в () нет.
Так же пожалуйста помогите разработать структурную схему на неё.



