Jump to content
Guest Василий

LDmicro вопрос по программированию

Recommended Posts

Guest Василий

Кто  может  помочь с примером  программирования в  программе  LDmicro  ?  Интересует  как  программировать   PWM выход  ? Хотелось  бы   увидеть  наглядный  пример  может  кто  знает ! Буду  рад  любой  информации !!!

Share this post


Link to post
Share on other sites

На форумах принято общаться на "ты", что не является оскорбительным и подразумевает равноправие

Share this post


Link to post
Share on other sites

Изготовление 2-х слойных плат от 2$, а 4-х слойных от 5$!

Быстрое изготовление прототипа платы всего за 24 часа! Прямая доставка с нашей фабрики!

Смотрите видео о фабрике JLCPCB: https://youtu.be/_XCznQFV-Mw

Посетите первую электронную выставку JLCPCB https://jlcpcb.com/E-exhibition чтобы получить купоны и выиграть iPhone 12, 3D-принтер и так далее...

Guest Василий

LDmicro  Для меня  понятней  в разработке  и отладке проектов!  Не понятно  только  несколько  инструкций  как с ними работать ? (PWM)  (MOV)

Share this post


Link to post
Share on other sites

Безмостовые ККМ для 99% КПД!

Схема коррекции коэффициента мощности (ККМ) на основе так называемого «тотемного столба» (Totem Pole) обладает минимально возможными потерями и потенциально может обеспечить самые жесткие требования к энергоэффективности источников питания. Компания Wolfspeed представляет референсную разработку – плату ККМ CRD-02AD065N на базе собственных карбид-кремниевых MOSFET и диодов с наилучшими в отрасли характеристиками.

Подробнее

Guest Василий

Интересует  как работать  с этими  инструкциями   ?

Screenshot_1.png

Share this post


Link to post
Share on other sites

Гибридные IGBT - сила Si и SiC в одном корпусе!

Компания Infineon представила новые гибридные IGBT-транзисторы на 650 В, которые сочетают в себе преимущества технологий TRENCHSTOP и CoolSiC. Использование SiC-диода Шоттки позволяет значительно расширить возможности IGBT и снизить уровень энергии, необходимой для включения транзистора (Eon), а также уменьшить потери на переключение.

Подробнее

по сути это программа ПЛК, смотрите в ту сторону.

Этот проект и является некой реализацией ПЛК, только урезанной

Но и там разжевывать это никто не будет - это коммерческая сфера.

Share this post


Link to post
Share on other sites

Вебинар «Параметры выше, цена ниже. Обновление в линейке AC/DC- и DC/DC-преобразователей MORNSUN» (26.01.2021)

Приглашаем 26 января на бесплатный вебинар, посвящённый преимуществам и отличиям новых источников питания и DC/DC-преобразователей Mornsun. На вебинаре будут рассмотрены изолированные и неизолированные DC/DC-преобразователи последнего, четвертого, поколения (R4) и компактные модульные источники питания второго и третьего поколений (семейства LS/R3 и LD/R2) на плату. Рассмотрим новую группу продукции – встраиваемые источники питания в кожухе.

Подробнее

Guest Василий

Да я не прошу мне  все  разжевывать ! Мне не понятно  как работать  с инструкцией  ШИМ  (  как  к примеру  засветить  плавно  и погасить  светодиод  )

Share this post


Link to post
Share on other sites

создать таймер с периодом >= периода ШИМ , по отработке таймера инкримент/дикримент переменной "скважность"  в диапазоне 0..100. , переменную загрузить в ШИМ.

Share this post


Link to post
Share on other sites
Guest Василий

Вот  это  уже  передметно !! Спасибо !!! Но  есть  проблема  LDmicro   пишет  что  atmega16  нет  шим ! компилирует  только  для  atmega128 почему  так  кто  подскажет ?

Share this post


Link to post
Share on other sites
Guest Василий

Беру  значение  из  АЦП и  передаю  в  ШИМ   работает  в симуляторе  но  порты  могу  привезать  только  для  atmega128  или atmega8  !!! С  atmega16 работать  не  хочет  пишет  что микроконтроллер  не поддерживает  ШИМ .Почему  так ?

Screenshot_1.png

Share this post


Link to post
Share on other sites

потому что

Цитата

LDmicro compiles ladder logic to PIC16 or AVR code. The following processors are supported: * PIC16F877 * PIC16F628 * PIC16F876 (untested) * PIC16F88 (untested) * PIC16F819 (untested) * PIC16F887 (untested) * PIC16F886 (untested) * ATmega128 * ATmega64 * ATmega162 (untested) * ATmega32 (untested) * ATmega16 (untested) * ATmega8 (untested)

 

Share this post


Link to post
Share on other sites

ВОзможно, там мало тайметров котоыре поддерживают выход ШИМ наружу, и они заняты для системных целей а под ШИМ уже ничего не остаётся, только программный который в данной архитектуре микро-ОС реализован быть не может.

Интересно, а язык поддерживает внешние модули? пользовательские? Ведь можно подключить к контроллеру микросхему-расширитель с внешней реализацией ШИМ, например STP1612PW05  на 16 каналов по 12/16 бит? А может даже и не одну.


Учение - изучение правил. Опыт - изучение исключений.

Share this post


Link to post
Share on other sites
Guest Василий

LDmicro  С   atmega16 работает  криво  а жаль  просто у меня  есть  такие  камни  и хотел  на них  по писать  проекты  но  не все  получается ! 

Share this post


Link to post
Share on other sites
Guest Василий

Кто  может  помочь  с описанием  инструкций  для  LDmicro   

Share this post


Link to post
Share on other sites
Guest Василий

Кто  подскажет  как изменить  значение  таймера   с использованием инструкции  MOV    или  значением  АЦП  ?

Screenshot_1.png

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Возможно что еще проблема в библиотеках. Какая-то из них разрослась в новой версии и места уже не хватает.
    • Это всё-таки не техническая наука. Наверное, ближе к формальной, как и математика. Я разговаривал с математиком. Он кроме математики больше ничем не интересуется. Но это было ещё до вброса о лунной афере. Химики тоже нифига ничего не знают ни о космосе, ни о Аполлоне, хотя это естественная наука.  А вот люди инженерных профессий, если даже ничего и  не слышали о лунных фальсификациях, то очень быстро ориентируются в предоставленной информации противоборствующих сторон и разоблачают сторонников лунной аферы. Я для этого прикидывался дилетантом и выкладывал самые распространенные "факты" обмана, с просьбой разобраться и разьяснить положение дел. Как правило, почти никто не вникал в тонкости предоставленной информации от НАСА. Все довольно быстро заостряли своё внимание и замечали фальшивки из длинного списка  "фактов обмана" и после двух - трех разоблаченных фейковых доводов, остальные уже не рассматривали, вынося окончательный вердикт. ))  Среди астрономов вообще нет "немогликов". И нет таких, кто бы не знал о полете Аполлона с высадкой на Луну. Ну это и понятно, почему. Я утверждал именно о вранье, а не о заблуждении.  А какое может быть у наших  специалистов заблуждение по Аполлону??? Это люди, далекие от космонавтики могут в чем то заблуждаться, а у наших академиков и докторов подобные заблуждения исключены. Точно!  Это философское словечко встречается ещё и в математике.   Да какая разница, имела или не имела редакционная коллегия полномочий выступать авторами ?????  Ты хочешь сказать, что в этой книге, отредактированной академиками и докторами, описана конструкция Сатурна,  Аполлона, которые не летали на Луну и ровера, который не бороздил просторов её поверхности??    Остальное, чистой воды демагогия. Это не моё. В книге имеются все ссылки на литературу.
    • Мдя... ИИ не обманешь. Любимый вами Яндекс видимо хорошо вас изучил и выдаёт то, что вам действительно надо. Смиритесь и не дёргайтесь.
    • Питать сетевую ламповую радиолу от батареек - глупость и утопия. Так как аутентичный внешний вид уже похерен  (), то никакой антикварной ценности аппарат не представляет. Поэтому предлагаю следующее: Найти на месте специалиста с руками и головой, который удалит из неё ламповое шасси и внедрит вместо него схему современного тюнера с усилителем, которая потребляет в десятки раз меньше энергии, да и ловит радиостанции куда лучше. Органы управления и переднюю панель при этом сохранить. Заодно и внутри куча места освободится, хоть автомобильный аккумулятор можно будет засунуть.
    • У ТЭНа и материал другой, чем у лампочки, и  дельта температур холодный - горячий тоже сильно отличается (тем более, для "водяного" ТЭНа, он же не добела нагревается в баке). Так что, мизерное изменение сопротивления при нагреве можно вообще никак не учитывать.
    • Она как бы есть, но мнения о схеме неоднозначные. Недавно человек собирал здесь, предложили ещё несколько доработок.
    • Ты даже не представляешь, сколько известных людей за него голосовало и агитировало, которые сейчас готовы забить его чем попало насмерть!  Какие в адрес пуйла были в то время нарекания? Да никаких! То, что он патологический вор, стало позднее. Дальше сам знаешь...

  • Программатор ST-Link V2 для STM32

  • Similar Content

    • By Sambler
      У меня была похожая тема,  я решил проблему установив в include util/delay.h
      Но возникла еще одна ошибка, не могу понять, что оно хочет


      p.s. Я обещал, что предыдущая - последняя тема, но я ошибся, не думал, что тут 2 разные программы будут. В этот раз 100 процентов последняя тема и пойду сдавать работы Ы)

       

    • By Sambler
      Дана следующая программа и следующая схема.
      После запуска, циклично выдает одни и те же ошибка и до такой степени, что ПК не выдерживает нагрузку и приходится принудительно закрывать программу ( когда обычно, запустил программу и она не продолжает запускаться, а сразу указывает на ошибку в коде, а тут она даже не останавливается )
      При создании проекта выбираю WINAvr!!!



      Я не могу остановить симуляцию, приходится закрывать принудительно.
      Z
    • By Atreides
      Добрый день. Мне требуется реализовать программный юарт на атмеге16. Он нужен для того, чтобы принятые по нему данные отправить на аппаратный юарт. В интернете нашел примеры кода, но понять его мне трудно. Прошу вас словами в общих чертах объяснить принцип реализации программного юарта. Буду рад примерам, которые, на ваш взгляд, являются наиболее простыми и понятными. Заранее спасибо.
    • Guest Константин
      By Guest Константин
      Приветствую всех! Прошу помощи у вас, форумчане в программировании системы из 2х контроллеров atmega16, суть системы заключается в:
      Есть мастер и слэйв, это два отдельных омк
      всего 1 мастер и 2 слэйва
      Что входит в мастер: 1)настойка времени путем набора из 8 4 2 и 1 минуты(кнопки), выбор адреса, те кому будет послан сигнал, 1 или 2 слэйву, индикация ответа( красный диод если не ответил, зеленый если ответил в течении заданного времени), если ответ есть - зеленый, если ответа нет красный и кнопка полного сброса всех указаний, те возврат к исходной точке где никто не опрашивается
      Что входит в слэйв, это кнопка подтверждения, визуализация таймера ( те 4 диода, когда 1/4 времени прошла 1 тухнет итд) и если кнопка не нажата отправка информации о аларме
      собственно все
      те
      1 ввод адреса и времени
      2 отправка сигнала
      3 сигнал есть?
      3.1 (нет) аларм
      3.2 (зелень)
      Заранее благодарю!
      (popovkostya96@icloud.com)
    • By Max1201
      Код с помощью которого двигатель вращается в одном направлений по часовой стрелке.
      А нужно "составить программу на языке ассемблера для реверсивного управления электродвигателем постоянного тока". так написано в заданий
      Но я думаю можно новую не писать, а можно изменить эту так что бы двигатель вращался в одну сторону и потом в другую, наверно так. Помогите, а то я вообще не понимаю этот ассемблер(( 
      ;* На выходе OC1A МК АТmega16 получаем выходные импульсы ;* с частотой 50 Гц и коэффициентом заполнения g=0,025. ;* Тактовая частота MK AVR: 4 МГц .nolist .include"m16def.inc" .list .def STAT = r15 ;Регистр для хранения состояния главной программы .def WorkH = r16 ;Рабочий регистр для главной программы .def WorkI = r17 ;Рабочий регистр для прерывания от таймера .def AddLo = r18 ;Вспомогательный регистр для прибавления константы .equ Impuls = 9000 ;Число тактовых сигналов, соответствующее импултсу .equ Pause = 1000 ;Число тактовых сигналов, соответствующее паузе Reset: rjmp Initial ;Переход к части инициализации reti ;Внешнее прерывание 0 (не используется) reti ;Внешнее прерывание 1 (не используется) reti ;Прерывание по захвату (не используется) Timer1CompA: ;Прерывание CompareA для ATmega16 in STAT,SREG ;Сохраняем флаги главной программы in WorkI,TCCR1A ;Регистр управления А счетчика Т/С1 sbrs WorkI,COM1A0 ;Пропускаем следующую команду, если COM1A0 = 1 rjmp TC1 ;Пропускаем следующую команду, если COM1A0 = 0 cbr WorkI,1<<COM1A0 ;При следующем прерывании OC1A -> 1 out TCCR1A,WorkI ;Сохраняем новое значение in AddLo,OCR1AL ;Младший байт OCR1A subi AddLo,Low(-Impuls) ;Прибавляем младший байт значения импульса in WorkI,OCR1AH ;Старший байт OCR1A sbci WorkI,High(-Impuls) ;Прибавляем старший байт значения импульса rjmp IntEnde TC1: sbr WorkI,1<<COM1A0 ;При следующем прерывании OC1A -> 1 out TCCR1A,WorkI ;Сохраняем новое значение in AddLo,OCR1AL ;Младший байт OCR1A subi AddLo,Low(-Pause) ;Прибавляем младший байт значения длительности импульса in WorkI,OCR1AH ;Старший байт OCR1A sbci WorkI,High(-Impuls) ;Прибавляем старший байт значения длительности импульса IntEnde: out OCR1AH,WorkI ;Назад - старший байт нового значения out OCR1AL,AddLo ;Назад - младший байт нового значения out SREG,STAT ;Восстанавливаем старые флаги reti ;Выход из обработки прерывания CompareA Initial: ;Инициализация регистра ввода/вывода ldi WorkH,High(RamEnd) out sph,WorkH ldi WorkH,Low(RamEnd) out spl,WorkH ;Инициализируем стек clr WorkH ;Все разряды = 0 out PortD,WorkH ;Вывод в порт D ldi WorkH,$20 ;Разряд 5 - в 1, остальные - в 0 out DDRD,WorkH ;OC1A (PD5) - выход, остальные входы ldi WorkH,High(Pause) ;Старший байт значения паузы out OCR1AH,WorkH ;в старший байт регистра сравнения А ldi WorkH,Low(Pause) ;Младший байт значения паузы out OCR1AL,WorkH ;в младший байт регистра сравнения А ldi WorkH,$C0 ;OC1A -> 1 out TCCR1A,WorkH ;Сохраняем новое значение ldi WorkH,$02 ;Входной такт Т/С1 = такт сист. синхр./8 out TCCR1B,WorkH ;Запускаем Т/С1 ldi WorkH,$40 out TIMSK,WorkH ;Разрешаем прерывание CompareA sei ;Общее разряшение прерываний (разряд I) Haupt: rjmp Haupt ;Главная часть программы: ожидаем возникновения прерывания Программа работает двигатель крутиться по часовой стрелке, Препод сказал что на один вход мы сигнал подали теперь нужно его сохранить и подать на другой, на фотках схема подключения и установка




      В методичке это 4 лаба, там программа не та но теория та что и вновой методичке
      lab_rab_MK_AVR.pdf
×
×
  • Create New...