Demonrostov Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 Может запретить прерывание перед передачей значения в функцию, а потом в самой функции разрешить? Даже и не думай так делать! Очень, очень вредная привычка. Запретить прерывания нужно, но только для того чтобы безопасно скопировать значение переменной в другую переменную, и её уже передать в функцию а функция пусть что хочет с ней сделает - она уже не изменится внезапно. Не совсем понял. Говорите так делать не надо и тут же да, запретить надо. Можете привести пример как это делать? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 вам сказали запретить при копировании переменных, а не при вызове функции , что вполне логично, запрещать прерывания на N маш.циклов выполнения функции глупо 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Demonrostov Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 вам сказали запретить при копировании переменных, а не при вызове функции , что вполне логично, запрещать прерывания на N маш.циклов выполнения функции глупо Каким образом? как в СИ это делать? Дайте пример. Ведь копирование происходит при вызове функции. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
COKPOWEHEU Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 volatile int ext_val; ... int main(){ init(); while(1){ int int_val; cli(); int_val = ext_val; sei(); func(int_val); } } Например, так. 0 Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз. Часть моих наработок. Ссылка на комментарий Поделиться на другие сайты Поделиться
Demonrostov Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 volatile int ext_val; ... int main(){ init(); while(1){ int int_val; cli(); int_val = ext_val; sei(); func(int_val); } } Например, так. Вот теперь все стало на свои места. Паника прошла . Спасибо всем за свет в конце туннеля! 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
mail_robot Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 спасибо не булькает. Жмакни спасибку человеку 0 Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух Ссылка на комментарий Поделиться на другие сайты Поделиться
alexb Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 т.е. еще одна линия Vcc подводится к нему и там 3 резистора 2 транзистора . или Vcc к нему не подводится а питается он от шины но тогда какая схема разводки будет у второго мк ? для низкой скорости не важно... вопрос не в важности а как схема выглядеть будет то ? для первого мы подаем питание оно же и шина а для воторого если оставляем только шину как питание будет реализовывоться ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 22 января, 2016 Поделиться Опубликовано 22 января, 2016 Если второй МК питается по шине, то собственно по шине оно и будет туда поступать. Только надо будет развязать по переменному току - чтобы переменная составляющая не поступала на питание контроллера. С этим хорошо справляются диод и конденсатор. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
alexb Опубликовано 26 января, 2016 Поделиться Опубликовано 26 января, 2016 так как будет выглядеть обвязка на втором мк... на первом она с учетом +5 линии на втором ее не будет... а два транзистора на первом расчитанны на +5 внешнию... как будет выглядеть развязка на втором ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
КЭС Опубликовано 26 января, 2016 Поделиться Опубликовано 26 января, 2016 alexb, вам нужно типа этого (см. пунктир "Датчик") ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
alexb Опубликовано 27 января, 2016 Поделиться Опубликовано 27 января, 2016 а зачем там диод перед устройством ? вроде никакой пользы от него 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
КЭС Опубликовано 27 января, 2016 Поделиться Опубликовано 27 января, 2016 (изменено) Он для той темы, в Вашем случае не нужен (если речь о диоде, параллельном КЭ транзистора). Я лишь хотел показать схему организации фантомного питания. Вы ведь этого хотели? Изменено 27 января, 2016 пользователем КЭС 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Andriyovich Olexiy Опубликовано 27 января, 2016 Поделиться Опубликовано 27 января, 2016 atmega16 можно программировать с помощью USBasp? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 28 января, 2016 Поделиться Опубликовано 28 января, 2016 Не, люди совсем перестали пользоваться поиском. Деградация... Мне понадобилось около 15-20 секунд, чтобы найти ответ на этот вопрос. https://www.yandex.r...&lr=2&clid=9582 http://forum.easyele...ic.php?p=255113 Список поддерживаемых AVR микроконтроллеров: USBASP Программатор AVR поддерживает все микроконтроллеры ATMEL с режимом последовательного программирования ISP (In System Programming): ATtiny11, ATtiny12, ATtiny13, ATtiny15, ATtiny22, ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261, ATtiny28, ATtiny44, ATtiny45, ATtiny461, ATtiny84, ATtiny85, ATtiny861 AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, T90S4433, AT90S4434, AT90S8515, AT90S8535 ATmega8, ATmega48, ATmega88, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168,ATmega169, ATmega32, ATmega323,ATmega324, ATmega325, ATmega3250, ATmega329, ATmega64, ATmega640, ATmega644, ATmega645, ATmega6450, ATmega649, ATmega6490, ATmega128, ATmega1280, ATmega1281, ATmega2560, ATmega2561, ATmega103, ATmega406, ATmega8515, ATmega8535 AT90CAN32, AT90CAN64, AT90CAN128 AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647 Неужели это так трудно сделать самому ? Писать сообщение на форуме в разы дольше ! 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vaho1967 Опубликовано 31 января, 2016 Поделиться Опубликовано 31 января, 2016 Здравствуйте!!! Вопрос в студию... сейчас разбираюсь с МК программированием в атмел студио пришел к памяти eeprom... загвоздка получилась набрал программу ( запись в eeprom), компилировал (в атмел), запустил на трассировку (в атмеле) прога вроде работает (в регистры пишет, меняет там все что надо), только вот в eeprom не видно записанных данных (если открыть memory eeprom) - там ничего не меняется... непонятно, либо данная вещь не работает в симуляторе, либо я в проге что-то напутал.. и еще одна непонятка... разбирался с прерываниями, (таблица, переходы)... для атмеги8 в атмел студио для примера установил переход по первому вектору (INT1 внешнее 1) как ни пытался запустить процедуру в симуляторе - не выходит попытки сводились к ручной установке необходимых флагов в МК (проге - симуляторе) в процессе работы фоновой программы (цикл пустой - nop) закралось ощущение, что прерывание (внешнее) ссимулировать в проге нельзя 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Григорий Т. Опубликовано 31 января, 2016 Поделиться Опубликовано 31 января, 2016 набрал программу И где она? 0 Никогда не спорьте с дураком - люди могут не заметить между вами разницы Ссылка на комментарий Поделиться на другие сайты Поделиться
Vaho1967 Опубликовано 31 января, 2016 Поделиться Опубликовано 31 января, 2016 Кусок, отвечающий за запись: .... ldi r21, 10 ; организация цикла записи (10 байт) ldi r22, startdata ; данные (любой байт) eeromwrite: sbic eecr, eewe (ждать окончание предыдущей записи,, если была...) rjmp eeromwrite cli sts eedr, r22 ;запись байта в регистр данных (3D) sbi eecr, eemwe ; установим бит разрешения записи sbi eecr, eewe ;и бит записи inc r30 ;далее цикл просто проверить inc r22 dec r21 brne eeromwrite sei не пишет в памяти EEPROM (в прогремме не видно записанных данных (СТУДИО симулятор) отладка и трассировка ОК в проге??? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Григорий Т. Опубликовано 31 января, 2016 Поделиться Опубликовано 31 января, 2016 С даташитом сравнивали? Assembly Code Example EEPROM_write: ; Wait for completion of previous write sbic EECR,EEPE rjmp EEPROM_write ; Set up address (r18:r17) in address register out EEARH, r18 out EEARL, r17 ; Write data (r16) to Data Register out EEDR,r16 ; Write logical one to EEMPE sbi EECR,EEMPE ; Start eeprom write by setting EEPE sbi EECR,EEPE ret 0 Никогда не спорьте с дураком - люди могут не заметить между вами разницы Ссылка на комментарий Поделиться на другие сайты Поделиться
Vaho1967 Опубликовано 31 января, 2016 Поделиться Опубликовано 31 января, 2016 все разобрался 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Mitrych Опубликовано 7 февраля, 2016 Поделиться Опубликовано 7 февраля, 2016 (изменено) Всем привет. Есть необходимость научиться прошивать ПИКи, через MPLAb ide. Я никогда этим не занимался, не программист, в электронике разбираюсь немного, с цифровыми схемами знаком, но на начальном уровне. Вроде дело простое - открыл программу и прошивай что хочешь, но с самой программой уже третий день разбираюсь, собраться не могу. Работа в программе интуитивно непонятна, если брать проект - например вот в этой теме: http://forum.cxem.ne...opic=138303&hl= самое первое сообщение, файл Project1.rar - там больше десятка файлов, с разными расширениями, для чего каждый из них нужен? К тому же в каждом - разная инфа, как тут вообще прошивать микросхемы?? Подскажите пожалста кто что знает, последовательность действий, от создания проекта(уже готового) до прошивания контроллера, как открыть проект - как изменить какие-то данные, (например чтобы светодиод не 3 раза моргал, а 5) - как скомпилировать его ( через HI-TECH PICC-18 или MPLab C18? и почему именно так?) - как проверить на ошибки(это вроде отладка) - и потом сделать из него хекс - и прошить в этом же МПлабе. Извиняюсь если слишком сложно, это наверное в вузах проходят при изучении цыфровых устройств, - но наверняка можно этому научиться и без вышки. Желание есть. Это главное, как говорят. Изменено 7 февраля, 2016 пользователем Mitrych 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 7 февраля, 2016 Поделиться Опубликовано 7 февраля, 2016 во-первых мплаб ничего не прошивает, прошивает программатор, мплаб это только среда разработки во-вторых у вас должен быть установлен компилятор соответствующий готовому проекту и в-третьих учатся писать программы начинают на пик16 или 12 , 18серия требует знаний намного выше начального и самое главное усердное изучение даташитов на используемый МК 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
MillyVolt2 Опубликовано 7 февраля, 2016 Поделиться Опубликовано 7 февраля, 2016 В принципе тема про AVR, и они вроде как лучше для новичков. Для начала надо найти толковую книжку/пособие, по AVR подсказать могу, по пикам не знаю.. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 7 февраля, 2016 Поделиться Опубликовано 7 февраля, 2016 в каком месте эта тема стала про AVR? чем оные лучше пиков для новичков? наличием свыше ста команд процессора против 35ти для пиков при том же функционале? или разным временем выполнения разных команд против фиксированного времени выполнения в пиках 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Геннадий Опубликовано 8 февраля, 2016 Поделиться Опубликовано 8 февраля, 2016 Больше команд - гибче язык. В Пиках тоже есть команды, не однозначные по времени выполнения. А если учесть, что для разных подсемейств существуют разные наборы команд, то это вообще жесть. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
MillyVolt2 Опубликовано 8 февраля, 2016 Поделиться Опубликовано 8 февраля, 2016 Насчёт темы про AVR ошибся) То что AVR лучше для новичков, это мнение некоторых профессионалов, которому я доверился) Как я понимаю, у AVR-ок более универсальная периферия на разных моделях МК и они менее замороченные в программировании. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.