```
#include ...
#include ...
#include <cmath>
#include namespace std;
int main()
{
float U_SPIR;
float U_X,U_Y;
int GRAD,i,w,m,n,q,z,n1,n2,n3,n4,n5,m1,m2,m3,m4,m5;
int K_X1,K_X2,K_Y1,K_Y2;
const int Re1=41;
const int Re2=42;
const int Re3=43;
const int Re4=44;
const int Re5=45;
const int Re6=46;
const int LedEr=47;
const int START=48;
n1=10;
n2=20;
n3=30;
n4=40;
n5=50;
m1=1;
m2=5;
m3=10;
m4=20;
m5=50;
void setup() {
pinMode(Re1,INPUT); // одиночная конфигурация(хочу использовать АrduinoMega)
pinMode(Re2,INPUT);
pinMode(Re3,INPUT);
pinMode(Re4,INPUT);
pinMode(Re5,INPUT);
pinMode(Re6,INPUT);
pinMode(LedEr,OUTPUT);
pinMode(START,INPUT);
.... // групповая конфигурация (arduinoMega - надо 5 групп выходов по 8бит(пин)A(pin1-8),B(pin9-16),C(pin17-24),D(pin25-32),E(pin33-40))?!?!?!?!?!??!?!?!?!
....
....
....
....
}
for(i=1;i<=1000;i++) // 1ч. прогрев
{
delay (10);
pin1=0; // пины 1-8 для KANFY_Led
pin2=0;
pin3=0;
pin4=0;
pin5=0;
pin6=0;
pin7=0;
pin8=0;
pin9=0; // пины 9-16 для Х1
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0; // пины 17-24 для Х2
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0; // пины 25-32 для Y1
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0; // пины 33-40 для Y2
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
for(i=1;i<=1000;i++) // 2ч. прогрев
{
delay (10);
pin1=1;
pin2=1;
pin3=1;
pin4=1;
pin5=1;
pin6=1;
pin7=0;
pin8=0;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
for(i=1;i<=1000;i++) // 3ч. прогрев
{
delay (10);
pin1=1;
pin2=1;
pin3=1;
pin4=1;
pin5=1;
pin6=1;
pin7=1;
pin8=1;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
z=0;
A:
delay(60);
z=z+1;
if z==1000 goto D;
else{
if DigitalRead(START)==LOW goto A;
else
{if pin41=0
{if pin42=0
{if pin43=0
{if pin44=0
{if pin45=0
{delay(1000);
goto E}
else
{n=n5;
m=m5;
goto B;}
}else
{n=n4;
m=m5;
goto B;}
}else
{n=n3;
m=m3;
goto B;}
}else
{n=n2;
m=m2;
goto B;}
}else
{n=n1;
m=m1;
goto B;}
}}
B:
for(w=1;w<=m;w++)
{for(i=1;i<=n;i++)
{for(GRAD=0;GRAD<=90;GRAD++) // 1 четверть
{
U_SPIR=(GRAD*i*i)/(72*n*n);
U_X=U_SPIR*cos(GRAD*3,1416/180);
U_Y=U_SPIR*sin(GRAD*3,1416/180);
K_X1=(int)U_X*51; // для portB математическое число 0-255
K_Y1=(int)U_Y*51; // для portD математическое число 0-255
.... portA=1 //число полученное математическим путем, подать на группы пинов(8 bit)?!?!?!?!?!?!??!?!?!?
.... portB= ...
.... portC=0
.... portD= ...
.... portE=0
}
for(GRAD=90;GRAD<=180;GRAD++) // 2 четверть
{
U_SPIR=(GRAD*i*i)/(72*n*n);
U_X=U_SPIR*cos(GRAD*3,1416/180);
U_Y=U_SPIR*sin(GRAD*3,1416/180);
K_X2=(int)U_X*51; // для portС математическое число 0-255
K_Y1=(int)U_Y*51; // для portD математическое число 0-255
.... portA=1 //число полученное математическим путем, подать на группы пинов(8 bit)?!?!?!?!?!?!??!?!?!?
.... portB=0
.... portC= ...
.... portD= ...
.... portE=0
}
for(GRAD=90;GRAD<=180;GRAD++) // 3 четверть
{
U_SPIR=(GRAD*i*i)/(72*n*n);
U_X=-U_SPIR*cos(GRAD*3,1416/180);
U_Y=-U_SPIR*sin(GRAD*3,1416/180);
K_X2=(int)U_X*51; // для portС математическое число 0-255
K_Y2=(int)U_Y*51; // для portE математическое число 0-255
.... portA=1 //число полученное математическим путем, подать на группы пинов(8 bit)?!?!?!?!?!?!??!?!?!?
.... portB=0
.... portC= ...
.... portD=0
.... portE= ...
}
for(GRAD=90;GRAD<=180;GRAD++) // 4 четверть
{
U_SPIR=(GRAD*i*i)/(72*n*n);
U_X=U_SPIR*cos(GRAD*3,1416/180);
U_Y=-U_SPIR*sin(GRAD*3,1416/180);
K_X1=(int)U_X*51; // для portB математическое число 0-255
K_Y2=(int)U_Y*51; // для portE математическое число 0-255
.... portA=1 //число полученное математическим путем, подать на группы пинов(8 bit)?!?!?!?!?!?!??!?!?!?
.... portB= ...
.... portC=0
.... portD=0
.... portE= ...
}}
for(i=1;i<=1000;i++)
{
pin1=0;
pin2=1;
pin3=1;
pin4=1;
pin5=1;
pin6=1;
pin7=1;
pin8=1;
pin9= ... // координаты() последней точки K_X1(portB)
pin10= ...
pin11= ...
pin12= ...
pin13= ...
pin14= ...
pin15= ...
pin16= ...
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33= ... // координаты последней точки K_Y2(portE)
pin34= ...
pin35= ...
pin36= ...
pin37= ...
pin38= ...
pin39= ...
pin40= ...
}}
for(i=1;i<=1000;i++)
{
pin1=1;
pin2=1;
pin3=1;
pin4=1;
pin5=1;
pin6=1;
pin7=1;
pin8=1;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;
}
z=0;
C:
delay (60);
z=z+1;
if z==10000 goto D;
else
{
if DigitalRead(START)==LOW goto C;
else
{if pin41=0
{if pin42=0
{if pin43=0
{if pin44=0
{if pin45=0
{delay(1000);
goto E}
else
{n=n5;
m=m5;
goto B;}
}else
{n=n4;
m=m5;
goto B;}
}else
{n=n3;
m=m3;
goto B;}
}else
{n=n2;
m=m2;
goto B;}
}else
{n=n1;
m=m1;
goto B;}
}}
E:
DigitalWrite(LedEr,HIGH);
z=0;
if z==10000 goto D;
else
{
if DigitalRead(START)==LOW goto F;
else
{
if pin41=0
{if pin42=0
{if pin43=0
{if pin44=0
{if pin45=0
{delay(1000);
goto F}
else
{n=n5;
m=m5;
DigitalWrite(LedEr,LOW);
goto B;}
}else
{n=n4;
m=m5;
DigitalWrite(LedEr,LOW);
goto B;}
}else
{n=n3;
m=m3;
DigitalWrite(LedEr,LOW);
goto B;}
}else
{n=n2;
m=m2;
DigitalWrite(LedEr,LOW);
goto B;}
}else
{n=n1;
m=m1;
DigitalWrite(LedEr,LOW);
goto B;}
}
}
D:
for(i=1;i<=1000;i++) // 1ч.завершение
{
pin1=1;
pin2=1;
pin3=1;
pin4=1;
pin5=1;
pin6=1;
pin7=1;
pin8=1;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
for(i=1;i<=1000;i++) // 2ч.завершение
{
pin1=1;
pin2=1;
pin3=0;
pin4=1;
pin5=1;
pin6=0;
pin7=0;
pin8=0;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
for(i=1;i<=1000;i++) // 3ч.завершение
{
pin1=0;
pin2=1;
pin3=0;
pin4=0;
pin5=1;
pin6=0;
pin7=0;
pin8=0;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
for(i=1;i<=1000;i++) // 4ч. завершение
{
pin1=0;
pin2=0;
pin3=0;
pin4=0;
pin5=0;
pin6=0;
pin7=0;
pin8=0;
pin9=0;
pin10=0;
pin11=0;
pin12=0;
pin13=0;
pin14=0;
pin15=0;
pin16=0;
pin17=0;
pin18=0;
pin19=0;
pin20=0;
pin21=0;
pin22=0;
pin23=0;
pin24=0;
pin25=0;
pin26=0;
pin27=0;
pin28=0;
pin29=0;
pin30=0;
pin31=0;
pin32=0;
pin33=0;
pin34=0;
pin35=0;
pin36=0;
pin37=0;
pin38=0;
pin39=0;
pin40=0;}
}
```
Бред какой-то. Что такое ?
pin1=0;
И зачем эту операцию выполнять тысячу раз?
for(i=1;i<=1000;i++)
А перебирать ножки в цикле - влом?
Ребят! не суди строго,я новичок!
pin1=0 // это означает что на этот пин подается 0
почему так много for , потому что поочередно выключаются или включаются выводы которые управляют работой элт
пожалуйста.проявите терпение к новичку.подскажите и помогите плз.спасибо заранее
Это кто вам сказал ?
А перебирать ножки в цикле - влом? ---- что вы имеете ввиду,не понимаю!
эээмммм я)))))) как сделать? я недогоняю!
значит pin1=LOW;(или HIGH)
pin2=LOW (HIGH) и т.д. так?
Поморгайте диодиком для начала !!! По ссылке есть код для этого !!!
int ledPin = 13; // Светодиод подключенный к вход/выходу 13
void setup()
{
pinMode(ledPin, OUTPUT); // устанавливает режим работы - выход
}
void loop()
{
digitalWrite(ledPin, HIGH); // включает светодиод
delay(1000); // ждет секунду
digitalWrite(ledPin, LOW); // выключает светодиод
delay(1000); // ждет секунду
}
При этом ledPin=HIGH и ledPin=LOW ни чем моргать не будут !!!
Во первых - это бред, это означает, что переменной pin1 (где она, кстати, определена?) присваивается значение 0. И остальным тоже, т.е. все ваши переменные pin1-pin40 в результате начинают ссылаться на один и тот же пин - нулевой.
Вопрос был - зачем в одном цикле присваивать пину значение 0 тысячу раз подряд?
Родной - не твое это, займись чем нибудь другим, не мучайся
Начните с самого простого, помаргайте диодом, может придёт понимание , а уж потом беритесь за более сложные задачи.
тысяча раз - это типо столько времени она должна работать(1сек)
20 лет назад на ассемблере так было, а сейчас компиляторы пишет кто попало, ошибок полно в них.
Точно? По приведённому коду, Вашим комментариям, а также по тому, что у Вас уж были темы, но Вы зачем-то сменили ник, у меня создалось впечатление, что Вы либо тролль (что скорее всего), либо идиот. Моё мнение - тролль, косящий под идиота.
И, да, кстати, правильно писать не “помагите” как Вы написали в заголовке, а “памагити”.
какой ник , какие темы! ни какого издевательства с моей стороны нет. я очень хочу осуществить один проект,для этого мне нужен МК который надо определенно запрограммировать , да может и идиот, тугой и еще что то там…я прошу у вас помощи, помочь разобраться!как сделать лучше или проще и т.п.!
Он не идиот, вот чего он хотел:
- Как число полученное математическим путем подать на выходы группы пинов? Пример: числа от 0 до 255 на 8 пинов (8 разрядов)
Задача то несложная, главное понять (прощать необязательно)
да! этот вопрос я задавал через моего друга. так как сам не имел возможности пользоваться интернетом!
В setup пишешь
DDRA=0xFF; //весь порт 8 бит на вывод
В loop пишешь
PORTA=математическое число; // число целиком окажется на выводах порта А
И так для всех нужных портов DDRB DDRC DDRD … PORTB PORTC PORTD …
Спасибо тебе большое за помощь и человеческое отношение! буду пробовать.