Страница 1 из 1

Странное поведение STM8S003F3P6 и GpioB

Добавлено: Сб дек 24, 2016 10:08:49
lazarev
Некоторое время уже использую STM8S003F3P6, но недавно столкнулся с проблемой что при логическом нуле - ножка выдает как положено 0V, а от при логической единице выдает на ножке не больше 0.13V вместо 3.3V ожидаемих, хотя на протах А,С все нормально, думал что проблема в сгоревшем порте но ситуация повторилась еще на двух чипах.

С чего и всплывает вопрос, кто сталкивался с данной проблемой и как побороть?

Кусок используемого кода для проверки Порта B.

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

uint32_t time;
void main() {
	CLK->ICKR |= CLK_ICKR_HSIEN;
	while((CLK->ICKR & CLK_ICKR_HSIRDY) == 0);
	CLK->CKDIVR = CLK_PRESCALER_HSIDIV8;
	
	GPIOB->ODR = 0x00;
	
	GPIOB->DDR = 0xff;
	GPIOB->CR1 = 0xff;

	GPIOB->ODR = 0xff;
	
	while(1) {
		GPIOB->ODR ^= GPIO_PIN_5;
		time=200000;
		while(time--);
	}
}

Re: Странное поведение STM8S003F3P6 и GpioB

Добавлено: Сб дек 24, 2016 11:30:09
oleg110592
->
Изображение

Re: Странное поведение STM8S003F3P6 и GpioB

Добавлено: Сб дек 24, 2016 16:22:56
lazarev
Спасибо,
банально не досмотрел что GpioB это true open drain и он физически не способен выдать Vdd так как нет Vdd-ключа, а только Vss-ключ.
Ех, придется все переделывать потомучто в моем случае pull-up резистор не подходит.

Re: Странное поведение STM8S003F3P6 и GpioB

Добавлено: Пн дек 26, 2016 21:18:03
shads
Я тоже на этом попался )))))
В первой своей поделке поленился удостоверится что да как... и как раз на оба вывода развел, на фотке видно, как потом проводками кинул на другие линии
http://forum.easyelectronics.ru/viewtop ... 38#p460938