Например TDA7294

Форум РадиоКот • Просмотр темы - вопрос по ассемблеру. PIC16f716 управляет симистором
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Вт мар 09, 2021 14:07:57

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 48 ]    , , 3
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Вт июл 28, 2020 22:06:02 
Друг Кота
Аватар пользователя

Карма: 87
Рейтинг сообщений: 1039
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 11585
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
splan и layout при работе с ремонтами аппаратуры без техописаний (либо небольших по объёму одно/двусторонних платок контроллеров) осваивать в любом случае придется - вместе с макросъёмкой и частично фотошопом это элементы получения схем по имеющимся печатным платам.
Да и освоение там не сложнее, чем использование простого графического редактора типа paint.
Можно конечно и на бумаге от руки с последующим сканом - но то уже время на приведение к приличному виду придется мне (или кому другому) делать. А это уже лишняя морока для "от нечего делать помощи".
8)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Ср авг 19, 2020 03:11:33 
Родился

Зарегистрирован: Пн авг 03, 2015 23:58:21
Сообщений: 12
Рейтинг сообщения: 0
нарисовал


где разьем перегрузка-туда подключается датчик воздуха, когда фильтр засорен, он замыкает, зажигается led перегрузки(если датчик разомкнуть-led гаснет, в общем тупо индикатор контакта). резистор R8-регулятор скорости.
Изображение


Добавлено after 24 minutes 57 seconds:
+эпюры синхронизация сети(pin 6) от сетевого U
Изображение

Добавлено after 2 minutes 58 seconds:
+эпюра выход на сим(pin10) относительно фазы при средней мощности
Изображение


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


Вернуться наверх
 
Друзья! Скоро Новый Год! Китайский! Но мы работаем и в праздники тоже!

JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Вт ноя 17, 2020 19:07:48 
Родился

Зарегистрирован: Пн авг 03, 2015 23:58:21
Сообщений: 12
Рейтинг сообщения: 0
кто нибудь обьяснит почему даже за деньги никто не хочет помочь в написании кода? пусть он не на асме будет-неважно


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
В сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Вт ноя 17, 2020 19:33:37 
Друг Кота

Карма: 27
Рейтинг сообщений: 1206
Зарегистрирован: Ср фев 11, 2009 20:35:58
Сообщений: 7283
Рейтинг сообщения: 0
А что здесь приём жалоб и предложений???
https://radiokot.ru/forum/viewforum.php?f=53


Вернуться наверх
 
Как сделать ИП с ультрашироким диапазоном?

Ключевыми особенностями высоковольтных SiC MOSFET Wolfspeed являются малое сопротивление канала в открытом состоянии и минимальное значение паразитных емкостей, что позволяет максимально снизить статические и динамические потери, и, соответственно, увеличить рабочую частоту преобразователей.

Читать статью>>
Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Ср ноя 18, 2020 17:31:58 
Родился

Зарегистрирован: Пн авг 03, 2015 23:58:21
Сообщений: 12
Рейтинг сообщения: 0
походу да. одному написал, отказался,без причин


Вернуться наверх
 
STM32L5 – первое семейство ST на ядре Cortex-M33 с ультранизким потреблением

Первое семейство STM32L5 на базе ядра ARM Cortex-M33, флагман семейств ST с низким потреблением. Область применения IoT, расходомеры, умные часы, промышленные датчики и многое другое. Опубликованы материалы двух практических вебинаров по расчету энергопотребления и работой с TrustZone. Рассмотрены особенности и примеры практической реализации CAN FD на STM32L5.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Чт ноя 19, 2020 16:41:42 
Вымогатель припоя

Карма: -17
Рейтинг сообщений: 11
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 608
Рейтинг сообщения: 0
кто нибудь обьяснит почему даже за деньги никто не хочет помочь в написании кода? пусть он не на асме будет-неважно
Видимо - дело не в деньгах..... а в их количестве. :)


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Чт ноя 19, 2020 20:11:11 
Друг Кота
Аватар пользователя

Карма: 87
Рейтинг сообщений: 1039
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 11585
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Кристалл не из широкоприменяемых в любительской практике, питание напрямую от 220...
Посему и интереса им заниматься особо нету...
Тем более, что практичкски само устройство по функционалу аналогия регулятора на К1182ПМ1...
Вложение:
КР1182ПМ1.pdf [93.1 KiB]
Скачиваний: 45

:dont_know:


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: вопрос по ассемблеру. PIC16f716 управляет симистором
СообщениеДобавлено: Сб дек 19, 2020 15:30:42 
Встал на лапы

Зарегистрирован: Пт янв 27, 2012 20:07:54
Сообщений: 125
Откуда: Томск
Рейтинг сообщения: 0
Для всех желающих разобраться с прерываниями - под схему пылесоса написан небольшой код, иллюстрирующий их использование для задачи фазового регулятора.
Специально замечу, что высокий уровень на выходе RB4 - это отсутствие управляющего напряжения на симисторе, и наоборот - включение симистора осуществляется 0 на RB4.
Длительность включающего импульса - 0.64мс (соответствует осциллограмме).

Циклограмма работы:
Ждем фронт импульса синхронизации, сбрасываем таймер, выставляем значение задержки включения симистора.
Т.к. процессор ждет определенный фронт, каждый раз переключаем фронт на нужный.
Срабатывает таймер - включаем симистор, сбрасываем таймер, выставляем значение задержки выключения управляющего сигнала.
Срабатывает таймер - убираем управляющий сигнал, сбрасываем таймер и выставляем задержку на максимум (16мс), ждать новый импульс синхронизации ( <~10мс).

Код:
#if defined(__XC)
    #include <xc.h>         /* XC8 General Include File */
#elif defined(HI_TECH_C)
    #include <htc.h>        /* HiTech General Include File */
#endif

#include <stdint.h>        /* For uint8_t definition */
#include <stdbool.h>       /* For true/false definition */
#include "system.h"        /* System funct/params, like osc/peripheral config */

uint8_t phase = 0xFF;  //Force motor off by phase out of half-wave duration

//void interrupt isr(void)
void __interrupt () ISR (void) {
    /* Determine which flag generated the interrupt and handle it */
   
    // RB0/ExtINT interrupt
    if(INTCONbits.INTF) {
        INTCONbits.INTF = 0; /* Clear Interrupt Flag */
       
        //Edge found. Switch to find next edge
        if (OPTION_REGbits.INTEDG) { //Rising edge found
            OPTION_REGbits.INTEDG = 0; //Now will wait for falling edge
        }
        else { //Falling edge found
            OPTION_REGbits.INTEDG = 1; //Now will wait for rising edge
        }
       
        PR2 = phase;         //Set TRIAC turn-on delay
        TMR2 = 0;            //Reset Timer2 state
        PIR1bits.TMR2IF = 0; //Clear pending Timer2 IF
        PORTBbits.RB4 = 1;   //Disable TRIAC (force pin state)
    }
   
    //Timer2 PR2 match interrupt
    if (PIR1bits.TMR2IF) {
        PIR1bits.TMR2IF = 0;  /* Clear Interrupt Flag */
       
        if (PORTBbits.RB4 == 1) { //Triac pin is OFF
            PORTBbits.RB4 = 0;  //Set TRIAC ON
            PR2 = 0x0A;         //TRIAC on set for 10 * 64us = 0.64ms, next Timer2 interrupt will turn TRIAC pin OFF
        }
        else {
            PORTBbits.RB4 = 1;  //Set TRIAC OFF
            PR2 = 0xFF;         //PR2 should be set by edge, wait for sync.
        }
        TMR2 = 0;               //Reset Timer2 state
    }
}

void main(void) {
    /* Initialize I/O and Peripherals for application */
    PORTA = 0x04; //Turn off LED RA2
    PORTB = 0x10; //Turn off TRIAC RB4
    TRISA = 0x01; //RA0/AN0 - ADC input, RA2... outputs
    TRISB = 0x0F; //RB0-RB3 inputs, RB4... outputs
    OPTION_REG = 0x00; // RB0-interrupt on falling edge initially, Timer0/WDT not used
   
    T1CON = 0x00; // Timer1 Fosc/4 clock; 1:1 prescale, Timer1 disabled
    T2CON = 0x1F; // Timer2 Fosc/4 clock; 1:16 prescale, 1:4 postscaler, Timer2 enabled -- 4Mhz/16 = 62.5kHz = 16us/timer tick
   
    // PR2 will set TMR2IE interrupt period as: PR2 * 4 * 16us
    // For 50Hz 10ms half-period time, we can use values 0-156 as phase delay.
   
    ADCON0 = 0xC0; // Use internal ADC RC oscillator, use AN0 input, ADC disabled (ADON=0)
    ADCON1 = 0x04; // Vref=VDD, AN0,AN1,AN3 - as analog inputs (RA2 - LED)
   
    PIR1 = 0; //Clear pending interrupt flags
    PIE1 = 0x02; //Enable TMR2IE (PR2 matched) interrupt
   
    INTCON = 0xD0; //Enable GIE (global interrupts) + PEIE (peripheral interrupts) + INTE (RB0/Ext INT)

    while(1) {
        phase = 0x75;  // phase = 117;  -- 7.5ms TRIAC phase delay, 25% of power.
    }
}


Добавлено after 20 minutes 48 seconds:
нет, это мне надо в томас прошивку написать, у них лоченые пики стоят. 12с509. если понадобиться, чтоб можно было код под любые порты любого пика написать. а тут от самсунга плата готовая лежит, потому на ней и хочу реализовать вначале


К сожалению, пример не особо поможет написать код под любые порты любого пика, хотя бы потому что упомянутый 12C(F)509 не умеет такой штуки как прерывания и код придется делать без них.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 48 ]    , , 3

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y