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

Помощь в правке проекта блока питания

Добавлено: 15 янв 2019, 13:24
diman27
Привет всем. Купил такой блок питания, но радость моя была не долгой, спалил мегу. У китайцев прошивку не нашел, но нашел оригинал, к сожалению он на кнопках, а мой на энкодерах, вот и все различие.Может кто подправить прошивку? Народ пилит его, но только на кнопках, под энкодер не делают.
А может под flprog можно управление переделать?
Спасибо.

Помощь в правке проекта на Си

Добавлено: 15 янв 2019, 16:48
aidar_i
Попросите продавца Вам прислать прошивку, или МК с прошивкой. Или проект в FLProg делайте.
Я не знаю, что нужно сделать , чтобы его спалить. Я как не издевался, так и не смог мегу спалить.

Помощь в правке проекта на Си

Добавлено: 15 янв 2019, 17:01
diman27
Связывался с продавцом, не хочет помогать. Очень просто, достаточно не выключить в процессе монтажа в корпус и замкнуть, короче "стечение обстоятельств и громадное невезение"
Вот схема китайца.

Помощь в правке проекта на Си

Добавлено: 26 фев 2019, 06:54
diman27
Привет всем. Может кто помочь, естественно, не за спасибо? Пишите в личку.

Помощь в правке проекта блока питания

Добавлено: 26 фев 2019, 07:59
benic
А где Ваша схема?

Помощь в правке проекта блока питания

Добавлено: 26 фев 2019, 08:05
diman27
В третьем сообщении моя схема, под нее надо исправить.А это схема оригинала
file.php.gif

Помощь в правке проекта блока питания

Добавлено: 26 фев 2019, 17:53
benic
разводка платы такая ?

Отправлено спустя 51 секунду:
или свою сфотографируй, дабы не возиться

Помощь в правке проекта блока питания

Добавлено: 26 фев 2019, 18:34
diman27
Нет, платы такие.

Отправлено спустя 10 минут 45 секунд:
Вот описание программы от автора.

Помощь в правке проекта блока питания

Добавлено: 26 фев 2019, 19:54
AVGN
diman27 писал(а): 15 янв 2019, 17:01Вот схема китайца.
Схему Вам прислал продаван из поднебесной?
В упор не вижу энкодер. Только кнопки. Или он так энкодер обозначает.
Управление силовой частью осуществляется АЦП используется традиционная схема R2R.
Под АЦП надо задействовать весь порт D -выводы 0......7 .
Порты должны соответствующим образом коммутироваться для получения синус DDS. Надо писать на С++ и из этого делать блок для FLProg.
Вопрос в каком частотном диапазоне реализовать синус?

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 03:13
benic
С гитхаба схема и печатка.
https://github.com/tschutter/digital-dc-power-supply

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 04:33
diman27
У меня это есть, но там кнопки, а хочется энкодеры оставить.
AVGN писал(а): 26 фев 2019, 19:54
diman27 писал(а): 15 янв 2019, 17:01Вот схема китайца.
Схему Вам прислал продаван из поднебесной?
Управление силовой частью осуществляется АЦП используется традиционная схема R2R.
Под АЦП надо задействовать весь порт D -выводы 0......7 .
Порты должны соответствующим образом коммутироваться для получения синус DDS. Надо писать на С++ и из этого делать блок для FLProg.
Вопрос в каком частотном диапазоне реализовать синус?
Схема срисована с платы.
Это так энкодеры нарисованы, S3 и S6 это кнопки энкодера (запоминание уставок).
Про частоту не скажу, как удобнее.

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 05:30
benic
Какая среда разработки, интересно.
Открылся в AVR studio только проeкт с Oled.
Скорее всего после FLProga не поместится в mega8, но можно в 328 DIP.

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 06:23
diman27
Среду не знаю. Я начал под nano делать, но уперся в реализацию регулировки.
почему то блок энкодера ошибку выдает

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 08:29
Sancho
AVGN писал(а): 26 фев 2019, 19:54Порты должны соответствующим образом коммутироваться для получения синус DDS
Можно поподробнее - накой он в питателе? Или я с утра туплю, или здесь просто 10 разрядный цап для управления?

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 09:16
benic
Описание на русском. Файлы разводки платы в формате программы Diptrace.

https://radioparty.ru/index.php/device- ... ly-atmega8

Вывода atmega8, 100% совпадает с 328?

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 09:57
fsergei70
если заново делать печатку наверно лучше прикрутить ЦАП MCP4725 вместо кучи резисторов, да и дисплей подключить через I2c. Сразу освободится куча ног у ардуинки.

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 10:39
AVGN
Sancho писал(а): 27 фев 2019, 08:29или здесь просто 10 разрядный цап для управления?
Точно. Не в ту тему запостил. Так совпало что еще и синусоидальный генератор обсуждали на другом ресурсе.
Здесь товарищи из поднебесной используют 10 разрядный r2r.
Но все равно надо одновременно управлять выводами устанавливая высокий-низкий уровень.
digitalWrite () не прокатит -будет последовательно включать выходы.
Или прокатит?

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 10:54
diman27
Я думал применить MCP41010? но разрешение у нее совсем низкое.

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 10:59
AVGN
Немного заглянул в исходник прошивка.
В файле dac.c - цифро-аналоговый преобразователь.
Видимо из него надо пробовать делать блок.
[spoiler]

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

/* vim: set sw=8 ts=8 si : */
/*********************************************
* Author: Guido Socher, Copyright: GPL 
* 
* Digital to analog converter using a R-2R leadder (7bit)
* and PWM (5bit)
**********************************************/
#include <avr/io.h>

// this dac can do 12 bit resolution: bit 0-4=pwm, bit 5-11=R-2R leadder
void dac(uint16_t value){
        //OCR1AH=0;
        OCR1AL=value&0x1F; // lower 5 bits
	value=value>>(5-2);
	// r2r ladder is pd2 to pd7 and pb0
	PORTD=(PORTD&0x3)|(value&0xfc);
	value=value>>8;
	if (value){ // the MSB in the dac
		PORTB|= (1<<PINB0);
	}else{
		PORTB &= ~(1<<PINB0);
	}
}

void init_dac(void) 
{
	// enable PD2 PD3 PD4 PD5 PD6 PD7 PB0 as output (PD2=LSB of R2R-leadder)
	DDRD|= 0xfc; // output
	PORTD &= PORTD&0x3; //  zero volt on PD2..PD7
	DDRB|= (1<<DDB0);
	PORTB &= ~(1<<PINB0);
	//
	DDRB|= (1<<DDB1); // PB1 output
	// set up of Pulse Width Modulation (PWM)
	TCNT1H=0; // counter to zero, high byte first
	TCNT1L=0;
        // COM1A1  COM1A0
        //  1       0     Clear OC1A/OC1B on Compare Match (Set output to low level)
        //  1       1     Set OC1A/OC1B on Compare Match (Set output to high level)
        //
        // Fast PWM, ICR1 is top
        // See datasheet page 99 (settings) and 88 (description).
        TCCR1A=(0<<COM1A0)|(1<<COM1A1)|(0<<WGM10)|(1<<WGM11);
        TCCR1B=(1<<CS10)|(1<<WGM12)|(1<<WGM13); // full clock speed
	// 5 bit resolution:
	ICR1H=0;
	ICR1L=0x1F;
        // At what value to switch on the port (port OC1A=0 -> 0 Volt output)
        OCR1AH=0;
        OCR1AL=0;
}

[/spoiler]

Помощь в правке проекта блока питания

Добавлено: 27 фев 2019, 11:02
diman27
А чем открыли исходник? Среду подобрать не могу