Перейти к содержанию

Вывод информации из микроконтроллера в Excel. 


Юрий_Нд

Рекомендуемые сообщения

Доброго вечера Всем.
Интересует вывод информации из микроконтроллера о напряжении непосредственно в Excel на компьютере. 
Это в принципе возможно?
Если да, тогда сориентируйте пожалуйста, в какую сторону "копать"?
Спасибо ___________ Юрий.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

4 минуты назад, Юрий_Нд сказал:

Это в принципе возможно?

Возможно.

4 минуты назад, Юрий_Нд сказал:

в какую сторону "копать"?

Копайте в сторону передачи данных в ПК. А в какой он будет файл записывать - это уже дело тридесятое ...

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Видится мне не вы первый таким вопросом задались, только в гугл еще не ходили

https://www.google.com/search?client=firefox-b-e&q=com+port+to+excel

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

Самое простое txt. Вряд ли ТСу нужны в ячейках формулы, а такстовую таблицу, разбитую tab'ами, эксель импортировать умеет. Просто отправляете через UART форматированную строку, а на стороне компа сохраняете ее в файл. Грубо говоря, на стороне контроллера так:

sprintf(buf, "%u\t%u\t%u\n", adc_val, timer_val, another_val);
UART_puts(buf);

А на стороне компа так:

$ cat /dev/ttyUSB0 > file.txt

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

27.09.2021 в 21:56, Piotr__1 сказал:

в гугл еще не ходили

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

14 часов назад, COKPOWEHEU сказал:

Вряд ли ТСу нужны в ячейках формулы

ТСу нужны в ячейках значения из АЦП.
-------------------------------------

COKPOWEHEU, хотелось бы понять общую концепцию "этого дела", насколько я понимаю:
1. Микроконтроллер должен по какой-то программе, допустим С, посылать данные в Ком-порт (или USB0?);

14 часов назад, COKPOWEHEU сказал:

sprintf(buf, "%u\t%u\t%u\n", adc_val, timer_val, another_val);

UART_puts(buf);

2. А это кто выполняет? 

14 часов назад, COKPOWEHEU сказал:

$ cat /dev/ttyUSB0 > file.txt

Какой-нибудь "исполняемый файл-батник*"?

3. Excel считывает данные из txt файла;
4. Обмен данных должен происходить по какому-то стандартному протоколу?

---------------------------------------------------------------------------------------------------------------------------

* Прошу прощения если сильно "нахомутал" с терминами.

Изменено пользователем Юрий_Нд
Ссылка на комментарий
Поделиться на другие сайты

10 часов назад, Юрий_Нд сказал:

Если знаешь, что искать, тогда конечно, нет проблем.

Неа, тут надо знать КАК искать. Даже когда не знаешь что ищешь, можно искать от общего к частному и параллельно изучить пару похожих вопросов, очень часто помогает.

10 часов назад, Юрий_Нд сказал:

А это кто выполняет? 

Консоль Linux. И предваряя ваш вопрос: а вы не уточняли в какой ОСи работаете, может вообще на МАКе.

10 часов назад, Юрий_Нд сказал:

4. Обмен данных должен происходить по какому-то стандартному протоколу?

Нет. И со стороны микроконтроллера и со стороны компьютера вам придется думать над этим сами. Если конечно вы не найдете уже готовое решение для компьютера, тогда протокол уже будет определяться этой программой.

З.Ы. Excel умеет работать с CSV файлами, их можно генерировать на флешку силами контроллера.

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

11 часов назад, Юрий_Нд сказал:

1. Микроконтроллер должен по какой-то программе, допустим С, посылать данные в Ком-порт (или USB0?);

А сумеете послать на USB? Просто UART (COM-порт) попроще будет. Но в целом да, контроллер просто шлет данные по какому-нибудь протоколу.

11 часов назад, Юрий_Нд сказал:

2. А это кто выполняет? 

Компьютер, очевидно. Ну то есть вы подключаете устройство к компу и запускаете чтение всех принятых данных в текстовик. Можно вручную, можно какой-нибудь скрипт настроить.

11 часов назад, Юрий_Нд сказал:

3. Excel считывает данные из txt файла;

Скорее импортирует файл целиком. То есть когда вы записали все что хотели, просто открываете текстовый файл экселем.

11 часов назад, Юрий_Нд сказал:

4. Обмен данных должен происходить по какому-то стандартному протоколу?

В моем примере этим стандартным протоколом служит UART, но при желании можно и другие использовать. Просто это самый простой.

11 часов назад, Юрий_Нд сказал:

А если даже не понимаешь что искать

Если у вас возникают проблемы уже на этом этапе, советую остановиться и поработать с железом. То есть настроить контроллер чтобы он передавал в компьютер хотя бы один байт. И соответственно настроить компьютер, чтобы он этот байт принял.

Для контроллера ищите по ключевым словам AVR, UART.

Для компьютера "com-порт".

1 час назад, Piotr__1 сказал:

может вообще на МАКе.

А на маке порты называются по-другому? UPD: похоже, что да - /dev/cu.*

1 час назад, Piotr__1 сказал:

Excel умеет работать с CSV файлами, их можно генерировать на флешку силами контроллера.

А зачем? Для задачи ТСа и текстовиков за глаза хватит

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

19 минут назад, COKPOWEHEU сказал:

А сумеете послать на USB? Просто UART (COM-порт) попроще будет.

Так у меня так и было написано, везде последовательный COM-порт. 
Просто я увидел Вашу запись, командную строку:

28.09.2021 в 10:21, COKPOWEHEU сказал:

$ cat /dev/ttyUSB0 > file.txt

... и подумал, что Вы здесь имели в виду USB порт.

1 час назад, Piotr__1 сказал:

вы не уточняли в какой ОСи работаете

Старая добрая семёрочка, Windows 7 *64.

32 минуты назад, COKPOWEHEU сказал:

настроить контроллер чтобы он передавал в компьютер хотя бы один байт.

А вообще реально, чтобы Proteus 8.9  "сэмулировал" COM-порт в Windows 7 *64?
Или это уже слишком, с моим аппетитом?

Ссылка на комментарий
Поделиться на другие сайты

вполне реально это сделать в Протеусе, но нужно поставить еще одну программу (приложение), не помню, как называется, но легко ищется в инете.

эта программа создает соединение (мост) между Протеусом и системой.

Мудрость приходит вместе с импотенцией...

Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.

Ссылка на комментарий
Поделиться на другие сайты

5 минут назад, КЭС сказал:

Да

Правильно ли я понимаю, что Proteus с утилитой com0com позволит мне "протестить" только внешнюю сторону, то есть микроконтроллер.
А что делать с батником со стороны компьютера?

Ссылка на комментарий
Поделиться на другие сайты

17 минут назад, Юрий_Нд сказал:

А что делать с батником со стороны компьютера?

Для  W7 нужна программа, как на Linux не получится. Либо воспользоваться для записи функционалом какого нибудь "com port toolkit", либо писать самому. Проще всего воспользоваться Python. В нем можно наверно в строк двадцать уложиться, если без изысков. Если с изысками, писать сразу в формат xls, то на строк пять может и больше.

Ссылка на комментарий
Поделиться на другие сайты

5 минут назад, dasZebra сказал:

Проще всего воспользоваться Python

Ранее была сообщение:

28.09.2021 в 10:21, COKPOWEHEU сказал:

$ cat /dev/ttyUSB0 > file.txt

Это тоже Python?

 

Ссылка на комментарий
Поделиться на другие сайты

Нет, это команда cat  командной строки (консоли) Linux берет что то и "выводит" куда то. В W  есть что то подобное, в PowerShell-e.  Но это прям  костыли

Ссылка на комментарий
Поделиться на другие сайты

11 часов назад, Bobius сказал:

А обязательно в ексель?

... что можете предложить, как альтернативу?
Да мне в принципе не обязательно Excel.

Главное, как я думаю, чтобы внешние данные хоть как-то пролезли через Компорт и поселились/обосновались на компьютере.

Ссылка на комментарий
Поделиться на другие сайты

Для начала разберитесь с аппаратной частью: сделайте в железе или в симуляторе (например, в Протеусе). Для тестирования подойдет любая терминальная программа (Hyperterminal, Putty и т.д.). Когда (если) это сделаете, помогу с программой для винды, сохраняющую данные в файл. Я бы вообще скидывал в базу данных, если в дальнейшем требуется сортировка, поиск или другая обработка данных.

Ссылка на комментарий
Поделиться на другие сайты

я себе купил esp01 за 100 рублей и в нем сделал веб интерфейс, можете в него слать с мк, и потом коннектиться хоть с компа хоть с телефона по ип и все, можете даже прилу на флаттер сделать и собрать в виндовс/веб/мак/исо/андроид, там надо будет 20 минут делов :)

Вообщем потом без подключений к usb и виртуальных com портов открыли как веб страницу (по ид или виртуальному домену прописанному в хост или даже через всемируню паутину), на ней же можете сделать кнопку скачать файл, и сгенерировать свой xml, csv, ...  любой другой какой пожелаете 

Изменено пользователем DrobyshevAlex
Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, КЭС сказал:

помогу с программой для винды,

Спасибо за интересное предложение, обязательно воспользуюсь, но я хочу побольше самостоятельности. Очень интересно самому разобраться в этом деле.
Поэтому первый, возможно глупый вопрос, Вы говорите:

2 часа назад, КЭС сказал:

Для начала разберитесь с аппаратной частью

1. Допустим, я уже знаю, как с помощью микроконтроллера мигать лампочками на выходе. И программно, и в железе. Этого разве недостаточно?
2. Что нужно ещё, чтобы послать через последовательный Ком-порт первую серию байтов?
3. Я так понимаю, что нужно ещё как-то "подключить библиотеку UART протокола?"
4. По-моему, нужно открывать новую тему, типа работа АВР по UART протоколу?

---------------------------------------------------------------------------------------------------------------------------------

1 час назад, DrobyshevAlex сказал:

esp01

Вы имеете в виду wi-fi модуль Arduino?

... можете дать ссылку именно на Вашу "модель"?

Изменено пользователем Юрий_Нд
Ссылка на комментарий
Поделиться на другие сайты

6 минут назад, Юрий_Нд сказал:

можете дать ссылку именно на Вашу "модель"?

Какая разница какая модель. Суть в том что это модуль вайфай. Можете другой взять. Суть в том, чтоб не кодить под ОС типа виндовс. Я например никогда с юсб не работал, один раз глянул офигел скок кодить и даже не стал пробовать) Мне проще было в ESP8266 вшить генерацию хтмл/жс кода страницы и это не дороже чем купить юсб шнур)

Посто предложил как вариант, может устроит, особенно с точки зрения что все вшито в платку вашу, и софт на пк никакой вообще не нужен) Кроме браузера)) Но он везде есть)

 

Я себе еще и ноги ей добавил дополнительные)) Но есть платки сразу куча ног)

vyklyuchatel-na-esp-01-vid-sverhu.jpeg

ESP кстати АЦП имеют вроде тоже на борту, беглый просмотр темы не дал ответа что за девайс :) Но если н ужен например АЦП то одного мк ESP8266 даже может хватить и как измеритель напряжения и как веб сервер. Друг вон заморочился еще и вебсокеты реализовал в нем самодельные) чтоб в реалтайме наблюдать все изменения) 

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, Юрий_Нд сказал:

альтернативу

LogView

Для людей, которые пишут "мФ" вместо "мкФ", в аду приготовлен отдельный котёл. 1 мФ = 1000 мкФ.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...