Большого массива нет. Точнее, массива нет вообще. Есть функция sin(), заполненная 200 пустыми циклами и таким же количеством функций вывода в порт, что, по идее, должно дать одну полуволну частотой 50 Гц при частоте ШИМа 10 кГц. И все это компилировалось ровно до тех пор, пока я не прописал, в какие порты выводить это безобразие. Кроме как формированием сигналов для драйверов моста, МК тут ничем заниматься не будет.
Добавлено after 1 hour 3 minutes 51 second: Я думал, память программ 1024 инструкции...
Попытка вычислять синус налету провалилась. Кажется, не может этот контроллер в синусы
Код:
error: (1360) no space for auto/param _main$539
Похоже, придется задать массив значений в 50 (скажем, четверть периода). Вопрос в том, получится ли синус синусом? Или исказится из-за разности длительности инкремента и декремента (если таковая существует)?
Вопрос в том...? Или исказится из-за разности длительности...?
Вы, похоже, вообще не понимаете принципы синтеза сигналов. 1. ЛЮБОЙ цифровой синтез гармонического сигнала (синусоиды) приводит к образованию ГАРМОНИК этой синусоиды. Достаточно на выходе поставить ФНЧ с частотой среза чуть выше синтезируемой частоты и даже меандр станет синусоидой. То есть весь вопрос в допустимых гармониках. 2. При синтезе периодического сигнала по таблице точек необходимо выборку точек делать с фиксированным интервалом времени. От этого зависит ЧАСТОТА синтезируемого сигнала. Поэтому выборки делают ПО ТАЙМЕРУ, а не программно. И дело не в декременте/инкременте. Они то как раз имеют одинаковое время исполнения. Дело в условных переходах, НЕИЗБЕЖНО завершающих цикл выборок (период синтезируемого сигнала). Ну и к тому же стремно делать блокирующие функции в программе. Программная выборка намертво блокирует исполнение другого кода.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
В PIC16F676 НЕТ МОДУЛЯ ОТЛАДКИ. Поэтому и режима такого у этого МК нет по определению. Во вторых, даже если режим отладки есть, то этот режим не нужно никак устанавливать или выключать. Это происходит АВТОМАТИЧЕСКИ при выборе инструмента (PICkit, ICD, Real ICE) и запуске собственно отладки В СРЕДЕ РАЗРАБОТКИ (IDE). В среде программирования (IPE) никакой отладки быть не может. Там не загружается исходник, а без исходника не может быть скомпилирован ELF/DWARF. Программирование (с одновременной компиляцией) в IDE происходит путем нажатия на пиктограмму с зеленой стрелкой ВНИЗ.
В свойствах проекта. Правой кнопкой мыши по корневому имени проекта в дереве проектов. У Вас что, стрелка программирования не активна? Вы как вообще создали проект? При создании по любому нужно выбрать инструмент.
На какую кнопку жмете для прошивки и что пишет Output? Приведите скрин. Что с питанием МК? Вы питаете МК от ICD3 или из своей схемы? Если первое, то питание нужно включить в свойствах ICD. В левом окне (Категории) приведенного Вами скрина выбрать ICD3 и правой копкой открыть свойства-питание. Поставить галку включения питания.
Нажимаю на кнопку со стрелкой вниз.\ Output выглядит так (на всякий случай привожу весь) Спойлерmake -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf make[1]: Entering directory 'D:/Cloud/Microchip/P16 PWM SIN 50 Hz/50 Hz_PWM.X' make -f nbproject/Makefile-default.mk dist/default/production/50_Hz_PWM.X.production.hex make[2]: Entering directory 'D:/Cloud/Microchip/P16 PWM SIN 50 Hz/50 Hz_PWM.X' "C:\Program Files (x86)\Microchip\xc8\v1.45\bin\xc8.exe" --pass1 --chip=16F676 -Q -G --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s" -obuild/default/production/newmain.p1 newmain.c newmain.c:39: warning: (371) missing basic type; int assumed newmain.c:71: warning: (373) implicit signed to unsigned conversion newmain.c:86: warning: (373) implicit signed to unsigned conversion "C:\Program Files (x86)\Microchip\xc8\v1.45\bin\xc8.exe" --chip=16F676 -G -mdist/default/production/50_Hz_PWM.X.production.map --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s" --memorysummary dist/default/production/memoryfile.xml -odist/default/production/50_Hz_PWM.X.production.elf build/default/production/newmain.p1 Microchip MPLAB XC8 C Compiler (Free Mode) V1.45 Build date: Nov 15 2017 Part Support Version: 1.45 Copyright (C) 2017 Microchip Technology Inc. License type: Node Configuration
:: warning: (1273) Omniscient Code Generation not available in Free mode
Memory Summary: Program space used 11Fh ( 287) of 3FFh words ( 28.1%) Data space used 21h ( 33) of 3Eh bytes ( 53.2%) EEPROM space used 0h ( 0) of 80h bytes ( 0.0%) Data stack space used 0h ( 0) of 1Fh bytes ( 0.0%) Configuration bits used 1h ( 1) of 1h word (100.0%) ID Location space used 0h ( 0) of 4h bytes ( 0.0%)
You have compiled in FREE mode. Using Omniscient Code Generation that is available in PRO mode, you could have produced up to 60% smaller and 400% faster code. See http://www.microchip.com/MPLABXCcompilers for more information.
make[2]: Leaving directory 'D:/Cloud/Microchip/P16 PWM SIN 50 Hz/50 Hz_PWM.X' make[1]: Leaving directory 'D:/Cloud/Microchip/P16 PWM SIN 50 Hz/50 Hz_PWM.X'
BUILD SUCCESSFUL (total time: 3s) Loading code from D:/Cloud/Microchip/P16 PWM SIN 50 Hz/50 Hz_PWM.X/dist/default/production/50_Hz_PWM.X.production.hex... Loading completed Cannot program a production build to a debug header.
Добавлено after 24 minutes 29 seconds: Питание беру от схемы, в свойствах питание от ICD отключено.
Выдал ошибку. Я так понимаю, ему нужен MPLAB и MPLABX в системе? У меня только MPLAB.
СпойлерMPDDSwitch64, v1.06.00
The Switcher provides a facility for switching between MPLAB 8 device drivers and MPLAB X device drivers. It is not a device driver installer in and of itself. Its operation requires that the MPLAB development tool that is to be switched be plugged in to your system. This in turn requires that that tool already be installed and working with either an MPLAB 8 device driver or an MPLAB X device driver. Since it performs a switching operation, it also requires that both MPLAB 8 and MPLAB X be installed on your system.
The Switcher has determined that MPLAB 8 and MPLAB X are not both installed on your system. Either only one or the other is installed, or neither are installed. As such, the Switcher operations are non-applicable and hence unavailable.
Привет, начинающий пиковод, установил среду mplab x ide v5.35, создал проект, жму F11(либо символ молоток) но бильд не происходит. как будто и не нажимаю на него. Подскажите пож в чем причина?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения