RSS

Комментарии

20:52

Да и огромное спасибо за посадочное место на плату!

20:47

Добрый день! Почему то Ваш проект в App Inevntor, собранный заново, не видит ни одно устройство. BT и GPS включены. В то же время Ваш же APK работает. В чем может быть прикол?

Спасибо огромное!

Прочитал несколько более подробных описаний «быстрого старта» в Кейл, но так и не стронулся с места. А после вашего, довольно аскетичного, всё заморгало!!! Xnucleo-F103RB + ST-Link V2 :)

Ну и телеграмм-канал с архивами нужных программ просто выше всяких похвал!!! Теперь я ваш подписчик навек ;)

Здравствуйте, очень интересный проект. Хотелось бы уточнить можно ли собрать не одно, а хотябы двух канальный осциллограф на основе этой сборки?

Почему-то режим C5 работает как C3. Вместо того, чтобы переключать, просто мигает.

Здравствуйте. Мне статья во многом помогла разобраться но у меня не работали преобразования большее 1 цикла. Пока я не установил настройки вот так:

DMA continuous Requests Enable

Долго ломал голову почему у меня не работало. Повторяю проект на STM32F411CEU6 или же в простонароде black pill.

Хуй тебе тварь убогая !!!

p/s-не могу загрузить снимки

19:02 (отредактировано)

1.Когда подключаешь к телефону светится зелёным, при запуске приложения HScope тухнет(синим не горит).2.В настройках да, видит.3.Плата подключается, приложение видит прошивку, но получается не может её загрузить.Если прошиваю v9 то иногда при подключении к приложению бегут зелёные фразы по экрану.

У меня на клоне работало, как раз было удобно для таких целей, т.к. для программирования CubeIDE без доп. настроек его не прошивал.

На плате светодиод (второй, не питания) как-то светится? Я так понимаю, что телефон его видит?

В настройках что-то пишет, приложение видит осциллограф?

Схемка, добрый вечер! Прошу помощи, собрал приставку осциллограф на stm32f103c8t6, не запускается.К телефону, планшету подключается, но сигнала нет.Пишет идёт считывание и всё.Прошивал разными прошивками для версии 101, разными программами с ПК и через телефон, прошивается, но не работает.4 платки и ни одна не работает.Перед этим собрал на 411 серии, всё отлично.Где то читал, что платы клоны и их можно как то исправить.Я в программировании совсем не разбираюсь, могу только по готовым проектам, что то делать.Если можешь что то посоветовать, подсказать, буду блогодарен.Пытался сам, но это можно сделать в CudoIDE только версии 1.7.0, она почему то не ставится ни на один ПК.Да и что там писать не понял.

Наверно стоит пояснить для читателей...
Смотреть нужно на самое левое значение Averange — это среднее потребление (за час), кроме последней картинки. 
В последней картинке можно игнорировать значение Averange, т.к. там показан бросок тока при старте модуля, при подаче питания. Имеет значение продолжительность и уровень потребления тока. Может пригодится для тех кто выбирает между сном и периодическим включением модуля для обмена.

Выборка 1000 семплов в секунду. Точность до 1ма — 20%, выше 1ма — 10%.

спасибо, вот это классные измерения, указал в статье

Проверил:

у меня работает отлично, заходит в обработчик прерывания:

Вот на всякий случай копия кода:

 
#include "main.h"
/* Global Variables */
uint8_t Enc_Counter = 0;
/* Function prototypes */
void Enc_Trig_Int(void);
void GPIO_Initialization(void);
int main(void)
{
	//GPIO_Initialization(); // PA4 = TIM14-CH1 !!!
	CMSIS_PWM_Conf();
	/*
	 * PA6 - TIM3_CH1
	 * PA7 - TIM3_CH1
	 */
	/****** GPIO Initialization ******/
	/* GPIOA Clock */
	RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
	/* 10: Alternate function mode */
	GPIOA->MODER &= ~GPIO_MODER_MODER6_0;
	GPIOA->MODER |= GPIO_MODER_MODER6_1;
	/* 00: No pull-up, pull-down */
	GPIOA->PUPDR &= GPIO_PUPDR_PUPDR6_0;
	GPIOA->PUPDR &= GPIO_PUPDR_PUPDR6_1;
	/* 0001: AF1 */
	GPIOA->AFR[0] |= (1UL << GPIO_AFRL_AFSEL6_Pos);
	/* 10: Alternate function mode */
	GPIOA->MODER &= ~GPIO_MODER_MODER7_0;
	GPIOA->MODER |= GPIO_MODER_MODER7_1;
	/* 00: No pull-up, pull-down */
	GPIOA->PUPDR &= GPIO_PUPDR_PUPDR7_0;
	GPIOA->PUPDR &= GPIO_PUPDR_PUPDR7_1;
	/* 0001: AF1 */
	GPIOA->AFR[0] |= (1UL << GPIO_AFRL_AFSEL7_Pos);
	/* Encoder Initialization */
	/* TIM3 Clock */
	RCC->APB1ENR |= RCC_APB1ENR_TIM3EN;
	/* 01: CC1 channel is configured as input, IC1 is mapped on TI1
	 * 01: CC2 channel is configured as input, IC2 is mapped on TI2 */
	TIM3->CCMR1 |= (TIM_CCMR1_CC1S_0 | TIM_CCMR1_CC2S_0);
	TIM3->CCMR1 &= ~(TIM_CCMR1_CC1S_1 | TIM_CCMR1_CC2S_1);
	/* 00: noninverted/rising edge */
	TIM3->CCER &= ~(TIM_CCER_CC1P | TIM_CCER_CC2P);
	TIM3->CCER &= ~(TIM_CCER_CC2NP | TIM_CCER_CC2NP);
	/* 001: Encoder mode 1 - Counter counts up/down on TI2FP1 edge depending on TI1FP2 level */
	TIM3->SMCR |= TIM_SMCR_SMS_0;
	TIM3->SMCR &= ~TIM_SMCR_SMS_1;
	TIM3->SMCR &= ~TIM_SMCR_SMS_2;
	/* 1111: fSAMPLING = fDTS / 32, N = 8 */
	TIM3->CCMR1 |= (TIM_CCMR1_IC1F_0 | TIM_CCMR1_IC1F_1 | TIM_CCMR1_IC1F_2 | TIM_CCMR1_IC1F_3);
	TIM3->CCMR1 |= (TIM_CCMR1_IC2F_0 | TIM_CCMR1_IC2F_1 | TIM_CCMR1_IC2F_2 | TIM_CCMR1_IC2F_3);
	/* Auto-Reload Register (MAX counter number) */
	TIM3->ARR = 100;
	Enc_Trig_Int();
	/* 1: Counter enabled */
	TIM3->CR1 |= TIM_CR1_CEN;
while(1){
	  Enc_Counter = TIM3->CNT;
	}
}
void Enc_Trig_Int(void){
	/* Trigger Edge Detector */
	/* 100: TI1 Edge Detector (TI1F_ED) */
	TIM3->SMCR &= ~(TIM_SMCR_TS_0 | TIM_SMCR_TS_1);
	TIM3->SMCR |= TIM_SMCR_TS_2;
	/* 1: Trigger interrupt enabled. */
	TIM3->DIER |= TIM_DIER_TIE;
	NVIC_EnableIRQ(TIM3_IRQn);
}
void GPIO_Initialization(void){
  RCC->AHBENR |= RCC_AHBENR_GPIOAEN; /* GPIOA Clock */
  GPIOA->MODER |= GPIO_MODER_MODER4_0; /* 01: General purpose output mode */
  GPIOA->MODER &= ~GPIO_MODER_MODER4_1;
  GPIOA->OTYPER &= ~GPIO_OTYPER_OT_4; /* 0: Output push-pull */
  GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR4_0; /* 01: Medium speed */
  GPIOA->OSPEEDR &= ~GPIO_OSPEEDER_OSPEEDR4_1;
  GPIOA->PUPDR &= ~GPIO_PUPDR_PUPDR4_0; /* 00: No pull-up, pull-down */
  GPIOA->PUPDR &= ~GPIO_PUPDR_PUPDR4_1;
  GPIOA->BSRR |= GPIO_BSRR_BS_4; /* Low Level Out */
}
void TIM3_IRQHandler(void){
	if(TIM3->SR & TIM_SR_TIF){
		TIM14->CCR1 = 25 + TIM3->CNT;
		TIM3->SR &= ~TIM_SR_TIF;
	}
}
 

+VER:JDY-23-V1.221

16:42
+1

Режим 1000мс AT+STARTEN0

Режим 1000мс AT+STARTEN1 (добавляет примерно 900мкА)


Режим 100мс AT+STARTEN0



Режим 100мс AT+STARTEN1


DeepSleep

При подаче питания ДО выхода в режим работы «advertising»



PS advertising интервал применяется только через ресет модуля или передергивание питания. По крайней мере пока так… сильно не ковырял.

закон Ома  каже   U=I/R   (0.6/2 = 0.3 )

No, maybe it's possible, but there is no firmware, no programmer and on the some modules the marking on the chip is erased.

Try to buy module from another seller)

зато красиво)

защиты от КЗ нет, срабатывает ограничение по току просто

если долго держать сгорает силовой транзистор от перегрева

← Предыдущая Следующая → 1 2 3 4 Последняя
Показаны 1-20 из 270