Страница 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