Всем привет! Я начинающий и наверно до меня очень туго доходит....ведь уже пролистал не одну книгу по прошраммированию, но возникают вопросы,чтоб проверить в железе ,а спросить нет у кого...Если позволите Ув. Коты-программисты помучаю вопросами Вас. 1.Как мигать светодиодом с разной частотой(например 1,2,3,4,5,6,7 Гц) в зависимости от нажимаемой кнопки(1из7),с использованием таймера1 в аттини2313 и кварцем 4MHz???
Какой режим таймера выбрать,какой предделитель установить и т.д.
CS16AMX, честно говоря, не видел... Можете быть первооткрывателем. Как бы я сделал - каждый экран делится на массив кнопок -с указателями на текст каждой, массив указателей на функцию и переходы на другие экраны. При инициализации заполняется нужным. В цикле анализ координат - куда ляпнули пальцем -и анализ текущего указателя на структуру, там стандартно все, как в обычном меню.
самое что фиговое что на завершение меню есть 2 дня иначе пролетаю есть образцовый код, но на немного другой диплейи там меню сложнее ,правдо непонятно ,как мне применить функцию "brake " куда в условии ставить чтоб в общий цикл выйти? неразу непользовался ,но на деле куда бы не втыкал ,программа 1 шаг выполняет и зависает в процессе отчищения
Вложения:
Комментарий к файлу: поясните как функция работает? CarPC.c [31.54 KiB]
Скачиваний: 291
Всем здрасьте! Хочу опять задать,наверно не совсем грамотный вопрос по поводу массивов и их чтения. Я уже как–то спрашивал,как сделать что–бы массив читался с нужного элемента. Мне были даны несколько примеров,за что премного благодарен. Но боюсь,что они мне не подходят т.к. в этих случаях число записанное в еер было известным. А как быть если это число неизвестно? Т.е. мы знаем,что в еер записано что–то из массива,а что именно,не знаем... Подскажите пожалуста,а??? Спасибо
Простое применение чтения массива––реле времени с 7 сегментным 3х разрядным индикатором с обратным отсчетом. Время начала отсчета записывается в еер. Сейчас,к примеру,установлено 2.00,позже нам вдруг потребовалось установить на 3.00,а еще позже нам захочется поставить на 5.00. Т.е. числа записываемые в еер могут быть любыми в пределах массива. Ведь память еер позволяет записать число не программно,а через нажатие кнопки. А когда мы пишем прошивку,мы же не знаем,какое число будет записываться в переменную еер,мы только знаем что оно будет присутствовать в массиве. Вот как–то так...
какой массив? если записывается одно число, это число и читай ну а если нужен массив, так при записи определи под каким номером его сохранить, под этим же номером ты его и считаешь
покури основы
_________________ Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
Так ведь запись в еер происходит НЕ В ПРОШИВКЕ!!! А В ПРОЦЕССЕ ЭКСПЛУАТАЦИИ ДЕВАЙСА ОТ НАЖАТИЯ КНОПКИ.От нажатия кнопки номер элемента как указать тогда? a-переменная еер; if(PIND .0== 1)a=PORTB; ПОРТВ прикручен к сегментам индикатора и при нажатии кнопки отображающееся на индикаторе записывается в еер. И с этого места нужно потом читать массив(один раз).
Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
Добавлено: Ср фев 06, 2013 14:22:42
Модератор
Карма: 90
Рейтинг сообщений: 1443
Зарегистрирован: Чт мар 18, 2010 23:09:57 Сообщений: 4613 Откуда: Планета Земля
Рейтинг сообщения:0 Медали: 1
eduardo, задайте чётки, внятный и короткий вопрос. А не кучу никому непонятного текста, в котором каша из Ваших мыслей и желаний. Начали с массивов, закончили индикаторами и еепромом. И всё это в одном вопросе. Ваши вопросы сейчас, среди Вашего текста, звучат - "Что мне делать ?" и "Как мне быть ?"... Как можно на них ответить ?
Так ведь запись в еер происходит НЕ В ПРОШИВКЕ!!! А В ПРОЦЕССЕ ЭКСПЛУАТАЦИИ ДЕВАЙСА ОТ НАЖАТИЯ КНОПКИ..
А как происходит запись в массив расположенный в ОЗУ? Вы там адреса тоже знаете? Вы же не на асме пишете, компилятор сам все сделает. А вообще все видно по еепром - запустите тот же протеус и посмотрите как компилятор переменные eeprom располагает. Увидите что по порядку.
_________________ Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
Добавлено: Ср фев 06, 2013 15:29:29
Друг Кота
Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30 Сообщений: 3258 Откуда: Украина
Рейтинг сообщения:0
А ведь неспроста ещё в школьном курсе "Основы программирования" начинают изучать графическое представление алгоритма в виде прямоугольничков с действиями и ромбиков с условиями ветвления. Это чтобы человек умел выстраивать свои мысли в виде связанных и понятных окружающим логических цепочек вместо непонятной "каши в голове".
Я, например, не понял саму основу функционала устройства. Зачем считывать состояние семисегментного индикатора, да ещё и трёх разрядов? Не проще ли запоминать саму переменную, с которой эти цифры формируются. А они, как я понял, формируются именно в этом контроллере, так как считывается PORTB, а не PINB.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения