Самодельный передатчик (часть 1)
Перепрошил, все появилось, поюзаем, поищим глюки, но вроде бы глюки кончились.
Посмотри какие кондёры стоят до и после Крена 5В. Нужно не более 10 мк ставить иначе слетать ЕЕПРОМ будет. У меня так же слетал, когда поставил кондёры по 10 мк, ЕЕПРОМ не слетает, вот уже больше года.
Более свежих исходников не найдёшь. Есть только те которые с выше описанными глюками. Те кто знает СИ, и собирал для себя этот кодер, исправлял ошиби, но исправленя не выкладывал на форум.
Aleksey_Gorelikov, если не трудно помогите с исправлением ошибок. Вы пишите что там ничего сложного нет, покажите что поправить, мы поправим. Я СИ не знаю вообще, по этому я не ориентируюсь в исходниках, ни как. Так бы сам исправил, и выложил бы на форум.
Слышал про глюки при необнулённом EEPROMе. Может быть стоит включить в процедуру калибровки обнуление EEPROM при первом включении?
при программировании надо просто не забывать прошивать еепром нулями…
Слышал про глюки при необнулённом EEPROMе. Может быть стоит включить в процедуру калибровки обнуление EEPROM при первом включении?
Она при первом включении есть. Слетает в процессе эксплуатации. Бод, монитор питания и кондеры в стабилизаторе - должны помоч. Либо что-то из этих мер, либо их комбинации. 😉
Aleksey_Gorelikov, если не трудно помогите с исправлением ошибок. Вы пишите что там ничего сложного нет, покажите что поправить, мы поправим. Я СИ не знаю вообще, по этому я не ориентируюсь в исходниках, ни как. Так бы сам исправил, и выложил бы на форум.
Я довольно давно отошел от этой версии кодера. Точнее он поэтапно переписался ( да и со временем еще дописывается) заново. Серьезная ошибка была только одна, с индексом. Проявлялась - когда какой-то из каналов работал от середины и в одну сторону - нормально, в другую сторону - или стоял или “кое-как” или от другой ручки. Я указывал на нее и в форуме и Евгению. Вроде бы это было в версии 1. Версия 1.2, насколько я помню, от предъидущей отличалась этой исправленной ошибкой и замедленными в 2 раза тримерами.
Я могу помоч исправить, если вспомню где. Дайте ссылку на исходники фокуса - я гляну. Просто лень листать форум да и выкладывали их 10 раз все кому не лень, возможно с новыми ошибками…
Искать сейчас последнюю версию, замучаешься. Проще выложить заново. Это точно самая последняя из работающих версий. Как раз у этой версии тримера замедленны в два раза.
Все пользователи будут очень благодорны вам, если вы исправите ошибки, какие помните, и какие сможете найти. Только не добаляйте ничего лишнего, я имею в виду новых функций, замена экрана, потому как эта версия будет заливаться в старое железо. Пусть всё останется как есть, только без ошибок.
Заранее спасибо!
Искать сейчас последнюю версию, замучаешься. Проще выложить заново. Это точно самая последняя из работающих версий. Как раз у этой версии тримера замедленны в два раза.
Все пользователи будут очень благодорны вам, если вы исправите ошибки, какие помните, и какие сможете найти. Только не добаляйте ничего лишнего, я имею в виду новых функций, замена экрана, потому как эта версия будет заливаться в старое железо. Пусть всё останется как есть, только без ошибок.
Заранее спасибо!
Посмотрю не раньше вторника. Уезжаю в коммандировку.
Посмотрю не раньше вторника. Уезжаю в коммандировку.
Успел пораньше:
Успел пораньше:
Спасибо !!!
Пошел перепрошиваться.
Все работает, тока проверил def.c , все заработало, Огромное спасибо
Успел пораньше:
if (U_bat<800)
{
PORTG|=0x4;
delay_ms(20);
PORTG&=0xFB;
delay_ms(20);
куда это вставить чтобы работало 😦 .Пробывал в math.h вставлять , при сробатывание вешает пульт.
Ты куда это вставлял?
В начало что ли?
Тем более если фигурная скобка открылась, то она должна закрыться.
Вот это:
if (U_bat<880) напряжение включения таймера
{
PORTG|=0x4;
delay_ms(20);
PORTG&=0xFB;
delay_ms(20);
};
Вставляется в файл math.C после надписи //работаем с таймером;
Что там сложного?
Тем более в исходниках нет файла с расширением *.h
Ты куда это вставлял?
В начало что ли?
Тем более если фигурная скобка открылась, то она должна закрыться.
Вот это:
if (U_bat<880) напряжение включения таймера
{
PORTG|=0x4;
delay_ms(20);
PORTG&=0xFB;
delay_ms(20);
};Вставляется в файл math.C после надписи //работаем с таймером;
Что там сложного?
Тем более в исходниках нет файла с расширением *.h
Это всё не работает 😦 ,при вкл пишалки начинают дёргатся машинки всех каналов(из за этого уронил самик) 😦
встовлял в math.с
Дёргаются? Я не пробовал в момент пищания передатчика, включать приёмник с машинками. Я и не думал что так может быть. Попробую завтра. Может быть у тебя что то с аккумами, дохлые сильно?
Ниже мой скрин-сейвер, куда я вставлял эту часть программы.
Дёргаются? Я не пробовал в момент пищания передатчика, включать приёмник с машинками. Я и не думал что так может быть. Попробую завтра. Может быть у тебя что то с аккумами, дохлые сильно?
Ниже мой скрин-сейвер, куда я вставлял эту часть программы.
Да. Каналы действительно портятся при срабатывании звуковой сигнализации разряда батареи передатчика. Проверял на симуляторе.
Прикинте, правда дёргаются! Они как бы зависают и не двигаются.
Но это я пробовал делать на версии с варнингами. Новы кодевижн ещё не скачал.
Может быть на версии с исправленными ошибками будет работать?
Aleksey_Gorelikov, объясни почему дёргаются машинки когда пищалка работает? Как от этого избавиться?
Они дергаются из-за использования delay, в этот момент не срабатываю прерывания таймеров, сиречь не идут сигналы на ВЧ часть
Aleksey_Gorelikov, объясни почему дёргаются машинки когда пищалка работает? Как от этого избавиться?
Я писал, что этот кусок надо вставлять куда угодно, только не в прерывание. Процедура calc() как раз и входит в прерывание ( вызывается в прерывании!). Вот почему машинки дергаются. Прерывание при выполнении delay() затягивается, в итоге и разваливается весь ппм пакет.
Вставляйте пищалку в coder.c d main(), внутри последнего, бесконечного цыкла, там где trim_sound(); и menu(); вызываются, или в одну из этих подпрограмм.
Доброго времени суток.
Мож кто поможет 😒 если не сложно последнюю версию под экран Nokia 3310 адаптировать, а то все экраны 3410 которые доставал не хотят работать что только не пробовал 😃 бесполезно, а 3310 завелся почти сразу, но на него все не помещается, приходится только догадываться что там нарисованно. 😢 поможите плз…
Так это Andrej100, посоветовал эту подпрограмму туда вставлять, и сам же попался на этом. Значит то же СИ не знает, как и я… Знал бы СИ, то не вставлял бы эту подпрограмму куда попало.
Я не заню СИ, потому и спрашиваю, куда точно всталять. Потому как для меня прерывания и безконечный цикл, ничего не значат.
Алексей спасибо за подсказку.
Вставляйте пищалку в coder.c d main(), внутри последнего, бесконечного цыкла, там где trim_sound(); и menu(); вызываются, или в одну из этих подпрограмм.
Значит вот сюда:
Файл Coder.c
Calc(); //первоначальный расcчет;
CHcalc(0);
TIMSK=0x10;
#asm(“sei”)LED1=0;
while (1)
{trim_sound();
menu();
if ((U_bat<1000)&&(U_bat>970)) // напряжение включения/выключения таймера
{
PORTG|=0x4;
delay_ms(20);
PORTG&=0xFB;
delay_ms(20);
};};
}
Правильно?
У меня 3 Li-po стоят, поэтому пищать будет на 10В, и выключаться на 9,7В.
Да, всё правильно я предположил. Сделал как выше - работает, сигнализирует и при этом управление остаётся в норме.
Andrej100, можешь сделать так же, будет работать.