Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

STM32F4. Урок 26 - Передача данных АЦП на ПК

Данная библиотека предназначена для связи устройства с компьютером и передачи измеренных значений АЦП в программу "Logview.exe" (например график заряда батареи в данный момент или в динамическом режиме и т.д.).
Программа "Logview.exe" находится в свободном доступе на сайте. Данные передаются микроконтроллером в формате ASCII на компьютер через RS232. Полученные данные измерений могут либо сразу отправляться на ПК, либо формироваться в пакет для последующей отправки на компьютер (зависит от настроек в прошивке микроконтроллера). Это позволяет передавать данные многократных измерений, а масштабирование на себя возьмет компьютерная программа.

Примечание: Настройки в LogView должны совпадать с настройками микроконтроллера. Таким образом, если (как в примере) передается данные двух АЦП, LogView также должен быть настроен на два канала, иначе отображение будет некорректным. К проекту приложено три ini-файла для настройки приема данных.

Пример использования:

Требования:

   Подключаемые модули CooCox-IDE: Retarget_printf
   Поддерживаемые библиотеки: STM32_UB_UART

Функции:

ErrorStatus UB_Logview_Init(uint8_t kanal_anz);  // инициализация
void UB_Logview_SendFrame(UART_NAME_t uart);     // отправка данных в Logview.exe

Пример использования:

//--------------------------------------------------------------
// File     : main.c
// Datum    : 29.03.2013
// Version  : 1.0
// Autor    : UB
// EMail    : mc-4u(@)t-online.de
// Web      : www.mikrocontroller-4u.de
// CPU      : STM32F4
// IDE      : CooCox CoIDE 1.7.0
// Module   : CMSIS_BOOT, M4_CMSIS_CORE
// Funktion : Demo der Logview-Library
// Hinweis  : Diese zwei Files muessen auf 8MHz stehen
//              "cmsis_boot/stm32f4xx.h"
//              "cmsis_boot/system_stm32f4xx.c"
//--------------------------------------------------------------

#include "main.h"
#include "stm32_ub_logview.h"
#include "stm32_ub_adc1_single.h"


void Delay(volatile uint32_t nCount){
  while(nCount--) {
  }
}


int main(void)
{
  uint16_t adc_wert;

  SystemInit(); // Инициализация настроек кварца

  // Инициализация  Logview для работы с двумя каналами
  UB_Logview_Init(2);

  // Инициализация АЦП
  UB_ADC1_SINGLE_Init();

  while(1)
  {
    // измерение АЦП на PA3
    adc_wert=UB_ADC1_SINGLE_Read_MW(ADC_PA3);
	// Отправка полученных значений в Logview по каналу 0
	LOGVIEW.kanal[0]=adc_wert;
    // измерение АЦП на PС4
    adc_wert=UB_ADC1_SINGLE_Read_MW(ADC_PC4);
	// Отправка полученных значений в Logview по каналу 1
	LOGVIEW.kanal[1]=adc_wert;
	// отправка обоих измеренных значения через UART (PA2)
	// Отправить в Logview.exe
	UB_Logview_SendFrame(COM2);

	// небольшая пауза
	Delay(500000);
  }
}

В приложении проект CooCox и отдельная библиотека для использования в других проектах. Автор оригинала статьи просит задавать вопросы на его сайте на немецком или английских языках.

Оригинал статьи

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (1) | Я собрал (0) | Подписаться

0
RomulRS #
Автор молодец. Но мне кажется, что эти уроки немного суховаты. Не хватает реальной реализации. Начали бы делать например робота. И писали, сегодня научим его принимать данные от такого-то датчика, завтра от другого, послезавтра подключим драйвер двигателя, а потом через micro-usb будем передавать данные на ПК (а не RS232. Кто им вообще пользуется?). Это было бы гораздо интереснее. А там Wi-fi и т.д.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Программатор Pickit3
Программатор Pickit3
Конструктор для сборки: предусилитель на лампе 6N3 Конструктор регулируемого преобразователя напряжения LM317
вверх