Програмирование pic на СИ.
Re: Програмирование pic на СИ.
ТАк,) господа коты, спасибо за долготерпение.
Далее примерно следующее. Поигрался скоростями - без толку. Т.е 80% цельных пакетов нормально проходят, 20 глючат.
Прикрутил в ПИКе условие, что если ошибка в пакете, то он не просто отбрасывается, а эхо-зеркалируется назад.
Получается, что в посыле если он глючный, всегда пропадает 1-2 ПЕРВЫХ байта. а иногда, изредка, вообще пакет пролетает не вызвав прерывания по приему. И никогда не теряются хвосты (не обрезаются интервалом тишины)
03 01 00 00 55//то, что должно быть(я посылаю)
01 00 00 55 00(прилетает эхом)
55 00 00 00 00
00 00 55 00 00 ///3 варианта глюков со "смещением"
ИМХО FT-шка глючит...
Далее примерно следующее. Поигрался скоростями - без толку. Т.е 80% цельных пакетов нормально проходят, 20 глючат.
Прикрутил в ПИКе условие, что если ошибка в пакете, то он не просто отбрасывается, а эхо-зеркалируется назад.
Получается, что в посыле если он глючный, всегда пропадает 1-2 ПЕРВЫХ байта. а иногда, изредка, вообще пакет пролетает не вызвав прерывания по приему. И никогда не теряются хвосты (не обрезаются интервалом тишины)
03 01 00 00 55//то, что должно быть(я посылаю)
01 00 00 55 00(прилетает эхом)
55 00 00 00 00
00 00 55 00 00 ///3 варианта глюков со "смещением"
ИМХО FT-шка глючит...
- Реклама
Re: Програмирование pic на СИ.
Как это знакомо! Отличное оправдание собственной криворукости.vinni_puh писал(а):...ИМХО FT-шка глючит...
- Roman Venom
- Сверлит текстолит когтями
- Сообщения: 1135
- Зарегистрирован: Сб июл 11, 2009 18:42:21
- Откуда: Украина, г.Николаев
Re: Програмирование pic на СИ.
vinni_puh писал(а):ТАк,) господа коты, спасибо за долготерпение.
Далее примерно следующее. Поигрался скоростями - без толку. Т.е 80% цельных пакетов нормально проходят, 20 глючат.
Прикрутил в ПИКе условие, что если ошибка в пакете, то он не просто отбрасывается, а эхо-зеркалируется назад.
Получается, что в посыле если он глючный, всегда пропадает 1-2 ПЕРВЫХ байта. а иногда, изредка, вообще пакет пролетает не вызвав прерывания по приему. И никогда не теряются хвосты (не обрезаются интервалом тишины)
03 01 00 00 55//то, что должно быть(я посылаю)
01 00 00 55 00(прилетает эхом)
55 00 00 00 00
00 00 55 00 00 ///3 варианта глюков со "смещением"
ИМХО FT-шка глючит...
Накосячил ты с подключением/питанием и ещё ХЗ с чем. FTшка тут ни при чём. Можешь её убрать, подключить физический com-port/USB to com переходник и будет такая же бука.
Так... А у меня тут творится неведомая фигня с демо-проектом DEE, который можно скачать с сайта Microchip.
Выскакивает ошибка синтаксиса, причём в библиотечном .s файле.
PIC24FJ256GB206, MPLAB X IDE 2.35, XC16.
В описалове они просят MPLAB 8 и C30... но это как-то кисло совсем уже. Надеюсь, дело не в этом.
- Вложения
-
- Dee_sample.png
- (102.16 КБ) 576 скачиваний
-
- DEEEmulation (1).zip
- (312.55 КБ) 174 скачивания
Успех - императив!
Re: Програмирование pic на СИ.
Именно в этом... Вот из-за этого постоянного бардака нормальные давно уже свалили с ПИКа... Там всё уже без конца и края...Roman Venom писал(а): Выскакивает ошибка синтаксиса, причём в библиотечном .s файле.
PIC24FJ256GB206, MPLAB X IDE 2.35, XC16.
В описалове они просят MPLAB 8 и C30... но это как-то кисло совсем уже. Надеюсь, дело не в этом.
"Я не даю готовых решений, я заставляю думать!"(С)
- Roman Venom
- Сверлит текстолит когтями
- Сообщения: 1135
- Зарегистрирован: Сб июл 11, 2009 18:42:21
- Откуда: Украина, г.Николаев
Re: Програмирование pic на СИ.
HHIMERA
Куча времени тратится просто впустую, когда любишься с подключением файликов и прочим... А так, с появлением harmony и code configurator пики стали куда более удобными в разработке. Ещё бы они с библиотеками своими разобрались:).
Куча времени тратится просто впустую, когда любишься с подключением файликов и прочим... А так, с появлением harmony и code configurator пики стали куда более удобными в разработке. Ещё бы они с библиотеками своими разобрались:).
Успех - императив!
- Реклама
Re: Програмирование pic на СИ.
Всё это блеф... Когда это одноразовый колхоз-навоз... это одно... А когда эта эпопея длится уже не один год... то появляется желание просто покинуть этот ПИК-цирк... что многие и сделали... Не могу сказать что на других архитектурах намного лучше... в последнее время... разбираться с либами всё равно приходится... но и не настолько феерически безалаберно, как на ПИКах...
Можно конечно не верить и поднимать знамя полка... идти в атаку... кричать "ура"... Но в разделе ПИКов уже и отвечать толком некому... вот так всё запущено...
Можно конечно не верить и поднимать знамя полка... идти в атаку... кричать "ура"... Но в разделе ПИКов уже и отвечать толком некому... вот так всё запущено...
"Я не даю готовых решений, я заставляю думать!"(С)
Re: Програмирование pic на СИ.
Спасибо конечно за критику, но ведь я у вас не работаю, и экзамены не сдаю, правда?
А с проблемой разобрался... В одном месте else был неуместен, требовалось другое условие.
Что-ж, с ПИКА, FT-шки подозрения сняты, а находить собственные дефекты в коде всегда приятно.
А с проблемой разобрался... В одном месте else был неуместен, требовалось другое условие.
Что-ж, с ПИКА, FT-шки подозрения сняты, а находить собственные дефекты в коде всегда приятно.
- КРАМ
- Друг Кота
- Сообщения: 25277
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Програмирование pic на СИ.
На Вашем уровне они АПРИОРИ будут ТОЛЬКО собственные.vinni_puh писал(а):находить собственные дефекты в коде всегда приятно.
Сарказм вызывают Ваши постоянные подозрения на ЧУЖИЕ баги...
Прицеплен демо для 8-битного С18...Roman Venom писал(а): Так... А у меня тут творится неведомая фигня с демо-проектом DEE, который можно скачать с сайта Microchip.
Выскакивает ошибка синтаксиса, причём в библиотечном .s файле.
PIC24FJ256GB206, MPLAB X IDE 2.35, XC16.
В описалове они просят MPLAB 8 и C30... но это как-то кисло совсем уже. Надеюсь, дело не в этом.
Причем тут С30 и 16 разрядные ПИКи?
Собственно написать эмуляцию EEPROM можно и без библиотеки. Там все элементарно.
Скользящий в выделенном пространстве флеша массив EEPROM.
Каждая новая запись происходит со смещением на длину эмулируемого EEPROM.
- Roman Venom
- Сверлит текстолит когтями
- Сообщения: 1135
- Зарегистрирован: Сб июл 11, 2009 18:42:21
- Откуда: Украина, г.Николаев
Re: Програмирование pic на СИ.
КРАМ
Прошу прощения, кинул не тот пример. Он же существует и под С30.
http://www.microchip.com/wwwAppNotes/Ap ... e=en530593
Ну, если не получится пользоваться этими библиотеками - то придётся свои сделать. Просто это время всё. Пользоваться ПЗУ это всего лишь кусочек проекта.
Прошу прощения, кинул не тот пример. Он же существует и под С30.
http://www.microchip.com/wwwAppNotes/Ap ... e=en530593
Ну, если не получится пользоваться этими библиотеками - то придётся свои сделать. Просто это время всё. Пользоваться ПЗУ это всего лишь кусочек проекта.
Успех - императив!
- КРАМ
- Друг Кота
- Сообщения: 25277
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Програмирование pic на СИ.
Времени там много не нужно.
Кроме того, библиотеки под ХС16 не переписывались. Если компилем пользоваться интуитивно, то всякий раз будут вылезать такие ошибки.
Я пишу на С30 как раз для того, чтобы не вникать в нюансы отличий XC16 и С30. (А чаще вовсе на АСМ30). Тем более, что на MPLAB X я так и не перешел. Не нравится.
ЗЫ. В Кейле тоже полно опечаток в референсных кодах.
Кроме того, библиотеки под ХС16 не переписывались. Если компилем пользоваться интуитивно, то всякий раз будут вылезать такие ошибки.
Я пишу на С30 как раз для того, чтобы не вникать в нюансы отличий XC16 и С30. (А чаще вовсе на АСМ30). Тем более, что на MPLAB X я так и не перешел. Не нравится.
ЗЫ. В Кейле тоже полно опечаток в референсных кодах.
Re: Програмирование pic на СИ.
Мне тоже... тем более к тому времени я уже с ПИков ушёл... но С30 ещё на компе болтается...КРАМ писал(а): Я пишу на С30 как раз для того, чтобы не вникать в нюансы отличий XC16 и С30. (А чаще вовсе на АСМ30). Тем более, что на MPLAB X я так и не перешел. Не нравится.
А где их нет??? Но это же такая мелочь...ЗЫ. В Кейле тоже полно опечаток в референсных кодах.
"Я не даю готовых решений, я заставляю думать!"(С)
- КРАМ
- Друг Кота
- Сообщения: 25277
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Програмирование pic на СИ.
Действительно мелочь. Ровно такая же, как и в ХС16.
Просто время приходится терять на всякую хню...
Просто время приходится терять на всякую хню...
Re: Програмирование pic на СИ.
В любой сфере... будь то строительство... или выращивание помидор... или резьба по дереву... приходится тратить время на "хню"...
И в скрипках Страдивари тоже есть "хня"... а вот до сих пор повторить не могут... А времени на это... так уже вообще потрачено не меряно...
Вся наша жизнь... сплошная "хня"...
И в скрипках Страдивари тоже есть "хня"... а вот до сих пор повторить не могут... А времени на это... так уже вообще потрачено не меряно...
Вся наша жизнь... сплошная "хня"...
"Я не даю готовых решений, я заставляю думать!"(С)
- Roman Venom
- Сверлит текстолит когтями
- Сообщения: 1135
- Зарегистрирован: Сб июл 11, 2009 18:42:21
- Откуда: Украина, г.Николаев
Re: Програмирование pic на СИ.
Скомпилилось под XC16
. Нужно было указать include lib директорию компилятора C30. К слову c библиотеками peripheral_P24F , которые можно скачать дополнительно под XC16 - такая же история. Всё равно ставим С30, и в свойствах проекта XC16 указываем путь к С30/gld.
Ну а сам компилятор, к слову, XC лучше хотя бы потому, что под него написаны все новые mla. C30 выдаём там тучу ошибок.
P.S. Всех с наступившим и Рождеством. Чтобы всё у всех компилировалось!
Ну а сам компилятор, к слову, XC лучше хотя бы потому, что под него написаны все новые mla. C30 выдаём там тучу ошибок.
P.S. Всех с наступившим и Рождеством. Чтобы всё у всех компилировалось!
Успех - императив!
-
Darkmaster
- Встал на лапы
- Сообщения: 137
- Зарегистрирован: Вс окт 11, 2009 09:54:59
- Откуда: Пенза
Re: Програмирование pic на СИ.
Всем доброго))
Значит появилась зараза ,от которой пока не удается избавиться- А именно засветка светодиодных индикаторов (в виде шкал они у меня).
Индикаторы с ОА,на анодах транзисторные ключи,ключи и катоды управляются с PIC16F676,через сдвиговые регистры(см.схему)
МК работает на частоте 4МГц,индикация в прерывании по TMR0,предделитель сейчас 1:8
строка " case 1: Sendbyte(FILTRE_NULL); break;" пишет в регистры значение для их гашения...но слабо помогло ,мучаюсь с этой засветкой ,надеюсь не придется переделывать платку для еще одного регистра или еще чего..
Буду признателен за советы )))
з.ы. МК помимо индикации занимается измерениями и сравнениями
Значит появилась зараза ,от которой пока не удается избавиться- А именно засветка светодиодных индикаторов (в виде шкал они у меня).
Индикаторы с ОА,на анодах транзисторные ключи,ключи и катоды управляются с PIC16F676,через сдвиговые регистры(см.схему)
МК работает на частоте 4МГц,индикация в прерывании по TMR0,предделитель сейчас 1:8
Код: Выделить всё
void Indikation (void) //Func fin-stage send
{
switch(indic_count)
{
case 0: Sendbyte(FILTRE1); break;
case 1: Sendbyte(FILTRE_NULL); break;
case 2: Sendbyte(FILTRE2); break;
case 3: Sendbyte(FILTRE_NULL); break;
case 4: Sendbyte(FILTRE3); break;
case 5: Sendbyte(FILTRE_NULL); break;
case 6: Sendbyte(FILTRE4); break;
case 7: Sendbyte(FILTRE_NULL); break;
case 8: Sendbyte(FILTRE5); break;
case 9: Sendbyte(FILTRE_NULL); break;
default: break;
}
}Буду признателен за советы )))
з.ы. МК помимо индикации занимается измерениями и сравнениями
- Вложения
-
- Analyzer.JPG
- (152.85 КБ) 382 скачивания
Интересная,однако,штука
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Програмирование pic на СИ.
Проблема, вероятнее всего программная. Выкладывайте весь код.
И ещё, немного не понятно по схеме. На ней светодиодная матрица 8x8, а Вы говорите про шкалу. По подробнее опишите, лучше с фоткой, заодно будет видно что за засветы у Вас происходят.
И ещё, немного не понятно по схеме. На ней светодиодная матрица 8x8, а Вы говорите про шкалу. По подробнее опишите, лучше с фоткой, заодно будет видно что за засветы у Вас происходят.
Re: Програмирование pic на СИ.
И можно поменьше "букаф"
:
Или так:
В случае необходимости нужный case всегда можно добавить.
Код: Выделить всё
void Indikation (void) //Func fin-stage send
{
switch(indic_count)
{
case 0: Sendbyte(FILTRE1); break;
case 2: Sendbyte(FILTRE2); break;
case 4: Sendbyte(FILTRE3); break;
case 6: Sendbyte(FILTRE4); break;
case 8: Sendbyte(FILTRE5); break;
default:Sendbyte(FILTRE_NULL); break;
}
}
Код: Выделить всё
void Indikation (void) //Func fin-stage send
{
unsigned tmp = FILTRE_NULL; // Не знаю, как определены FILTRE_NULL и FILTREx, для выбора нужного типа
switch(indic_count)
{
case 0: tmp = FILTRE1 ; break;
case 2: tmp = FILTRE2 ; break;
case 4: tmp = FILTRE3 ; break;
case 6: tmp = FILTRE4 ; break;
case 8: tmp = FILTRE5 ; break;
default: break;
}
Sendbyte( tmp );
}
-
Darkmaster
- Встал на лапы
- Сообщения: 137
- Зарегистрирован: Вс окт 11, 2009 09:54:59
- Откуда: Пенза
Re: Програмирование pic на СИ.
shindax
Alex
да меня меньше буков нет.
Да.Это я не точно указал.Управление матрицей 5на10.
5столбцов и десять строк .
Добавлю кода вечером (по Москве).
Очень даже ,что проблема программная.Из за скорости работы транзисторных ключей сие происходит.(подсвечиваются все индикаторы .при обычном свете можно увидеть.а темноте и подавно)Менее чем впол-накала светятся индикаторы,будто индикатор еще "хранит" предыдущий/ие результат..и это именно с ключами.На одних регистрах все норм было.
Alex
да меня меньше буков нет.
Да.Это я не точно указал.Управление матрицей 5на10.
5столбцов и десять строк .
Добавлю кода вечером (по Москве).
Очень даже ,что проблема программная.Из за скорости работы транзисторных ключей сие происходит.(подсвечиваются все индикаторы .при обычном свете можно увидеть.а темноте и подавно)Менее чем впол-накала светятся индикаторы,будто индикатор еще "хранит" предыдущий/ие результат..и это именно с ключами.На одних регистрах все норм было.
- Вложения
-
- Project676.rar
- Код индикации
- (2.34 КБ) 157 скачиваний
Интересная,однако,штука
Re: Програмирование pic на СИ.
Между засветкой предыдущего и следующего ряда( столбца ), должен быть момент полного гашения, тогда никаких засветок не будет.
-
Darkmaster
- Встал на лапы
- Сообщения: 137
- Зарегистрирован: Вс окт 11, 2009 09:54:59
- Откуда: Пенза
Re: Програмирование pic на СИ.
само собой .строкаshindax писал(а): должен быть момент полного гашения
Sendbyte(FILTRE_NULL)
как раз отправляет в регистры нули (ну или единицы .)для гашения.ее (в коде видно) я и добавил в функции вывода.Как раз между выводами значении на индикаторы..Да вот не помогло однако..может нужно большее время ? (время в течении которого все индикаторы погашены)
по коду частота вывода и гашения равны..
Вынести процесс Гашения индикаторов в типа обособленную функцию?и увеличить частоту обновления инфы на индикаторах?..
Интересно сколько держать их в погашенном состоянии..
Интересная,однако,штука


