COKPOWEHEU Опубликовано 1 января, 2016 Поделиться Опубликовано 1 января, 2016 Программа очень открыта. В программе содержится код всех блоков, для удобства он даже доступен через подменю над блоком. Программа лишь вставляет кода используемых блоков в итоговый текст программы и запускает компилятор. Кстати сам итоговый текст также доступен для просмотра. ... Можно ли использовать команды чтения и записи оперативной памяти для доступа к портам ввода вывода? Очевидно, имелась в виду ссылка на исходный код графической оболочки, а не блоков. Народ хотел посмотреть именно на него.Команды чтения и записи использовать можно, а в некоторых случаях (когда адреса выходят за пределы 0x3F - в новых моделях) это единственный способ. Но надо учитывать, что адресация в in/out и ld/lds/st/sts разная, во втором случае на 0x20 больше. Потому что адресация памяти начинается с нулевого адреса, соответствующему r0, а in/out - только для переферии, то есть с 32-го байта. Еще надо помнить, что обращение через память медленнее и больше по объему, чем через специализированные команды. 0 Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз. Часть моих наработок. Ссылка на комментарий Поделиться на другие сайты Поделиться
_VN_ Опубликовано 1 января, 2016 Поделиться Опубликовано 1 января, 2016 Продолжаю творчество:... Идея нормальная и даже красивая при реализации нескольких строк, а далее начнётся ступор по чисто биологической причине. Уже писал, что желательно исходить из описания выполняемой логической функции. У Вас же наоборот - из рисунка приходится "восстанавливать" логику работы кусочка программы. TRACE MODE 6 SOFTLOGIK - программирование микроконтроллеров - очень похоже на то, что Вы разрабатываете. Исходный текст программы читаем на уровне потребителя в виде, который указан во вложенном файле. Если бы Ваша программа в автомате синтезировала текст программы по описанию алгоритма в указанном тексте, то, как я предполагаю на своём уровне, её потребительская ценность резко увеличилась, а в данном случае Вы просто демонстрируете свой профессиональный уровень программиста. SOFTLOGIC. Программирование контроллеров.pdf ДОГОВОР НТП 3.rar 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Lihouzov Опубликовано 19 апреля, 2016 Автор Поделиться Опубликовано 19 апреля, 2016 (изменено) В программе появилась возможность использовать переходы, позволяющие объединять листы. Переходы так же улучшают читаемость схем проекта. Изменено 19 апреля, 2016 пользователем Lihouzov 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Lihouzov Опубликовано 6 июня, 2016 Автор Поделиться Опубликовано 6 июня, 2016 (изменено) Добавил новый блок "логический фильтр". Изменено 6 июня, 2016 пользователем Lihouzov 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 30 июля, 2016 Автор Поделиться Опубликовано 30 июля, 2016 Не могу решить проблему, прошу помощи специалистов. Микроконтроллер ATtiny85 Пытаюсь изменять состояние OC1B (pin B4) по таймеру 1. В avrstudio в симуляторе вижу что в регистре PINB бит 4 меняет свое состояние по таймеру, а в регистре PORTB бит 4 не изменяет своего состояния. DDRB бит 4 записал 1. в инициализации: rcall Read_cfg ;Читаем TCCR1 UOUT TCCR1, Addr_Data ;Настраиваем делитель (0x8B) UIN A, DDRB ;Настраиваем вывод PB4 вывод данных ori A, 1<<DDB4 ;Настраиваем вывод PB4 вывод данных UOUT DDRB, A ;Настраиваем вывод PB4 вывод данных В основном цикле: rcall Read_cfg_Load_Uz1 ;вход sp COM Uz1L UOUT OCR1B, Uz1L UOUT OCR1C, Uz1L rcall Read_cfg_Load_Uz1 ;вход en clr A sbrc Uz1L, 0 ori A, 1<<COM1B0 ldi C, LOW(~((1<<COM1B0)+(1<<COM1B1))) ;Маска выделения битов UIN B, GTCCR ;Настраиваем привязку к PB4 and B, C ;Настраиваем привязку к PB4 or B, A ;Настраиваем привязку к PB4 UOUT GTCCR, B ;Настраиваем привязку к PB4 В итоге не вижу изменения состояния PortB4 (OC1B) от таймера. Что я не настроил? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
COKPOWEHEU Опубликовано 30 июля, 2016 Поделиться Опубликовано 30 июля, 2016 UIN A, DDRB ;Настраиваем вывод PB4 вывод данныхori A, 1<<DDB4 ;Настраиваем вывод PB4 вывод данных UOUT DDRB, A sbi DDRB,4 ?В avrstudio в симуляторе вижу что в регистре PINB бит 4 меняет свое состояние по таймеру, а в регистре PORTB бит 4 не изменяет своего состояния.А в реальной схеме не проверяли? 0 Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз. Часть моих наработок. Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 1 августа, 2016 Автор Поделиться Опубликовано 1 августа, 2016 Да действительно sbi DDRB,4 лучше. Проверил в живую работает, второй раз меня подводит протеус. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 18 июня, 2018 Автор Поделиться Опубликовано 18 июня, 2018 Всем привет, я отстранился от проекта пару лет назад, тем не менее проект жив, многие пользуются и благодарят за проделанную работу. Очень приятно слышать поддержку и это подталкивают к дальнейшему развитию проекта. Еще в 2015 г., я видел путь к совершенствованию кода исполнительного ядра микроконтроллера, тем не менее, даже полученный результат превзошел мои ожидания: алгоритм из десятка блоков компилируется в килобайт кода. Совершенствование кода, позволит добиться снижение размера и повышения производительности кода. Хочу найти 2-3 заинтересованных человека со знанием архитектуры и ассемблера, спустя пару месяцев получим результат, благодарностью будет бесценный опыт и благодарность пользователей. Кто желает участвовать, пишите. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
mush25 Опубликовано 18 июня, 2018 Поделиться Опубликовано 18 июня, 2018 Здравствуйте уважаемые коллеги , убедительно прошу всех кто в программировании на Ты , помогите пожалуйста Евгению по совершенствованию кода . Прошу лично от себя и не только , таких как я тысячи . Его программа помогла мне и таким как я , ( кто с программированием на ВЫ ) . Заранее всем спасибо . 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
солар Опубликовано 19 июня, 2018 Поделиться Опубликовано 19 июня, 2018 Чтобы дело пошло, необходимо поставить его на коммерческую основу. Попробуйте состыковаться с ребятами из микрочипа. Возможно, их заинтересует эта разработка. 0 Я не раздаю удочки. Я продаю рыбу. Ссылка на комментарий Поделиться на другие сайты Поделиться
Геннадий Опубликовано 19 июня, 2018 Поделиться Опубликовано 19 июня, 2018 Пора уже на 32-битники переводить. Например, STM32... Цены не будет. А всем, кто с программированием на Вы, - пора бы познакомиться ближе и перейти на ТЫ. А то так и будете ЛЕГО-программы составлять. Взрослейте. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
mush25 Опубликовано 19 июня, 2018 Поделиться Опубликовано 19 июня, 2018 10 часов назад, Геннадий сказал: Пора уже на 32-битники переводить. Например, STM32... Цены не будет. А всем, кто с программированием на Вы, - пора бы познакомиться ближе и перейти на ТЫ. А то так и будете ЛЕГО-программы составлять. Взрослейте. Если будет 32 битник , тогда ЛЕГО допустимо да - ДЕД ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Геннадий Опубликовано 20 июня, 2018 Поделиться Опубликовано 20 июня, 2018 Все именно так и считают, применяя ЯВУ (памяти навалом, скорости тоже). 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 20 июня, 2018 Автор Поделиться Опубликовано 20 июня, 2018 Сделать оптимальное решение, а потом и перенести на 32 битные- лишь бы было желание! 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ruhi Опубликовано 21 июня, 2018 Поделиться Опубликовано 21 июня, 2018 В 19.06.2018 в 08:41, солар сказал: Возможно, их заинтересует эта разработка. Нет! Не заинтересует! 0 Можно сделать все! Но чем больше можно, тем больше нельзя! Ссылка на комментарий Поделиться на другие сайты Поделиться
солар Опубликовано 21 июня, 2018 Поделиться Опубликовано 21 июня, 2018 (изменено) Попытка не пытка. А на голом энтузиазме дело далеко не уйдёт. Мало того - чревато закончиться алкоголизмом энтузиаста. Изменено 21 июня, 2018 пользователем солар 0 Я не раздаю удочки. Я продаю рыбу. Ссылка на комментарий Поделиться на другие сайты Поделиться
atc Опубликовано 21 июня, 2018 Поделиться Опубликовано 21 июня, 2018 4 часа назад, солар сказал: А на голом энтузиазме дело далеко не уйдёт......... Посмотрите на досуге Great Cow BASIC ,проект практически одного человека и только на энтузиазме . 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
солар Опубликовано 22 июня, 2018 Поделиться Опубликовано 22 июня, 2018 16 часов назад, atc сказал: Посмотрите на досуге Билла Гейтса. 0 Я не раздаю удочки. Я продаю рыбу. Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 23 июня, 2018 Автор Поделиться Опубликовано 23 июня, 2018 Начало работы Жду заинтересованных людей! 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ARV Опубликовано 23 июня, 2018 Поделиться Опубликовано 23 июня, 2018 В 6/21/2018 в 15:18, atc сказал: проект практически одного человека и только на энтузиазме На сколько я помню, энтузиазм этого человека был не совсем голый: он сильно-сильно стимулировался контрактом с IBM... 0 Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют... Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 26 июня, 2018 Автор Поделиться Опубликовано 26 июня, 2018 (изменено) Делаю оптимизацию кода, получил следующее, на примере конфигурации: Лист 1.jpg Имеетя 7 блоков, причем кода PinD4 и PinD7, а ткже PinB6 и PinB7- идентичны. В результате сборки программа вложит 5 исполнительных подпрограмм: FBD0_run (для PinD4 и PinD7) FBD1_run (для RS триггер) FBD2_run (для NOT) FBD3_run (для AND) FBD4_run (для PinB6 и PinB7) Подпрограммы завершаются командой ret. Подпрограммы используют указатели X на оперативную память и Y- на флеш память. В цикле программы необходимо вызвать семь функций: rcall FBD0_run (для PinD4) rcall FBD0_run (для PinD7) rcall FBD1_run (для RS) rcall FBD2_run (для NOT) rcall FBD3_run (для AND) rcall FBD4_run (для PinB6) rcall FBD4_run (для PinB7) При этом, у каждого блока имеется свои данные оперативной и флэш памяти, эти адресазаведомо известны. Для флеш: FBD0_flash: db 00, 00, .. (данные PinD4) FBD1_flash: db 00, 00, .. (данные PinD7) FBD2_flash: db 00, 00, .. (данные RS) FBD3_flash: db 00, 00, .. (данные NOT) FBD4_flash: db 00, 00, .. (данные AND) FBD5_flash: db 00, 00, .. (данные PinB6) FBD6_flash: db 00, 00, .. (данные PinB7) Для оперативной: FBD0_ram (адрес на данные в оперативной памяти для PinD4) FBD1_ram (адрес на данные в оперативной памяти для PinD7) FBD2_ram (адрес на данные в оперативной памяти для RS) FBD3_ram (адрес на данные в оперативной памяти для NOT) FBD4_ram (адрес на данные в оперативной памяти для AND) FBD5_ram (адрес на данные в оперативной памяти для PinB6) FBD6_ram (адрес на данные в оперативной памяти для PinB7) По факту не все блоки используют оперативную память, в приведенном примере только RS триггер использует 1 байт. С учетом предварительной установки адреса, получаю: ldi xl, low(FBD0_ram) ldi xh, high(FBD0_ram) ldi yl, low(FBD0_flash*2) ldi yh, high(FBD0_flash*2) rcall FBD0_run (для PinD4) ldi xl, low(FBD1_ram) ldi xh, high(FBD1_ram) ldi yl, low(FBD1_flash*2) ldi yh, high(FBD1_flash*2) rcall FBD0_run (для PinD7) ... В итоге расходую по 5 комнд (10 байт памяти) для исполнения одного блока. Как сделать оптимальней? Изменено 26 июня, 2018 пользователем Lihouzov 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 26 июня, 2018 Поделиться Опубликовано 26 июня, 2018 23 минуты назад, Lihouzov сказал: Как сделать оптимальней? шо за бред на картинко? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ruhi Опубликовано 27 июня, 2018 Поделиться Опубликовано 27 июня, 2018 15 часов назад, IMXO сказал: шо за бред Это не бред, это такая реклама - умные слова, цветные картинки, ... У кого нибудь в глазах зарябит, и все, считай попался! 0 Можно сделать все! Но чем больше можно, тем больше нельзя! Ссылка на комментарий Поделиться на другие сайты Поделиться
Lihouzov Опубликовано 27 июня, 2018 Автор Поделиться Опубликовано 27 июня, 2018 В 26.06.2018 в 23:54, IMXO сказал: шо за бред на картинко? 9 часов назад, ruhi сказал: Это не бред, это такая реклама - умные слова, цветные картинки, ... У кого нибудь в глазах зарябит, и все, считай попался! Критиковать- не создавать, знаний не надо. Еще на начальном пути, посмотрите начало ветки, говорилось что невозможно.. как впихнуть в несколько килобайт. Сейчас десяток блоков влазит в килобайт. приемлемая производительность. Пытаюсь сделать еще оптимальней, обращаюсь, как я думал к экспертам, а оказывается они только и демагогией и могут заниматься! 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 27 июня, 2018 Поделиться Опубликовано 27 июня, 2018 прежде, чем становится в позу, сам посмотри на свою картинко , откуда у тебя переход1 выходит 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.