-
Сообщения
-
@ROMMo спасибо огромное за помощь. Схема Protek 506 очень пригодилась, буду ремонтировать его. Актаком собран на связке FS9701+M430f449. Скорее всего виновник FS9701, что весьма дорогая "штучка".
-
Значит надо подобрать резисторы в базе Т1, особенно R5 на увеличение ... Хотя, не понятно по какой схеме ...
-
By Максим-12345678 · Posted
Сделал печатную плату, все собрал, но не работает! Т2 постоянно открыт( -
Да еще не забыл.И Спасибо что напомнил
-
By Александр2 · Posted
А на мороз на часик другой, а потом в тепло или феном, не? -
Так то оно да. Но меня, тут, по работе, заинтересовал вопрос определения уровня жидкости в непрозрачной ёмкости сложной конфигурации, с ограниченным доступом (тяжёлая и труднодоставаемая (до заливной/сливной горловины просто так не добраться))... Типа излучатель с микрофоном ведёшь снизу вверх по стенке бака и "ловится" уровень границы сред с точностью до сантиметра... С уважением, Сергей
-
-
Similar Content
-
By Ilya Gray
Доброго времени суток!
В целом, имеется опыт разработки малых устройств, что-то понимаю, в общем, старательно читаю даташиты, даже понимаю их, но на звание серьёзного инженера (пока что) не претендую.
Я пытаюсь использовать I2C на 8-битном PIC16F18326. Сижу в даташитах. Всё понимаю, всё делаю, на мой неопытный взгляд, правильно. Даже копирую полностью рабочие примеры (я даже купил такой же микроконтроллер, как в примере, скопировал код, контролируя, что он делает. Но всё равно не работает - SCL/SDA на 5в и всё тут).
Так вот: PIC16F18326 on breadboard (прошу прощения, я хз как это по-русски) на внутреннем 32мгц кристалле. Чип пашет, без проблем моргаю LEDкой. Ну, думаю, щас быстренько подниму I2C. В итоге SCL SDA сидят на 5в без движения. Я использую LED для отладки. Судя по LED, код заloopливается в месте, где проверяется while PIR1bits.SSP1IF==0. Я уже везде был, кучу форумов перерыл. Уже попробовал всё, что мог представить. Я довольно новый в мире PIC, хотел попробовать их, а они ужасно сопротивляются. Уже 2 недели долблюсь безуспешно.
Подтяжки 10к, проблем с ними никогда не было.
Собственно, вот код (я уже там попробовал повыключать ADC, вычитал про баг, что сначала I2C пины надо делать OUTPUT LOW, а потом уже INPUT из-за бага MSSP, но ничего не помогло).
// PIC16F18326 Configuration Bit Settings // 'C' source line config statements // CONFIG1 #pragma config FEXTOSC = OFF // FEXTOSC External Oscillator mode Selection bits (Oscillator not enabled) #pragma config RSTOSC = HFINT32 // Power-up default value for COSC bits (HFINTOSC with 2x PLL (32MHz)) #pragma config CLKOUTEN = OFF // Clock Out Enable bit (CLKOUT function is disabled; I/O or oscillator function on OSC2) #pragma config CSWEN = ON // Clock Switch Enable bit (Writing to NOSC and NDIV is allowed) #pragma config FCMEN = ON // Fail-Safe Clock Monitor Enable (Fail-Safe Clock Monitor is enabled) // CONFIG2 #pragma config MCLRE = ON // Master Clear Enable bit (MCLR/VPP pin function is MCLR; Weak pull-up enabled) #pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled) #pragma config WDTE = OFF // Watchdog Timer Enable bits (WDT disabled; SWDTEN is ignored) #pragma config LPBOREN = OFF // Low-power BOR enable bit (ULPBOR disabled) #pragma config BOREN = ON // Brown-out Reset Enable bits (Brown-out Reset enabled, SBOREN bit ignored) #pragma config BORV = LOW // Brown-out Reset Voltage selection bit (Brown-out voltage (Vbor) set to 2.45V) #pragma config PPS1WAY = ON // PPSLOCK bit One-Way Set Enable bit (The PPSLOCK bit can be cleared and set only once; PPS registers remain locked after one clear/set cycle) #pragma config STVREN = ON // Stack Overflow/Underflow Reset Enable bit (Stack Overflow or Underflow will cause a Reset) #pragma config DEBUG = OFF // Debugger enable bit (Background debugger disabled) // CONFIG3 #pragma config WRT = OFF // User NVM self-write protection bits (Write protection off) #pragma config LVP = ON // Low Voltage Programming Enable bit (Low Voltage programming enabled. MCLR/VPP pin function is MCLR. MCLRE configuration bit is ignored.) // CONFIG4 #pragma config CP = OFF // User NVM Program Memory Code Protection bit (User NVM code protection disabled) #pragma config CPD = OFF // Data NVM Memory Code Protection bit (Data NVM code protection disabled) // #pragma config statements should precede project file includes. // Use project enums instead of #define for ON and OFF. #include <xc.h> #include <htc.h> #include <stdio.h> #include <stdint.h> #define _XTAL_FREQ 32000000 void i2c_is_idle(void){ //while(!PIR1bits.SSP1IF); //while(SSPCON2bits.SEN==1 || SSPCON2bits.RSEN==1 || SSPCON2bits.PEN==1 || SSPCON2bits.RCEN==1 || SSPCON2bits.ACKEN==1 || SSPSTATbits.R_nW==1){}; while(PIR1bits.SSP1IF == 0){ PORTCbits.RC2=1; }; // SSP1IF is set when operation complete PORTCbits.RC2=0; PIR1bits.SSP1IF = 0; // clear interrupt flag } void i2c_start(void){ i2c_is_idle(); SSPCON2bits.SEN = 1; } void i2c_rep_start(void){ i2c_is_idle(); SSPCON2bits.RSEN = 1; } void i2c_stop(void){ i2c_is_idle(); SSPCON2bits.PEN = 1; } void i2c_write(uint8_t i2c_data){ i2c_is_idle(); SSPBUF = i2c_data; while(SSPSTATbits.BF != 0); while(SSPCON2bits.ACKSTAT != 0); } uint8_t i2c_read(uint8_t ack){ uint8_t recieve =0; i2c_is_idle(); SSPCON2bits.RCEN = 1; while(SSPSTATbits.BF != 1); recieve = SSPBUF; SSPCON2bits.ACKEN = ack; return recieve; } void i2c_init(void){ TRISCbits.TRISC0 = 1; TRISCbits.TRISC1 = 1; SSPSTATbits.SMP = 1; SSPSTATbits.CKE = 0; SSPCONbits.SSPM = 0x08; SSPADD = 79; SSPCONbits.SSPEN = 1; } void main(void) { ANSELCbits.ANSC0 = 0; //ADC RC0 OFF ANSELCbits.ANSC1 = 0; //ADC RC1 OFF TRISCbits.TRISC2=0; //LED PIN TRISCbits.TRISC0=0; //MSSP bug counter TRISCbits.TRISC1=0; //MSSP bug counter //__delay_ms(5); LATCbits.LATC1=0; //MSSP bug counter LATCbits.LATC0=0; //MSSP bug counter //__delay_ms(5); INTCONbits.GIE=1; //global interrupt en INTCONbits.PEIE=1; //peripheral interrupt en ADCON0bits.ADON=0; //unpower adc just in case i2c_init(); //THIS SETS TRISC BITS FOR SCL SDA while(1){ i2c_start(); i2c_write(0x3C); i2c_stop(); } return; } Задача: просто увидеть коммуникацию на SCL SDA, я уже потом по даташитам таргет девайсов без проблем напишу дрова. Не получается именно осуществлять коммуникацию.
Подскажите, пожалуйста, я не понимаю, где я дурак, а между тем волос на голове становится всё меньше, а те, что остались, стремительно приобретают серый окрас, ибо 2 недели я долбаюсь с одной проблемой. Благодарю за ваши советы. Спасибо.
-
By Barosha
День добрый!
Проблемка в том, что сегодня мне надо отправить диплом на проверку, а там не хватает немного расчетной части.
Нужно рассчитать ключевой режим транзисторов.
Сайт с моим проектом: http://avrproject.ru/publ/reguljator_temperatury_i_vlazhnosti/1-1-0-84
Вот там внизу - два транзистора, работающих в ключевом режиме. И я не могу их никак рассчитать. Если кто поможет в течении пары часов - буду премного благодарен. Знаю, не самая сложная тема, но я умудрился её провтыкать на парах :(
Ну или хотя б формулы накидайте в последовательности, как всё это посчитать))
Заранее -спасибо!
-
By sunjob
добрый день
"пришли" AD8052, набросал тестовую схему (вых. каскад как в "нашем" генераторе, только ц.пот. заменил на обычный)
DDS Gen AD9833
осциллограммы по ссылке (желтый выход, синий - вход)
вых. уровень генератора выставлен и более не подстраивается, на осциллограмах заметно, что он немного гуляет
явно виден завал где-то начиная с 35МГц
ВОПРОСЫ:
такой поведение в следствии:
- монтажа на макетке?
- брака / подделки ОУ? (маркировка краской уже подозрительно)
- того и другого?
- ц.осц. 100МГц
- JDS 6600
- питание схемы 5В (в схеме будет 3.3 или 5.0В)
gallery
макетка_для_ОУ.7z
-
By Reptile
Доброго времени суток. Пытаюсь восстановить работоспособность колонок Top Device TDE 261/2.1. Колонки не раз ремонтировалась по части УНЧ, при очередном ремонте по ошибке (одинаковые разъемы) с трансформатора было подано переменное питающее напряжение на входы (разъем AUX/MP3) аудиопроцессора PT2313L (3,10,14 ноги - AGND, R_IN2 L_IN2). В результате чего выгорел сам аудиопроцессор PT2313L. PT2313L был заменен. Но колонка по прежнему не запускается. Как я понял, не запускается сам PT2313L, на его аудиовыходах (ноги 24, 25) сигнала нет. Передняя панель работает: индикация, кнопки, енкодер. Имеется подозрение, что вместе с процессором выгорели линии DATA и/или CLK на MCU, так как MCU и PT2313L соединены по этим линиям напрямую друг с другом. В МК и всей этой цифровой штуке не очень шарю, не знаю, как грамотно проверить работоспособность этой цифровой части, поэтому прошу помощи - Возможно ли какими-либо способами восстановить колонку или уже всё...
Из приборов, к сожалению, только мультиметр, осциллограф отсутствует.
Ниже немного измерений.
Напряжения на линиях: STD-BY-ждущий режим (в скобках рабочий режим):
DATA - 2.31В (1.9В).
CLK - 0.125В (0.135В).
Сопротивление между выводами:
CLK_MCU-DATA_MCU - 47 Ом.
CLK_MCU/DATA_MCU-GND - около 0.22 Ом и там и там. Звонится в обе стороны.
Питание MCU 5В, (4.6В STD-BY-ждущий режим, 4.0В рабочий режим и со временем также почему-то может падать до 3.6В)
MCU - не известен, нет маркировки. 18 Выводов, DIP.
Ноги MCU, которые удалось опознать:
1 - DATA
18 - CLK
3 - GND (?)
5 - GND (?)
? - они соединены вместе
14 - VCC
17 - not used (n/a)
15, 16 - OSC
ET6202 - управление индикатором, Control LED drive circuit
Фото плат (под сполером) и даташиты прилагаются.
Схемы данных колонок не имеется. Все что удалось найти это схема чуть более старшей модели TDE280/2.1, с данными колонками она мало что общего имеет, лишь общий принцип, узлы довольно сильно отличаются, но прикреплю на всякий, для общей информации.
PT2313L
ET6202
TDE280
-
By Guest Александр
Здравствуйте, помогите определиться с темой для дипломной работы , нужна радиоэлектронная схема
-