Програмирование pic на СИ.

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Коэффициент 1,5. Есть еще исходник на асаблере под это камень.
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

А с ними что не так?
Реклама
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Тоже ругаеться, какието ошибки.
Вложения
40_629.asm
(5.7 КБ) 284 скачивания
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Не ругается
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Выдает ошибку nbproject/Makefile-default.mk:107: recipe for target 'build/default/production/40_629.o' failed
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Я тебе НЕХ скомпилировал для прошивки МК. Что ещё нужно?
Реклама
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

А можете скомпилировать этот файл, здесь я поменял множитель

Добавлено after 6 minutes 4 seconds:
Большое всем спасибо, извините за беспокойствие.
Вложения
40_629.asm
(5.7 КБ) 292 скачивания
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Нет не могу. 1.5 асм в таком виде не примет.
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Ну тогда 2.
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Два
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Большое спасибо.
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

igorua27, переделал исходник под XC8 бесплатную версию. Множитель 1.5, но целочисленно. Сначала делим на 2, потом прибавляется треть. Так чуть погрешность будет, но собирается на бесплатной XC8:

Добавлено after 21 minute 3 seconds:
Писал еще аналогичное для PIC12F683. Там уже с коэф. в реальных числах и с возможностью задавать коэф. подстроечным резистором от 1.0 до 2.0 плавно. Там ресурсов по-больше - влазиет и с бесплатным XC8.
Вложения
radiokot-pic12f675-proj.X.production.hex
(1.98 КБ) 268 скачиваний
main.c
(5.12 КБ) 295 скачиваний
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Версия без float.
Кэф = 1.5
taho_675.zip
(184.85 КБ) 271 скачивание
Контактная информация:
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

Аlex, у вас всё-равно объявления конфиг слова, ISR и прочего - в стиле HI-TECH. Их бесплатная версия XC8 не понимает. Я в варианте выше переписал в стиле нативном для xc8.
И еще per_tmp умножая на 10 - переполнения не может возникать там?
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

[uquote="NStorm",url="/forum/viewtopic.php?p=3922657#p3922657"]Их бесплатная версия XC8 не понимает.[/uquote]Всё понимает. Я проверил :)
NStorm писал(а):И еще per_tmp умножая на 10 - переполнения не может возникать там?
Она long. Там до переполнения - как до Китая раком :))

PS: XC8, от части - HI-TECH.
Контактная информация:
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

Всё понимает. Я проверил
Неа. У вас же PRO лицензия, об этом еще в той теме писали. Откуда там понимание нотации _CONFIG и _isr()? (см. ниже, есть пояснение что нужно выставить, чтобы работало) Сейчас покажу ругань.
Она long. Там до переполнения - как до Китая раком
Пардон, думал она 16-битная под счетчик.

Добавлено after 1 minute 59 seconds:
Ошибки сборки:

Код: Выделить всё

main.c:21:8: error: unknown type name 'bit'
static bit               In_Fl=0;        // Флаг окончания преобразования периода
       ^
main.c:27:6: error: variable has incomplete type 'void'
void interrupt _isr(void){
     ^
main.c:27:15: error: expected ';' after top level declarator
void interrupt _isr(void){
              ^
              ;
3 errors generated.
(908) exit status = 1
Добавлено after 4 minutes 10 seconds:
Ага, нашел где собака зарыта. Если в опциях проекта XC8 Global Options поставить C Standard на C90 - начинает собираться и в стиле HI-TECH код. А по умолчанию при создании нового проекта MPLAB X ставит там C99 и там уже не работает )

Там еще CCI какой-то придумали - тоже новые особенности. По-умолчанию пока выключено, но включение тоже меняет многие требования по коду. В мануле расписано.
Последний раз редактировалось NStorm Ср ноя 11, 2020 18:26:35, всего редактировалось 1 раз.
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

NStorm писал(а):Ага, нашел где собака зарыта.
Ну вот и отлично :)

Добавлено after 3 minutes 48 seconds:
У меня там только С89.
Может у нас версии компилятора разные ? :roll:
СпойлерИзображение
Вложения
2020-11-11_16-41-52.png
(41.19 КБ) 372 скачивания
Контактная информация:
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

Аlex, ну да, у меня 2.xx версия. Там кстати в бесплатной версии хотя бы 2ой уровень оптимизации дает выставить. И если режим совместимости с C90 выставить в принципе ваш код собирается тоже без ошибок. Но с float в 12f675 банально не влазиет, а без float без проблем уже. Будем считать, что разобрались. )
Родился
Сообщения: 9
Зарегистрирован: Чт ноя 05, 2020 21:43:31

Сообщение igorua27 »

Большое всем спасибо за вашу работу.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку

Сообщение Zhuk72 »

igorua27, не знаю какой у вас родной дисплей стоит, но вот тут есть старый немецкий проект, под дисплеи Астры Ф и Корсы Б. Там, правда, другой ПИК, но важна сама идея.
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Контактная информация:
Ответить

Вернуться в «PIC»