Страница 7 из 9
Добавлено: Сб дек 19, 2009 08:24:09
dt_andrew
не знаю как в протеусе у меня в МАКСИ все это пашет замечательно
оттуда и вырезал
Мини-16
Добавлено: Пн дек 21, 2009 09:46:52
alexey_efimow
Добрый день! Собрал я мини-16 - все заработало, но как-то управление медленно работает (валкодер раз 10 надо повернуть до полной громкости и желательно помедленней, с пульта и кнопок также тормозит), как будто кварц должен быть не 8МГц, а 16МГц. Фузы вроде правильно поставил. В чем может быть проблема?
Автору большое спасибо!
Добавлено: Пн дек 21, 2009 10:16:09
dt_andrew
скорей всего мои недоработки
я МИНИ 16 на макетке собирал и особо не отлаживал
интереса тогда у народа не было
дождитесь исправленной прошивки
тока не спрашивайте когда будет
исправлять все проекты разом нехватает времени
так что как только так зразу
Re: Мини-16
Добавлено: Пн дек 21, 2009 15:12:16
Alex_NEMO
alexey_efimow писал(а):Добрый день! Собрал я мини-16 - все заработало, но как-то управление медленно работает (валкодер раз 10 надо повернуть до полной громкости и желательно помедленней, с пульта и кнопок также тормозит), как будто кварц должен быть не 8МГц, а 16МГц. Фузы вроде правильно поставил. В чем может быть проблема?
Могу предположить, что за кол-во щелчков энкодера на "шаг" настройки отвечает предопределенная константа:
#define ENC_FLASH 10
в хидер-файле "pa_mini.h". Попробуй её уменьшить до 6-4, перекомпиль и перепрошей!
Добавлено: Пн дек 21, 2009 15:47:43
dt_andrew
неверно
это константа всего лишь длительнось вспышки светодиода при вращении валкодера
Добавлено: Пн дек 21, 2009 15:58:00
Alex_NEMO
dt_andrew писал(а):это константа всего лишь длительнось вспышки светодиода при вращении валкодера
Спасибо за инфу! Я до 50-100, пожалуй, увеличу, а то их и не видать, фактически!
Андрей, ещё раз СПАСИБО за исходники Ваших проектов и оперативные подсказки! С алгоритмом авто-вычисления дня недели я так и не разобрался, но, зато, добавил в меню настройки часов пунктик настройки дня недели. Использую ячейку 0х03 DS1307, для чтения/записи дня недели, теперь хочу, все-таки алгоритм автовычисления прикрутить!
Добавил упр-е подсветкой LCD. Попробую работу с DS18x20 "прикрутить" на базе преда версии 2, и в далекой перспективе, реализовать будильник хочу... Памяти в Меге 16 ещё около 30% свободно.
Добавлено: Пн дек 21, 2009 17:34:17
dt_andrew
можно пойти и другим путем
собственно я им и шел
я просто нашел в инете алгоритм вычисления дня недели на другом языке (аскаль Си Бэйсик и т.д.)
и просто тупо перевести его на Си
странно почему у Вас не работает
но мне врать и обманывать нет резона сами понимаете
значит есть кака то заковырка
удачи и спасибо
Добавлено: Ср дек 30, 2009 22:52:48
Alex_NEMO
dt_andrew писал(а):но мне врать и обманывать нет резона сами понимаете
Ну, это не сомненно, я никого и не обвиняю.
dt_andrew писал(а):значит есть кака то заковырка
"Заборол" я и эту проблему! За основу взята ссылка из Википедии -
"Алгоритм вычисления дня недели".
Код: Выделить всё
unsigned char DayOfWeek (unsigned char aDay, unsigned char aMonth, unsigned int aYear)
(
rtc_get_date(&aDay, &aMonth, &aYear);
unsigned d;
int a = (14 - aMonth) / 12;
char y = (aYear - a);
int m = aMonth + 12 * a - 2;
d = (7000 + (aDay + y + y / 4 - y / 100 + y / 400 + (31 * m) / 12))
return (d % 7);
)
Далее:
WeekDay = DayOfWeek (&d, &m, &y);
И потом:
Код: Выделить всё
if (WeekDay == 0) { lcd_puts("Ё_."); } // Понедельник
if (WeekDay == 1) { lcd_puts("Bї."); } // Вторник
if (WeekDay == 2) { lcd_puts("Cp."); } // Среда
if (WeekDay == 3) { lcd_puts("<ї."); } // Четверг
if (WeekDay == 4) { lcd_puts("Ёї."); } // Пятница
if (WeekDay == 5) { lcd_puts("C_."); } // Суббота
if (WeekDay == 6) { lcd_puts("Bc."); } // Воскресенье
[/url]
Добавлено: Ср дек 30, 2009 23:07:18
Alex_NEMO
Андрей, еще вопрос - подскажите, пожалуйста, "чайнику"! Имеем 2-е ф-ции записи/чтения EEPROM:
Код: Выделить всё
//*******************************************************************
void Load_EEprom_Param(void)
{
p_tda[VOLUME_MENU_L] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + VOLUME_MENU_L);
if (p_tda[VOLUME_MENU_L] > 63) p_tda[VOLUME_MENU_L] = 1;
p_tda[VOLUME_BALANS] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + VOLUME_BALANS);
if (p_tda[VOLUME_BALANS] > 63) p_tda[VOLUME_BALANS] = 31;
p_tda[BASS_MENU] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + BASS_MENU);
if (p_tda[BASS_MENU] > 15) p_tda[BASS_MENU] = 1;
p_tda[TREBLE_MENU] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + TREBLE_MENU);
if (p_tda[TREBLE_MENU] > 15) p_tda[TREBLE_MENU] = 1;
p_tda[SELECT_MENU] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + SELECT_MENU);
if (p_tda[SELECT_MENU] > 1) p_tda[SELECT_MENU] = 0;
n_select = p_tda[SELECT_MENU];
p_tda[EFFECT_MENU] = eeprom_read_byte((uint8_t*)TDA_PARAM_START_ADR + EFFECT_MENU);
if (p_tda[EFFECT_MENU] > EFFECT_MAX) p_tda[EFFECT_MENU] = 0;
n_effect = p_tda[EFFECT_MENU];
}
//*******************************************************************
void Save_EEprom_Param(void)
{
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + VOLUME_MENU_L,p_tda[VOLUME_MENU_L]);
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + VOLUME_BALANS,p_tda[VOLUME_BALANS]);
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + BASS_MENU + 1,p_tda[BASS_MENU]);
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + TREBLE_MENU + 1,p_tda[TREBLE_MENU]);
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + SELECT_MENU + 1,p_tda[SELECT_MENU]);
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + EFFECT_MENU + 1,p_tda[EFFECT_MENU]);
}
//*******************************************************************
Вопрос - почему здесь (и далее):
eeprom_write_byte((uint8_t*)TDA_PARAM_START_ADR + BASS_MENU + 1,p_tda[BASS_MENU]); прибавляем единицу(
1) к адресу, а до этого - нет? А в процедуре чтения параметров единица вообще нигде не прибавляется? Т.е. чем обусловлено смещение в единицу?
Андрей, еще раз спасибо за Ваши проекты, и удачи в Новом Году!!!
Добавлено: Сб янв 23, 2010 10:59:57
dt_andrew
открытое письмо с информацией из которой надеюсь вы все поймете
Открытое письмо
http://andrew.dtrack.ru/pismo.rar
Всем спасибо
Кто "силен" в WinAVR - помогите "довести"
Добавлено: Вс фев 21, 2010 22:16:19
Alex_NEMO
Привет, коллеги!
Делаю свой вариант преда на базе
MINI-16 http://radiokot.ru/circuit/audio/amplifier/34.
Добавил ряд нужных мне функций, в общем и целом все работает, но есть неск. неприятных моментов, и самоё главное - не могу понять - где "накосячил"! Посему прошу Вашей помощи - у самого уже "крыша едет"!!!
Итак - проблемы:
1. В режиме установки часов/календаря/будильн. нет установки часов и минут, установка работет только с секунд и далее.
2. В режиме "On" в Протеусе - все OK! В "железе" - включаются светодиоды "RC-5" и "On" + "StandBy", хотя должен быть только "On". В чем может быть поблема?(На "сопли" проверял- все ОК!)
Компилю из под последней AVR Studio в WinAVR-20060421(пробовал и WinAVR-20071221).
Схема с моими изменениями и исходники - во вложениях:
Добавлено: Чт фев 25, 2010 18:59:18
m-tech
Hello.
I tried to simulate project min8 in Proteus. But simulation failed because "AVR CPU is out of memory size" error.
Why is this happening ?
Добавлено: Пн мар 08, 2010 02:11:45
Роман батан
Привет всем!
Подскажите пожалуйста, собрал я проект "мини" правда в предварительном уселители вместо неполярных конд. на 4?7vra поставил полярные! вроде все заработало нормально, но потом появился косяк: когда я подключаю усел к ноуту то появляется какое-то посторонее шипение, пореключаю на другой канал он подключен к телефону все чисто играет!!!
Подскажите пожалуйста что-нибудь!!!
Добавлено: Пн мар 08, 2010 08:36:38
dt_andrew
а где сказано то кондеры должны быть неполярными
если ставить пленочные то неважно как
а если електролиты то проходные + к микре аудиопроцессора
на сколько я знаю практически ни на одном ноуте нет линейново выхода звука только на наушники
поэтому шипение есть не что иное как несогласованность усилителей
по входному и выходному сопративлению
чтоб согласовать правильно надо согласующий каскать мутить - мне кажется
Добавлено: Пн мар 08, 2010 17:02:04
Роман батан
так дело в том что, до определенной громкости этого звука нет и вроде сразу все нормально работало, а на телефон я же тоже к выходу наушников подключал?
Добавлено: Вт мар 09, 2010 06:17:29
dt_andrew
схемы выходных усилителей у телефона и у ноута разные
до определенной громкости не слышно возможно из за того что вы их просто не слышите
и еще - это всего лиш предположение мое а не утверждение
возможно и что у микры 1 канал просто битый Вы же читали наверно сколько брака нам подсовывают в магазинах
проверте все каналы на нормальном линейном выходе и попробуйте сменить микру
Re: Проект МИНИ-8 и МИНИ-16.
Добавлено: Вт мар 16, 2010 21:10:46
BIYON_DEGREYV
Здравствуйте. Вот собрал МИНИ-8, это кстати мое первое устройство на МК. Все вроде бы работает но не светятся светодиоды. На выводах 2 и 6 совсем отсутствует что либо. Со схемы были выкинуты бипер и кнопки ,,+'' ,,-'' ,,муть'' и резисторы подтянутые к соответствующим кнопкам. Может ли это быть из-за резисторов?
Re: Проект МИНИ-8 и МИНИ-16.
Добавлено: Вт мар 30, 2010 21:59:29
alexey_efimow
Уважаемый, Андрей! Пожалуйста, по мере возможности, держите в курсе своих разраработок (в плане кода).
Re: Проект МИНИ-8 и МИНИ-16.
Добавлено: Вс окт 31, 2010 18:59:24
sashok17
Всем доброго вечера! Вот и я загорелся сделать МИНИ-8, но печатку разводил сам, для себя. Не мог ли кто нибудь её проверить на ошибки? Был бы очень признателен!

Печатку в лайоте прилагаю. Сделал печатку пока что только самой процессорной части. В неё же вживил стабилизатор на 5 вольт.
Re: Проект МИНИ-8 и МИНИ-16.
Добавлено: Вт ноя 02, 2010 19:18:59
sashok17
Сделал печатку аудиопроцессора под "большие" конденсаторы К73-17