- Кейл51. Два варианта кода. Один дает глюки. Кейл проигнорил
volatile или я не смог тому внятно сказать что хочу?.. POV(234 знак., 11.02.2023 14:38, MCU, картинка, картинка, полностью)
- Так и должно быть! Вставьте между двумя присвоениями вызов
какой-нибудь фиктивной функции или хотя бы NOP. - Bill(13.02.2023 13:05)
- обоснуй - POV(13.02.2023 13:09)
- Вообще-то неплохо было бы на сгенерированный код взглянуть. Я думаю
так. Компилятор копирует переменную systick в какой-нибудь регистр,
а содержимое этого регистра копируется в обе переменные и далее
сразу идёт проверка условия. Другими словами. компилятор может
исходное выражение привести к виду Bill(137 знак., 13.02.2023 13:24 - 13:30)
- Если systick был объявлен как volaitle, то, вне зависимости от
того, куда класть его значение, вне зависимости от переменных temp,
должно быть обращение к systick принудительно. Простите, без
подписей что к чему, в асм-е Nikolay_Po(713 знак., 13.02.2023 14:15, ссылка)
- Топик пошёл по N-ому кругу. Кот уже был, всё там нормально
>>> SciFi(1 знак., 13.02.2023 13:28, ссылка)
- А как NOP этот гипотетический сценарий исправит? - POV(13.02.2023 13:28)
- Я когда на 51-м прогал, делал две вещи: 1) Обработчик от таймера
использовал отдельные банки регистров. Там их 4 было. 2) При чтении
таймера проверял "атомарный" флаг, который взводился в прерывании,
и если он был сброшен, то запрещал прерывания и считывал. - Звepoящep(13.02.2023 08:27)
- У вас кейл -51 следовательно MCS-51, следовательно атомарны только
чтения байтов. Вы читаете 4 байта, следовательно чтение не
атомарно, следовательно величина может изменится во время чтения.
При проверке temp!=systick время чтения systick больше чем при
temp2 =systick следовательно операция temp!=systick чаще приводитк
к глюкам, но это не значит что и код temp2 =systick тоже
безглючный. Вам нужно либо прерывания запрещать на время чтений
systick либо организовывать мютекс, Boвa(33 знак., 12.02.2023 10:09)
- А волатиле ваще не про это. Тут, походу, прерывания запрещать. - mse homjak(11.02.2023 23:42)
- Я бы с торону стека смотрел. Покажи, что выдаёт компилятор/линкер
после сборки - вот эту строчку: "Program Size: data=129.4 xdata=876
const=285 code=11864" И хорошо бы настройки/опции проекта глянуть:
Target и C51. Costic(1 знак., 11.02.2023 21:19, картинка)
- Листинг дизассемблера в студию. - SciFi(11.02.2023 21:04)
- По-моему, действительно глюк компилятора, если systic объявлен
volatile. - Nikolay_Po(11.02.2023 21:01)
- Не видно как объявлен systick. Он volatile ? - ЫЫyкпy(11.02.2023 14:59)
- volatile должен быть systick, для temp это бесполезно. Дальше надо
смотреть что в асме получилось - AlexBi(11.02.2023 14:56)
- Косяки смачные в компиляторах бывают:-) Писал на ПИКе
восстановление ошибок посредством БЧХ 31. 21, оказалось что с
переменной в 32 бита не работает вариант var32 = var 32 ^ 1.
Инверсия младшего бита. Как то иначе сделал. - Visitor(11.02.2023 14:53)
- Спрошу, на всякий случай про STM32F407VGT6. Пришли сегодня, один на
место F207 ого впаял, КЗ нет, как бы проверял соответствие. Вот
прошивка по DFU USB не работает, F207 в плате шился. Может
проглядел что то? Хотя, и F207 партии попадались, где 50 на 50. - Visitor(02.02.2023 19:08, MCU, полностью)
- встречались 205-е, в которых калибровки какие-то отсутствовали.
тоже не шились по DFU. некогда было искать, что ещё в них не так -
возвращали продаванам партиями - Vit(03.02.2023 06:00)
- были несколько партий 405х, по дфу не шились, только джитагом
(свд), все остальное работает. Считаю, либо какая та заказная
партия для кого то с отсутствующим (или измененным) дфу - 0men(02.02.2023 19:16)
- А USB в дальнейшем работает или нет? Для нас важно. Измененный вряд
ли, пуллапа нет, внешний напаял, комп булькает при подключении,
загрузчик проц не видит. Понятно, что булькать будет при подтяжке
линии ДП. - Visitor(02.02.2023 19:37)
- работает без проблем штатно - 0men(02.02.2023 19:40)
- Спасибо, обнадежили:-) Завтра проверять будем. - Visitor(02.02.2023 19:44)
- ? - Nikolay_Po(03.02.2023 17:55)
- См. выше:-) Причем, прошивку от 207 залили без перекомпиляции,
дивайс полностью прет. Программисты сами в шоке:-) - Visitor(03.02.2023 18:37)
- Спасибо! - Nikolay_Po(03.02.2023 18:37)
- Как бы радует, что все так просто, но осадочек то остался: в процах
даже коры разные, кортекс 3 и 4, совместимость, видимо. Ресурсы
используемые на плате: USB communication class, Ethernet rmii,
Uart, 8 ADC, 4 PWM, I/O. Все проверили, ОК, а где подвох? - Visitor(03.02.2023 19:08)
- А вот, может быть, есть тут кто с опытом общения с поделием
Infenion под названием TLE9867? Лыжи ваще не едут, ну или того-с. Бapбoc(51 знак., 09.02.2023 19:02, MCU)
- Добрался до AT32. Скачал примеры, шаблоны проектов дял разных
IDE... ничего не отрывается ))) китайцы такие китайцы... или может
что-то умудрился не так сделать?... POV(59 знак., 07.02.2023 12:13, MCU, картинка, полностью)
- Здравствуйте, продолжаю вебСервер для микроКонтролера: с сервером
http продвинулся, всё управляется. следующий этап- как браузере
собирать ответы сервера? хром юзаю - логи собираются, но как
получать сам контент и записывать его - опять совсем не понимаю.
помогите пожалуйста.... - cтpaтeг(07.02.2023 13:45,
, MCU, полностью)
- Прописи - может стоит начать использовать тег? Много граблей у
каждого собрано; почему бы не делиться о тех, про которые не жалко
рассказать? Мы же не все такие умные с рождения были, так? Dingo(246 знак., 06.02.2023 11:10, MCU, ссылка, ссылка)
- Проблема с RS-422. Помогите советом yни(1 знак., 30.01.2023 22:29, MCU, ссылка, полностью)
- Посмотреть несколькими лучами осциллографа Tyмблep(381 знак., 31.01.2023 12:55)
- Использую подтяжки, чтобы не было подобного головняка... - Гyдвин(31.01.2023 07:38)
- А в чем смысл объединения земель? Сигналы же дифференциальные, им
земли не нужны. Экран соединительного кабеля можно заземлить на
одном конце, и достаточно. - vpv.vpv(31.01.2023 07:21)
- Если синфазное напряжение (разность потенциалов земель) выйдет за
допустимые границы (формально это -7+12), тогда дифференциальный
вход перестанет работать. AlexBi(110 знак., 31.01.2023 09:01)
- Предел есть, да. Но если "свою" землю наружу никуда не
присоединять, то откуда синфазное напряжение на входах возьмётся?
Которые внутри притянуты к своей земле и питанию. - vpv.vpv(31.01.2023 12:22)
- Мы живём в океане электричества и не видим этого. Tyмблep(517 знак., 31.01.2023 15:00)
- Обычно все портят емкости в блоке питания. - AlexBi(31.01.2023 12:30)
- Правила хорошего тона предписывают интерфейс 422/485 делать
гальванически развязаным. Тогда синфазному напряжению просто
неоткуда будет взяться. - vpv.vpv(31.01.2023 12:54)
- Угу. Протяните Ваш кабель без земли рядом с выходными проводами
работающего частотника. Очень удивитесь. Гальваназвязка никак не
поможет от емкостной связи с источником помехи такой величины. - Yurasvs(02.02.2023 00:57)
- "Доктор, а зачем вы мне такие картинки показываете?" :))) Я думаю,
прокладывать кабель данных рядом с силовыми кабелями - очень плохая
идея. Если по-другому никак, то экранированый (STP) кабель
прокладывается в заземлённой металлической трубе. Тогда Ок. - vpv.vpv(02.02.2023 08:39)
- В жопу такого производителя, у которого оборудование без
экранированного кабеля в заземлённой металлической трубе не
работает. Nikolay_Po(494 знак., 03.02.2023 17:53)
- странно это всё слышать - Кабели экранируем, трубы заземляем. в конце нулевых имел дело с электрическими литьевыми машинами
EMOULD(Германия). в литьевой машине четыре BLDC движка - 3х15квт,
1х30квт. никаких труб, только экранированные кабели что силовые,
что сигнальные. работало как часы 24/7. - m16(03.02.2023 22:04)
- Есть хорошая книжка Дж. Барнса "Электронное конструирование: Методы
борьбы с помехами". 1987 год. Про кабели, экраны, общие провода,
обратные токи, помехи, и т.д. и т.п. С графиками, формулами и
картинками. По мне, книга очень полезная в плане понимания картин
происходящего и развенчивания суеверий. :-)) - vpv.vpv(06.02.2023 08:59)
- Лучше перестраховаться. Пример - весовая платформа. Кабель от
весового преобразователя к контроллеру экранирован. А чтобы
гарантировать хорошую заземлённость платформы, заземляется стальная
труба - кабель канал. Получается, тройная защита: заземление по
трубе - раз, экранирование сигнального кабеля - два, гальваническая
развязка приемопередатчиков - три. Nikolay_Po(224 знак., 04.02.2023 15:12)
- всегда вопрос питания в данной гальванической развязке. Раньше (по
крайней мере) брали просто отдельную вторичную обмотку силового
трансформатора 50Гц. И на том конце - так же. И начинает работать
емкость между вторичной и первичной обмотках каждого из
трансформаторов. И через нее при неудачном стечении обстоятельств
вполне реально получить между общими проводами 7-10 вольт. Это и
будет синфазным - Лaгyнoв(31.01.2023 15:39)
- Наличие конденсатора между цепями делает эти цепи гальванически
связанными или нет? - AlexBi(31.01.2023 15:02)
- Вон у меня лежит переходник на adm2587. Короткие пакеты через него
проходят, а данные по dmx512 нет. Землю цепляю - начинает dmx
работать. Как-то изоляция не помогла. Длина провода полтора метра. - POV(31.01.2023 12:56)
- не совсем так - это для RS-485. да, в данном случе верно, потому
что у ТС по факту 4-х-проводный вариант включения RS-485, а не
RS-422 Vit(1 знак., 31.01.2023 10:10, ссылка)
- У объединения земель свои минусы. Там может быть такой перекос, что
выжгет источники. Поэтому соединяют не напрямую, а через 20...50
Ом. Но тогда опять же при серьезном перекосе синфазное выскочит за
пределы. Когда я впервые 20 лет в импортных колонках столкнулся с
RS422, то удивлялся 5-му контакту, куда был выведен общий провод.
Но его ни разу нигде не подключали. :-) - Лaгyнoв(31.01.2023 09:12)
- Сначала разобрались бы с коротким стопом. Обычно это неправильное
управление переключением передача/приём. А ещё вроде как TE) в
LTM2881 подключается встроенный терминатор - на прекосах из-за
номиналах резисторов обвязки можно огрести - Vit(31.01.2023 04:54)
- Rx подтянута к плюсу? - POV(31.01.2023 00:48)
- Нихрена не понятно, если честно. Осциллограф надо с батарейным
питанием. И смотреть оба провода диф линии. - Evgeny_CD(31.01.2023 00:22)
- Всем доброго дня. DGW_65(280 знак., 31.01.2023 13:58, MCU, полностью)
- Всем привет! Коллеги, может у кого есть документ ISO/IEC
9798-2:1999 и есть возможность поделиться им? - vesago(30.01.2023 10:16, MCU, полностью)
- Здравствуйте, пишу вебСервер для микроКонтролера, может есть где
готовые формы типо переключателя , окна ввода данных, битового
поля=много кнопок с фиксацией. или где посмотреть , мож есть где
готовые формы для АСУТП. пытаюсь читать разбираться с html . а там
дальше упираешься в джаваСкрипт, который совсем не знаю - cтpaтeг(18.01.2023 12:48,
, MCU, полностью)
- Мне с js сильно помогло начать Andreas(1 знак., 18.01.2023 13:33, ссылка)
- Вот ссылка в помощь, сам пользуюсь, когда лезу в HTML Dingo(1 знак., 18.01.2023 13:24, ссылка)
- В голом HTML есть радиокнопки, выпадающие списки, галочки, наконец.
А жабаскрипт учите, тут без вариантов. - SciFi(18.01.2023 13:14)
- Всем привет! Коллеги, может кто знает QT? Мучаюсь - пытаюсь
получить экзешник из проекта Вроде он собирается в Qt 4.8.6 с
компилятором MinGW 4.8.2. Я скачал и настроил как в статье Добавил
в креаторе скачанный проект с гитхаба. Но что не делаю - экзешник
не собирается и программка не запускается. Как бы сдвинуть это дело
с мертвой точки? vesago(2 знак., 29.01.2023 12:48, MCU, ссылка, ссылка, полностью)
- Для справки...Пришел сегодня заказанный клон WCH-Link на чипе
CH549G (по ссылке). Заказывал дабы под руками было хоть что-нить
для RISC-V. Гyдвин(284 знак., 26.01.2023 23:40, MCU, ссылка, ссылка, полностью)
- Прикупил для макета OLED на контроллере SSD1362. Никому случайно не
попадались исходники драйвера для такого контроллера не на Rust или
Python? - AlexG(22.01.2023 20:28, MCU, полностью)
- Коллеги кто c ARTERY имел дело, по средством отладки кто ни будь
может просветить? В частности кто чем пользуется и обязательно JTAG
весь трассировать больно громоздкий получается, или можно SWDIO и
SWCLK только задействовать сразу. - PeterD(17.01.2023 15:02, MCU, полностью)
- авторы периферии микроконтроллеров ST упыри!! таймеры доставляют
радость как при посещении зоопарка с облезлыми животными в период
авитаминоза klen(3071 знак., 14.01.2023 18:10, MCU, картинка, полностью)