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

Вопросы от начинающих по МК


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

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

Ой не простое это дело

Если изобретать велосипед. то непростое, а если брать готовые реализации для определенной платформы, то сама вычислительная часть вполне себе по силам каждому - разобрать,понять.

Опять же есть две РАЗНЫХ по сложности задачи. Просто генерация трехфазного синус-ШИМа и подключение аппаратного входа защиты соответствующего ШИМ модуля МК, а есть задача векторного управления двигателем. Последняя требует DSP контроллера с приличной производительностью. Но и этот вариант разобран по косточкам в аппнотах.

戦う前に相手のベルトの色に注目

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

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

  • Ответов
  • Создана
  • Последний ответ

Топ авторов темы

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

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

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

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

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

У меня такой вопрос.Есть желание научится писать программы для компьютера,которые бы взаимодействовали с МК.Вот сейчас хотелось бы попробовать передавать с компа 0 или 1 и МК бы выполнял определенные действия после получения этих данных(пока передаю данные с терминала).Или сделать простенький регистратор,который бы отмечал на графике значение байта,который МК будет передавать раз в 10 минут(типа температура за окном или другие данные).Можете посоветовать какие-нибудь программы простенькие или только VS и изучение C++ мне в этом помогут?

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

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

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

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

Боюсь, сочтут за рекламу, но я для себя давно выбрал purebasic и не жалею. Есть русскоязычный живой форум, там найдешь ответы почти на все вопросы, а не найдешь - подскажут.

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

Наиболее распространенное решение - С/С++. Не обязательно VS: тот же gcc более переносим и портирован на кучу платформ: AVR, ARM, даже на win32/64. Если не планируете программировать контроллеры, возможно, лучше будет не сам Си, а его производные - Java, C#. В знаменитой Ардуине (хоть пользоваться их библиотеками и не стоит) используется g++ (gcc C++). А бейсик или паскаль - не программируют на них почти, труднее будет найти библиотеку или помощь, да и при дальнейшем изучении контроллеров придется изучать кучу диалектов.

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

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

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

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

или паскаль

Я по-старинке Delphi 7 использую. Вполне нормально получается. За 64-битностью не гонюсь. Невероятно огромный плюс в том, что существует просто море океановидное всяких компонентов, которые позволяют предельно просто получать желаемый интерфейс с блэкджеком и женщинами с низкой социальной ответственностью. Если совесть слишком нежная, можно юзать Лазарус+freepascal - почти полная совместимость на уровне исходников с Delphi, но более тормознутая, более глюковатая и выдающаяя более монстровидный код штука. Зато почти кроссплатформенная...

А GCC прикрутил к Eclipse, чтобы на скорую руку алгоритмы на Си отрабатывать ну и быстренько консолные утилитки делать для проверки микроконтроллерных вещей. Не представляю, как сделать оконный интерфейс на GCC... точнее представляю, но категорически не желаю это делать вручную.

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

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

8 часов назад, BiBOX сказал:

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

Когда-то тоже начинал эту тему осваивать самостоятельно и с нуля. Сразу для себя решил: язык только С++, чтобы одновременно осваивать программирование МК не только на асме, но и на Си. Поскольку целью было достигнуть хотя бы полупрофессионального уровня, то в качестве основы стал осваивать C++Builder6. Путь довольно длинный и тяжелый, особенно когда под рукой нет учителей, но зато теперь неплохо получаются комплексы из измерительного прибора с МК и управляющей программы на ПК. Современный программный интерфейс, документирование результатов, обработка данных. Довольно заманчивые перспективы, чтобы потратить на это время и силы.

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

Билдер хорошая штука когда то была. Но нынче не поддерживается и фактически прекратила свое существование как среда программирования. Честно говоря это печально. Я был бы очень рад продолжению банкета.

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

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

Только что, mail_robot сказал:

Я был бы очень рад продолжению банкета

В качестве продолжения сейчас Embarcaderro RAD Studio - может все: от Java до С++ с промежуточными остановками на паскале, и под все - от 32-битной Windows до 64-батной Linux.

Такая ж хрень, скажу я вам...

Изменено пользователем ARV

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

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

Лично для меня отсутствие поддержки Билдера совершенно не критично. Билдер образца 2002 года вполне достаточен. Отсутствие каких-то супермодерновых компонентов меня не трогает. Код из-под билдера в общем-то не конфликтует даже с самыми крайними версиями винды, за исключением некоторых мелочей. То, что формы выглядят в старомодном стиле ХР меня тоже не волнует. Главное, что я себя в нем чувствую достаточно комфортно и уверенно, коды получаются рабочие. Больше ничего и не надо.

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

Я раньше тоже Delphi занимался. Даже параллельный программатор на базе его делал. Вынул ресурсы из бластера и вставил в свое приложение. Получилось очень похоже.

58dff4736d79d_.png.eb5ef50aebf021edf8fedf3ed0bf71cb.png

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

16 минут назад, Геннадий сказал:

тоже Delphi занимался. Даже параллельный программатор на базе его делал

Эх, времена были... Я пострашнее программатор делал: http://arv.radioliga.com/content/view/30/44/

 

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

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

  • 2 недели спустя...

Доброго дня!

 Уже поднимал вопрос об этом месяца 3 тому назад. За это врем так и ничего не смог сделать.

термометр : LM335Z, mega 8.     В Proteus'e всё идеально, а в железе показания скачут, аж иногда на 10 градусов

вот схема и код.

еще в железе R1 нужно убирать иначе не реагирует. Менял мегу и датчик все тоже самое. Может в коде дело?

 

/*
 * ТЕРМОМЕТР -50°С... +100°С
 * t°_ metr
 * Created: 12.06.2016 16:52:09
 * Author : на основе уроков Alex Kobzar
 */ 


#define F_CPU 8000000		// укажем частоту процессора  для функции задержки _delay_ms();
#include <avr/io.h>			// базовая библиотека МК
#include <util/delay.h>		// базовая библиотека задержек
#include "n5110.h"			// пользовательская библиотека для работы с Lcd + так же файл n5110.c


void preset()
	{
		ADCSRA  |= (1<<ADPS2) | (1<<ADPS1) | (1<<ADPS0);// выбираем делитель(128)частоты(преобразователь работает с частотой не более 200кгц)									//частота равна 62500кгц
		ADMUX  |= (1<<REFS1) | (1<<REFS0);// выбор внутреннего опорного напряжения 2.56V
		_delay_ms(2);
		ADMUX |= (1<<MUX0);			      //выбор ножки входа ADC1
		_delay_ms(2);
		Lcd_init();
		LcdContrast(184);
		ADCSRA  |= (1<<ADEN);	//включаем АЦП
		_delay_us(100);
	}

// функция опроса АЦП
int readADC()
	{
	
	 int everage_val= 0;						
	 for (int i=0; i<20; i++)			
		{	ADCSRA |= (1<<ADSC);		
			while ((ADCSRA &(1<<ADSC))); 					
			everage_val += ADC;			
			_delay_us(100);
		}
		return everage_val/20;
	 _delay_us(100);								
	}	

int main(void)
{			
	preset();			
	while(1)
	{ 	
	 Lcd_clear();
	 Lcd_rect_empty ( 2, 2, 82, 42, PIXEL_ON );// рисуем пустой прямоугольник
	 Lcd_printf(5,2,FONT_2X,(((readADC()*2.56*100*(3.73/2.56))/1023)-273.15),1);// вывод данных t	
	 Lcd_prints(6,4,FONT_1X,(unsigned char *)PSTR("!C")); // вывод символа градуса																							
	 Lcd_update();															
	 _delay_ms(1000);
	}
}

Если у кого что то подобное было объясните пож. как решить эту проблему.

 

prot.png

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

не мерил, да и схему разобрал блин.

НО напряжение скачет на входе ADC1, а так же в меньшей степени на питании. Вроде не должно так быть. Может , думаю, стабилизированное напряжение отдельно подать на AVCC?

При питании от батарей тоже самое

Беспокоит и то что нет реакции при настройке потенциометра, те. если убрать нижнее 10к, то что то начинает менятся, а так 99гр показывает

те получается напруга выше нормы на входе

а опустить нельзя хоть пот на ноль выводи

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

У меня через 1к5 ничего не скачет, на 88 градусах по ds18b20 lm335 врет на 4 градуса, показывает 84 градуса, мне не критично, используется 8 бит, вместо 10. AVCC подключено по даташиту.

lm335.PNG.f7a676dc7edfe0f3fe30d78c27ebc9fe.PNG

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

@MaxVest У Вас конденсатор С2 на AREF странно подключен к питанию - все скачки по питанию передаются прямо на вход AREF, поэтому и показания ADC прыгают.

Надо конденсатор С2 поставить на землю.

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

понял, попробую, 30 мин займет сборка.

Но вход AREF  кажется отвечает только если внешний ИОН типа 5 вольта, а у меня внутренний ион на 2.56V но все равно попробую щас

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

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

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

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

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

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

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

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

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

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

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

×
×
  • Создать...