теперь осталось тело функции main собрать воедино, только смотреть внимательно, чтоб переменные друг с другом не конфликтовали
обрати внимание на
Код:
while(1) { .... }
- это бесконечный цикл, необходимый для того чтоб микроконтроллер не отработал один раз и встал, а выполнял работу постоянно, естественно две такие конструкции не могут выполняться, потому что из первой выйти уже нельзя
ну а все что вне этого цикла выполняется естественно 1 раз - это как бы подготовительные процедуры, которые нужны при старте
т.е. тебе нужно соединить все что вне while и все что внутри while
_________________ Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
народ кто нить пробывал реализовать через юарт слив данных с eeprom 24с1024 через TeraTerm терминал через x-modem. если кто делал выложите пожалуйста код.
Подскажите пожалста как сделать так,чтобы массив читался с определенного элемента? Ну к примеру,записано в еепром какое-то число и нужно чтобы массив читался с этого числа. Естественно такое же число есть и среди элементов массива. А то я начинающий,неумеющий и не знающий как это сделать. Заранее спасибо.
unsigned char flag = 0; //флаг, при нахождении нужного элемента устанавливается в 1 for(unsigned char i = 0; i < arraysize; i++) { if(array[i] == etalon) flag = 1; if(flag == 1) readArray; }
странная конструкция, понятно что она делает, но не понятно как это можно употребить.Я бы лучше сделал функцию, которая возвращает позицию, где найден символ.Хотя, конечно, возможно мой скудный опыт не позволяет в полной мере оценить преимущества вашего метода.
имеется число(я назвал его эталон), задача: найти в массиве первое попавшееся число равное эталону и начиная с этого места читать массив флаг нужен для того чтобы отследить что нужный элемент мы нашли
пробегаем по массиву, сравниваем с эталоном и проверяем флаг, если элемент массива не совпадает и флаг не установлен - идем дальше, если совпало - устанавливаем флаг совпадения, сразу после этого проверяем флаг, если он установлен, значит начиная с этой позиции будем читать(условно обозначил эту процедуру как readArray)
без флага программа будет только отлавливать числа, которые совпадают а остальные пропускать
такая конструкция позволяет использовать только один цикл и для поиска позиции и для чтения(или других процедур, например модификации или стирания)
вариант с возвращением позиции должен состоять из еще одного перебора массива, в котором как раз будет производиться это самое чтение
_________________ Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
Всем привет! В программировании я полный ноль,только светодиодами моргать умею, но хочется большего( освоить таймеры ,формулы,переменные, массивы...) Подскажите с чего начать осваивание CVAVR и Мк, или может полезную литературу для начала.
Всем привет! В программировании я полный ноль,только светодиодами моргать умею, но хочется большего( освоить таймеры ,формулы,переменные, массивы...) Подскажите с чего начать осваивание CVAVR и Мк, или может полезную литературу для начала.
Спасибо за быстрый ответ! Но хотелось бы литературу в книжных форматах и проверенную на которых уже выучились люди(в смысле программисты).... Главное ,чтоб доступно и понятно обьяснялось,по порядку...
ИМХО это нечто безобразное, во первых привязка в СodeVision и VMLAB во-вторых никакой последовательности(в первом уроке уже предлаают копаться в ШИМ и USART чужого кода) не говоря уже о ляпсистом оформлении и наличию ошибок
кстати хорошая оговорка на сайте
Цитата:
123avr.COM ( то что вы сейчас читаете) - втупление и первые эксперементы
я бы посоветовал просто почитать книги по С, для понимания таких вещей как циклы, массивы, и прочие конструкции, а потом применять это уже к конкретному микроконтроллеру
_________________ Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения