Страница 567 из 628

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт апр 19, 2016 08:39:52
service47
Будет ли работать I2C если от микроконтроллера с 5В напряжения питания соединить через два резистора с ATmega88, запитанную от 3.5В.

Тут пишут:
http://we.easyelectronics.ru/Shematech/ ... oystv.html
что можно с полевым транзистором соединить по IIC два микроконтроллера. Как правильно это сделать и какой транзистор лучше применить.

И еще ATmega88 соединена по IIC с предусилителем на TDA7469 c напряжением питания 5В. Значит схема на полевых транзисторах получиться сдвоенной. От одного микроконтроллера с 5В с подтягивающими резисторами, через полевые транзисторы, снова подтягивающие резисторы, но к 3,5В и ко входу IIC ATmega88, затем с этих же входов снова на другие полевые транзисторы, после них подтягивающие резисторы к 5В и на вход IIC TDA7469.

Подходит ли для этих целей BSN20:
http://www.nxp.com/documents/data_sheet/BSN20.pdf

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт апр 19, 2016 18:25:03
rahmaevao
У меня вопрос.
Для связи двух устройств по rs-232 надо ли ставить как на схеме
Изображение
Или можно без них?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт апр 21, 2016 17:37:39
просто КОТ
Котаны, такой вопрос. Есть микроконтроллер. Будем считать что пожирнее, из STM32. К нему подходят две линии с изменяющимися лог.сигналами, единичками и нулями. Линии эти он опрашивает, с частотой 2,4МГц каждую. Т.е. имеем поток в 4,8МБит/сек некоторых данных. И необходимо сохранить их на SD карточку. Как это правильно сделать? Чтоб потом можно было к этим данным обратиться как к файлу некоторой программой с ПК.

Я праильно понимаю, что в буффере надо накапливать пачку из 512 бит и писать такими кусками? А сам файл какого типа взять? ТХТ? BIN? Или ещё какие варианты есть? Какие могут возникнуть тонкости?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пт апр 22, 2016 10:02:59
service47
Если ATmega16 запитана от 3,5В и к ней подключен разъем USB (к INT0, INT1 через резисторы 68 Ом D+ и D-) на 5В, как согласовать уровни напряжений.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пт апр 22, 2016 15:37:51
Chettuser
Здрасьте всем.
Мучаю АЦП STM32F030. Что то не получается считать последовательно два канала АЦП (IN_8, IN_9). Перевёл чтение в функции, которые вызываю вручную и получаю в переменных ADC936 и ADCPOT одинаково изменяющиеся значения (Переменный резистор на IN_9).
Вроде бы выборку канала делаю функцией ADC_ChannelConfig(). Функции ADC_Cmd(ADC1,ENABLE) и DISABLE применил на всякий случай.
Спойлерvoid ADC_POT()
{
/* Convert the ADC1 Channel 8 and 9 with 28.5 Cycles as sampling time */
ADC_ChannelConfig(ADC1, ADC_Channel_9, ADC_SampleTime_239_5Cycles);
ADC_Cmd(ADC1,ENABLE);
ADC_StartOfConversion(ADC1);
while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC));
ADCPOT = ADC_GetConversionValue(ADC1);
ADC_StopOfConversion(ADC1);
ADC_Cmd(ADC1,DISABLE);
return;
}

void ADC_936()
{
ADC_ChannelConfig(ADC1, ADC_Channel_8, ADC_SampleTime_239_5Cycles);
ADC_Cmd(ADC1,ENABLE);
ADC_StartOfConversion(ADC1);
while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC));
ADC936 = ADC_GetConversionValue(ADC1);
ADC_StopOfConversion(ADC1);
ADC_Cmd(ADC1,DISABLE);
return;
}
Где я ошибся или что не увидел?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Сб апр 23, 2016 09:21:46
FireProoF
Насколько понял, для измерения по двум каналам и более нужно настраивать АЦП, указывая количество каналов и включив сканирование по списку.
P.S. ну или попробуйте отключать ацп после каждого измерения.
Здесь есть оба варианта и Ваша проблема

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вс апр 24, 2016 18:14:34
Chettuser
Спасибо.

Кто нибудь пользовался OpenSTM32?
Я скачал, поставил. Но что то не могу открыть проект из Cube, посмотреть.
Изображение
Пункты меню неактивные. Обновления какие то среда сама закачала и установила.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн апр 25, 2016 00:07:09
rahmaevao
service47 писал(а):Если ATmega16 запитана от 3,5В и к ней подключен разъем USB (к INT0, INT1 через резисторы 68 Ом D+ и D-) на 5В, как согласовать уровни напряжений.
Можно не согласовывать, так как МК нормально поймет 5-ти вольтовые сигналы, а если МкК захочет лог 1 дать, то 3,5 входит в диапазон для лог 1 (более 2,5 В). Если уж совсем не в моготу, можно согласовать с помощью транзисторных ключей.
Изображение
(как на картинке, только используйте n-канальные транзисторы (серия даже есть IRLML).

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пн апр 25, 2016 08:49:54
service47
Для V-USB требуется тактовая частота микроконтроллера от 12 МГц и более. Используется ATmega16A, запитанная от 3.5В. Будет ли стабильно работать чтение данных из USB.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт апр 26, 2016 18:14:35
xxx2142
Товарищи, подскажите , что за чип такой ST 1825-0057 и с чем его едят. Чип установлен на маленькой плате для обработки данных с картриджа принтера HP. Мне нужно снять с него дамп.
st1825.jpg
(21.88 КБ) 336 скачиваний

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт апр 26, 2016 21:28:30
КРАМ
xxx2142 писал(а):Мне нужно снять с него дамп.
Даже если Вы бы знали какой это контроллер, то и в этом случае Вы бы его не прочитали. У микросхем подобного назначения прошивки всегда залочены.
Скорее всего, это какой нибудь STM32F0 с заказной прошивкой. Причем с высокой степенью вероятности еще и масочной.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Ср апр 27, 2016 10:56:06
Chettuser
Нашёл в stm32f0xx.h следующее выражение:
ADC_CCR_VBATEN
В описании регистра CCR что то такого не нашёл. Это для чего?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Ср апр 27, 2016 12:04:14
КРАМ
Есть мнение, что это КОНСТАНТА...
И ее значение в хедере откомментировано:

Код: Выделить всё

#define  ADC_CCR_VBATEN                       ((uint32_t)0x01000000)       /*!< Voltage battery enable */

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Ср апр 27, 2016 15:49:45
scorpi_0n
RM0091

Код: Выделить всё

Bit 24 VBATEN: VBAT enable
This bit is set and cleared by software to enable/disable the VBAT channel.
0: VBAT channel disabled
1: VBAT channel enabled
Note:Software is allowed to write this bit only when ADSTART=0 (which ensures that no conversion is ongoing).

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт апр 28, 2016 20:10:24
FireProoF
Всем привет. Такая ситуация. Спрашиваю датчик на i2c в тупом цикле, все норм. Как только начинаю опрашивать его через таймер, то чтение встает на месте. Частоту таймера уже до герца снизил.
Stm32f3 discovery. L3gd20

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пт апр 29, 2016 06:25:29
FireProoF
Еще вопрос: как передать по UART число с точкой, чтобы можно было принять на компьютере в терминале без проблем?
P.S. с предыдущим вопросом разобрался. Там таймер с измерениями стартовал раньше инициализации периферии.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пт апр 29, 2016 07:02:54
КРАМ
FireProoF писал(а):как передать по UART число с точкой
Вероятно, передав в нужном месте эту самую точку... :)))
Вопрос странный...
Вы не в курсе относительно форматирования вывода в sprintf или относительно того, что в терминал нужно передавать ASCII?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Пт апр 29, 2016 07:34:04
FireProoF
Я вот с точкой понял. Т.е. сначала передаем целую часть, потом знак точки, потом дробную. Дробную часть придётся урезать. ПРост думал, может что получше есть)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт май 03, 2016 02:24:13
Chettuser
Постигаю просветление с DMA в STM32. А вот как народ умудряется с GPIO через DMA работать? На картинках в RM в разделе DMA про GPIO ничего нету, это и понятно. Как я понимаю вместо начального адреса памяти надо прописать адрес порта и без инкремента? А какой тогда режим выставлять - "память-периферия" или "память-память"? И как тут быть с сигналом "Event"?
Спасибо.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Вт май 03, 2016 17:28:58
FireProoF
Столкнулся с необъяснимым) Есть L3GD20. Это ДУС с термометром. Выходной регистр термометра размером в один байт. Масштабный коэффициент 1 град/бит. Вроде всё здорово). Считываю показания: 0х12 = 18 град. Тут мне пришла мне мысль нагреть его феном. Грею, а показания температуры стали опускаться! Даж в минус уходит.
За основу взял STэмовскую библиотеку под stm32f3discovery
Спойлер

Код: Выделить всё

void Demo_GyroReadTempRaw (uint8_t* pfData, uint8_t* pfDataSign)
{
  uint8_t rawData = 0;
  int i =0;
  
  L3GD20_Read(&rawData,L3GD20_OUT_TEMP_ADDR,1);
  
	if(((uint8_t)rawData > 0x7F) == 0) { *pfDataSign = 0;}
	else
	{
		*pfDataSign = 1;
		rawData &= 0x7F;
		rawData = 0x7F - rawData;
	}
		
	*pfData = rawData;
}
Кто-нибудь может это объяснить?