• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

CH582M (СH581, CH582, СH583)

pvvx

Активный участник сообщества
Когда-то, в четвертой половине того века с отладочными средствами было всё плохо. Потом слепили Jtag и прикрутили его к детским чипам. Отладка через него в основном развилась из STM32, для самых маленьких, которые только начинают и ещё ничего не шарят. Спустя четверть века эти “пердуны”, привыкшие только к этому до сих пор тянут детей на это убожество. И без наличия любимого отладчика не могут вообще ничего, аж по данному критерию выбирают чипы...
 

pvvx

Активный участник сообщества
"Любой GCC, ARMC да даже мертворожденное убожество от C-Sky (W806 - которое вы так хвалили) при компиляции в настройках компилятора просто ставим поддержку отладки и, спокойно отлаживаем, отладили выбираем Release в соответсвующих настройках."
И как же переключить "в настройках компилятора" "поддержку отладки" если нет WCH-Link и либы все блоб, а сам WCH-Link не врубается что чип спит или программа умерла из-за останова прерываний и WDТ?
И нафига отлаживать какую-то не Release версию? Очень похоже на детсад - "отлаживаем чужие готовые примеры" :)
Вы занимаетесь реверс-инжинирингом - тогда всё делается совсем по другому, используя специальные методы и ПО. Jtag тут на последнем счету.
 

pvvx

Активный участник сообщества
@sed_alex - О, я наконец понял вашу зависимость - вы используете только чужое, заранее подготовленное и только если вам разжуют и в рот положат на примерах воспринятых в вашем детстве при игре в STM32.
Ну ждите когда вам pecherskih слепит то, что вы будете “отлаживать” путем переключения кнопочек в навязанной IDE :)
 

pvvx

Активный участник сообщества
Только в виде графиков там ничего нет.
А как отображать real-time график с частотами отсчетов в десятки МГц? Взять к примеру PC.
Для этого надо буферизировать поток. BDT может считать буфер и его можно посмотреть...
А для детей есть очень большая масса всяких графико-строителей находу из вывода циферек в COM порт. Особенно для Arduino. Поищите сами и найдете какой вам больше понтравится.

 

pvvx

Активный участник сообщества
Для бинарного потока из USB-COM проще написать самому.
Вам вроде нужно выводить с ADC и быстро, тогда и на это у Chrome есть API.
Пример - вывод 16 битных данных от ADC со sweep генератора пилы, но сформированных в блоки с заголовком (кто-же знает как вы выводите(?)) на 50 кГц

 

pvvx

Активный участник сообщества
А более хитрыми вещами отладки тут никто из местных не поделиться. Они жмоты и обременены предрассудками.
А я - если будут запросы и время причесать код и как всегда всё будет кое-как, т.к. это отладка и не готовые вещи...
 

sed_alex

New member
Вы о чем? Об снифере BLE в Wireshark?
Или вас смущает нормальный отладочный лог, принятый везде при нормальном программировании?
У вас плохо со всем связанным с электроникой и программированием. Наверно только вчера взяли первый чип в руки... Потыркаетесь и поймете.
У меня есть аппартный BLE Анализер ибо я не люблю страдать ерундой, там где этого можно избежать..
Слишком уж вы легко судите о незнакомых людях :)

P\S
Когда-то, в четвертой половине того века с отладочными средствами было всё плохо. Потом слепили Jtag и прикрутили его к детским чипам. Отладка через него в основном развилась из STM32, для самых маленьких, которые только начинают и ещё ничего не шарят. Спустя четверть века эти “пердуны”, привыкшие только к этому до сих пор тянут детей на это убожество. И без наличия любимого отладчика не могут вообще ничего, аж по данному критерию выбирают чипы...
Исправьте люди же засмеют :) Половина не может быть четвертой она или первая или вторая.
Ну и не плохо было бы перед тем как писать ахинею , проверить информацию (Компания STM обьявила о выпуске линейки STM32 в октябля 2006 года) https://en.wikipedia.org/wiki/STM32
 

pvvx

Активный участник сообщества
У меня есть аппартный BLE Анализер ибо я не люблю страдать ерундой, там где этого можно избежать..
И что же это за чудо такое? "аппарАтный BLE АнализАТОР"?
На основе SDR и анализатора спектра?
Исправьте люди же засмеют :) Половина не может быть четвертой она или первая или вторая.
А пофиг - я тут не статью пишу. Но смысл понятен.
Ну и не плохо было бы перед тем как писать ахинею , проверить информацию (Компания STM обьявила о выпуске линейки STM32 в октябля 2006 года) https://en.wikipedia.org/wiki/STM32
Очередной писатель - где я написал, что STM32 появился в том веке?
"Отладка через него в основном развилась" в детских кругах ...
 

pvvx

Активный участник сообщества
Слишком уж вы легко судите о незнакомых людях :)
По теме то ничего нет и не видать. Значит выдохлись и на сегодня это и то и есть. А что было, то сплыло.
Век жизни чипов и подходов к ним очень мал... и информационное ускорение всё больше и больше :p
 

aloika

Active member
У меня есть аппартный BLE Анализер
Это, наверное, жуть как дорого.

Программа классная, что я и хотел. Для моих целей пока вполне достаточно. Она даже блоками умеет выводить. Спасибо, что подсказали, что надо просто поискать :)
 

brain13

New member
Коллеги, добрый день!

Подскажите кто-либо разобрался с АЦП на CH583?
Спотыкаюсь на пустом месте. Мне нужно померить напряжение питания. Собственно вызываю ADC_InterBATSampInit();
Но результаты очень странные. И я не могу понять откуда такие формулы в даташите в этой вот табличке.
Сможет кто-нибудь пояснить?
Спасибо!
1674899106806.png
 

pvvx

Активный участник сообщества
C:
    int16_t RoughCalib_Value;   // Значение отклонения грубой настройки АЦП
    uint16_t result;
    uint32_t vbat;

    ADC_InterBATSampInit();
    RoughCalib_Value = ADC_DataCalib_Rough(); // Используется для расчета внутреннего отклонения АЦП и записи его в переменную RoughCalib_Value Обратите внимание, что эта переменная должна быть определена как переменная со знаком
    ADC_ChannelCfg(14);  // 0Eh: напряжение батареи VBAT;
    result = ADC_ExcutSingleConver() + RoughCalib_Value;
    vbat = (result / 512 - 3) * 1.05 * 1000;
    printf( "channel 14 = %d , %d mV\n", result, vbat);
 

brain13

New member
pvvx, спасибо!
Я точно так же и сделал. И у меня на 3.6В батарее показывает 3.5. Хотя на 3.3В показывает 3.3В. На 3.2 показал 3.05.
То есть показывает что-то близко, но не то.

А откуда взялось "-3" в формуле не подскажете?
 

pvvx

Активный участник сообщества
Это перевод с китайского форума.
vbat = (result / 512 - 3) * 1.05 * 1000;
Не понятно, зачем используют числа с плавающей точкой для целочисленных действий и как на это среагирует компилятор.
Я бы написал vbat = (result / 512 - 3) * 1050; для однозначности.
 

pecherskih

Member
@sed_alex - О, я наконец понял вашу зависимость - вы используете только чужое, заранее подготовленное и только если вам разжуют и в рот положат на примерах воспринятых в вашем детстве при игре в STM32.
Ну ждите когда вам pecherskih слепит то, что вы будете “отлаживать” путем переключения кнопочек в навязанной IDE :)
А-ха-ха-ха. PVVX - местный самородок. В одном сообщении умудряется плюнуть сразу в двух участников форума :) Вы - мой Герой :ROFLMAO: Умеете в начале рабочей недели поднять настроение. Так держать (y)
 

pvvx

Активный участник сообщества
А-ха-ха-ха. PVVX - местный самородок. В одном сообщении умудряется плюнуть сразу в двух участников форума :) Вы - мой Герой :ROFLMAO: Умеете в начале рабочей недели поднять настроение. Так держать (y)
Это не плевки, а мотивация.
Если вас не гонять, то вообще обленитесь. Будете сидеть и глазеть на свою печку, аж дрова закинуть забудете...
 

brain13

New member
Добрый день!
Помогите, пожалуйста.

Собрал первую платку на 582F - не заводится. Пробовал 3платы, все ведут себя одинаково.
Померил напряжения, на всех ногах питания 3.3В, на VINTA - 1.05.
На EVT вроде так же (пока DCDC не включишь).

EVT при подаче питания на 40мс поднимает ногу PB22 (BOOT) в единицу, чтобы понять заходить ему в boot или нет. Моя плата ногу не поднимает.
По USB не определяется, отладчик тоже чип не видит.

Кто запускал платы подскажите, может есть хитрости?
Прикрепляю схему, может кто-нибудь увидит ошибку?

1675349972493.png
 
Сверху Снизу