Jump to content
  • ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Tishka
      В ремонт поступил планшет с диагнозом "Не работает матрица". Хозяин планшета сообщил мне, что ранее он ремонтировал его в сервисном центре, меняли разбитый тач. Попав внутрь планшета обнаружил, что не до конца засунут шлейф в разъем матрицы, попытался его правильно поставить, ничего у меня не вышло, он упорно правильно по полоске не вставал. Вскоре я обнаружил погнутые контакты в разъеме матрицы, куда вставляется шлейф. Заказал аналогичную матрицу на али, получив её я сразу решил вставить. Но ничего хорошего у меня не вышло, шлейф на сей раз встал ровно, но изображения на экране нету, горит только одна подсветка. Немного подумав, решил, что проблема может крыться в шлейфе, который подключается одним концом в саму матрицу а второй в материнку, прозвонил его мультиметром, на шлейфе не прозваниваются первый и последний контакт. Это нормально? Или все таки шлейф неисправен? или искать надо какую то другую причину?
      Марка планшета: Acer Iconia Tab A1-810 

    • By VeryMuch
      Продам планшет. Технически исправен. Внешне отлично, использовался в чехле.
      Характеристики на фото. Чехла, зарядки и кабеля нет.
      Цена 1000 руб, почтовые расходы включены. Оплата на курту Сбера.
       


    • By reno
      Продам неработающий планшет Onda V813.
      причина поломки: 
       
    • By Humanist96
      Всём доброго времени суток. В общем принесли на ремонт инвертор SP-1000C, владелец перепутал плюс с минусом и вскоре услышал взрыв. Разобрав инвертор выяснилось, что по входу питания разорвало конденсатор 100мкф 25в ( заменил на 100мкф 50в) и пробило диод 1N5404 (заменил на 1N5408), также под диодом погорела дорожка (восстановил). Далее решил запустить инвертор, он запустился но не переключается на аккумулятор. Если попытаться при работе инвертора подключить аккумулятор тут же происходит КЗ, при этом на проводах присутствует напряжение 14.2 В. Далее решил поменять KA3525A и LM324N (девать их просто уже некуда) но ничего не изменилось. Я подозреваю, что скорее всего дело в микроконтроллерах em78p156elpj-g и pic16c72a, так как не горит не один светодиод. Вопрос где взять прошивку и можно ли её считать каким нибудь программатором? Также при работе жужжит трансформатор на входной плате (скорее всего виноват конденсатор 103M 1KW). 
      Видео: 
      Скачать видео Скачать видео Скачать видео Скачать видео Скачать видео  




    • By reno
      Здравствуйте. Помогите определить причину неисправности планшета.
      Планшет Onda V813. Несколько раз слетала прошивка. Подозрение на статику (все было в зимний период).
      Заново прошивал - все работало. В том году вышел из строя USB (думаю тоже из-за статического)
      Планшет перестал распознаваться настольным компьютером. На днях опять слетела прошивка. 
      Разобрал думал проблема с разъемом, все вроде нормально.
      Прозвонил USB, результат на рисунке.
      В чем может быть проблема?
      Может у кого есть принципиальная схема на этот планшет?


  • Сообщения

    • Надо ещё  --12В линию посмотреть  маловероятно,но возможно 1 диод 12В линии ушол в обрыв,фигово чтоб проверить отпаять придётся
    • Подцепил нагрузку по линии 12, 3.3 ,5 в одновременно. Никаких изменений не произошло.
    • Приведу цитату из анекдота: Компреме?
    • - Дорогой, ты мне изменяешь? - С чего ты взяла, дорогая? - Тебя постоянно окружают умные и красивые женщины. - Мне не нужны умные и красивые женщины, мне нужна ты.     - Мам, дай денег. - На что? - Если я тебе скажу на что, ты не дашь! - Если ты не скажешь, то тем более не дам! - Тогда уж точно не скажу на что! Через 10 минут. - Так все-таки, на что тебе нужны были деньги? - Дашь денег - скажу.    Жила-была девушка, звали ее Мария. И был у нее парень, а звали его Хулио. Но не нравилось Марии, что он некрасив, оставила она его. Познакомилась Мария с другим парнем, а звали его тоже Хулио. Но не нравилось Марии, что он недостаточно богат. Рассталась она с ним. И стала Мария встречаться с другим, и звали его Хулио. Но недовольна была Мария... Посмотрел на это Господь и воскликнул: - Так какого же Хулио тебе надо, Мария?!   Поручика Ржевского приняли на радио говорить точное время, договорившись, что непотребщину будут забивать бипами. И вот теперь каждый час мы слышим шесть гудков.  
    • А почему бы не ответить ему? За геноцид своего народа, к примеру?
    • Добрый день, уважаемые форумчане. Столкнулся со странной проблемой в работе связки ADC-DMA В проекте используется 2 канала DMA1. Канал 1 для циклического чтения регулярных регистров ADC И канал 4 для вывода буфера в USART. (После добавления этого канала в работу и начались чудеса ADC по преобразует сигналы и дергает DMA, который последовательно раскладывает значения в буфер uint16_t signal[6] Все работало длительное время пока я не решил задействовать DMA Для вывода в USART. Например: ADC1- Канал1 - записывался в нулевой элемент массива signal[ 0 ] ADC1- Канал2 - записывался в первый элемент массива signal[ 1 ] ADC1- Канал3 - записывался во второй элемент массива signal[ 2 ] После вывода буфера по каналу 4, на канале 1 происходит смещение индекса массива и данные от ADC начинают записываться  по другим адресам. Например: ADC1- Канал1 - записывался во второй элемент массива signal[ 2 ] ADC1- Канал2 - записывался в третий элемент массива signal[ 3 ] ADC1- Канал3 - записывался во четвертый элемент массива signal[ 4 ] Каким образом DMA->Канал4 может вносить проблемы на работу DMA->Канал1? Ниже привожу инит и вывод  Инициализация и запуск циклического считывания значений в массив  arrSignal[] void Init_ADC_DMA(void) { uint32_t pin; // Включаем тактирование GPIOA, AFIO, ADC1 RCC->APB2ENR |= RCC_APB2ENR_IOPAEN | RCC_APB2ENR_AFIOEN | RCC_APB2ENR_ADC1EN; RCC->CFGR |= RCC_CFGR_ADCPRE_DIV8; //Предделитель АЦП 72/6 = 12 МГц // Очистим настройки пинов. Нулевое значение соответствует Input Analog GPIOA->CRL &= ~( GPIO_CRL_CNF0 | GPIO_CRL_MODE0 | GPIO_CRL_CNF1 | GPIO_CRL_MODE1 | GPIO_CRL_CNF5 | GPIO_CRL_MODE5 | GPIO_CRL_CNF6 | GPIO_CRL_MODE6 | GPIO_CRL_CNF7 | GPIO_CRL_MODE7 ); // Настройка DMA1 RCC->AHBENR |= RCC_AHBENR_DMA1EN; // Включаем тактирование DMA1 // Deinit DMA1 Channel1 DMA1_Channel1->CCR &= ~DMA_CCR1_EN; // Отключаем DMA1 CH1 //DMA1_Channel1->CCR = 0; // Reset DMA1 Channel1 control register DMA1->IFCR |= DMA_ISR_GIF1 | DMA_ISR_TCIF1 | DMA_ISR_HTIF1 | DMA_ISR_TEIF1; // Reset interrupt pending bits for DMA1 Channel1 // Настраиваем DMA DMA1_Channel1->CNDTR = ADC_COUNT; // Количество передаваемых данных DMA1_Channel1->CPAR = (uint32_t) &(ADC1->DR );// Адрес перифирии DMA1_Channel1->CMAR = (uint32_t) arrSignal; // Адрес памяти DMA1_Channel1->CCR |= DMA_CCR1_MINC // Инкремент памяти | DMA_CCR1_PSIZE_0 // Режим периферии 16 бит | DMA_CCR1_MSIZE_0 // Режим памяти 16 бит | DMA_CCR1_PL_1 // Channel Priority level hight | DMA_CCR1_CIRC // Circular mode | DMA_CCR1_TEIE; // Transfer error interrupt enable DMA1_Channel1->CCR |= DMA_CCR1_EN; // Включаем DMA1 Channel3 // Очистим настройки ADC1 ADC1->CR1 = 0; ADC1->CR2 = 0; ADC1->SMPR2 = 0; ADC1->SQR1 = 0; ADC1->SQR2 = 0; ADC1->SQR3 = 0; // Настраиваем ADC1 ADC1->CR1 |= ADC_CR1_SCAN; // Scan mode ADC1->CR2 |= ADC_CR2_CONT; // Continuous Conversion ADC1->CR2 |= ADC_CR2_DMA; // DMA mode ADC1->CR2 |= ADC_CR2_TSVREFE; // Temperature Sensor and VREFINT Enable ADC1->CR2 &= ~ADC_CR2_ALIGN; // Data Alignment ADC1->SQR1 |= ((uint32_t)(ADC_COUNT - 1) << 20); // Сканируем 6 каналов (6-1 = 5) // Настройка семплирования. Номер канала совпадает с номером пина ADC1->SMPR2 |= ADC_SMPR2_SMP0; // Channel 0 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP1; // Channel 1 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP5; // Channel 2 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP6; // Channel 3 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP7; // Channel 4 Sample time selection 111: 239.5 cycles ADC1->SMPR1 |= ADC_SMPR1_SMP16; // Channel 5 Sample time selection 111: 239.5 cycles // Настройка пинов pin = 0x00; ADC1->SQR3 |= (pin << (5 * 0)); // Pin0 pin = 0x01; ADC1->SQR3 |= (pin << (5 * 1)); // Pin1 pin = 0x06; ADC1->SQR3 |= (pin << (5 * 2)); // Pin5 pin = 0x07; ADC1->SQR3 |= (pin << (5 * 3)); // Pin6 pin = 0x05; ADC1->SQR3 |= (pin << (5 * 4)); // Pin7 pin = 0x10; ADC1->SQR3 |= (pin << (5 * 5)); // Pin16 - Температурный сенсор ADC1->CR2 |= ADC_CR2_ADON; // A/D Converter ON / OFF // Обнуляем калибровку ADC1->CR2 |= ADC_CR2_RSTCAL; while (ADC1->CR2 & ADC_CR2_RSTCAL); //запускаем калибровку и ждем ее завершение ADC1->CR2 |= ADC_CR2_CAL; while (ADC1->CR2 & ADC_CR2_CAL); ADC1->CR2 |= ADC_CR2_EXTTRIG; //ADC_CR2_SWSTART; ADC1->CR2 |= ADC_CR2_DMA; // DMA mode }   Вывод буфера в usart  //################################################################## // function Передача буфера в USART1 по DMA1 Ch4 // argument buf - указатель на буфер char* // len - длина буфера // return void //################################################################## void DMA1Ch4_SendBuf8(const char* buf, uint32_t len) { // Deinit DMA1 Channel4 DMA1_Channel4->CCR &= ~DMA_CCR4_EN; // Отключаем DMA1 CH2 //DMA1_Channel4->CCR = 0; // Reset DMA1 Channel4 control register DMA1->IFCR |= DMA_ISR_GIF4 | DMA_ISR_TCIF4 | DMA_ISR_HTIF4 | DMA_ISR_TEIF4; // Reset interrupt pending bits for DMA1 Channel4 // Настраиваем DMA1 Channel4 DMA1_Channel4->CNDTR = len; // Количество передаваемых данных DMA1_Channel4->CPAR = (uint32_t) &(USART1->DR); // Адрес перифирии DMA1_Channel4->CMAR = (uint32_t) buf; // Адрес памяти DMA1_Channel4->CCR |= DMA_CCR4_MINC // Инкремент памяти //| DMA_CCR4_PL_0 // Channel Priority level Medium | DMA_CCR4_DIR //Data transfer direction. 0 - from peripheria 1 - from memory | DMA_CCR4_TCIE; // Transfer complete interrupt enable //DMA1_Channel4->CCR |= DMA_CCR4_TEIE; // Transfer error interrupt enable DMA1_Channel4->CCR |= DMA_CCR4_EN; // Включаем DMA1 Channel5 }   По окончании передачи формируется прерывание в котором просто отключаем DMA1->Channel4 //################################################################## //function Прерывание по окончании передачи по DMA CH4 # //argument none # //return void # //################################################################## void DMA1_Channel4_IRQHandler(void) { if ((DMA1->ISR & DMA_ISR_TCIF4)) { // Transfer Complete flag DMA1_Channel4->CCR &= ~DMA_CCR4_EN; // Отключаем DMA. DMA1->IFCR |= DMA_IFCR_CTCIF4; // Channel4 Transfer Complete clear usart.Status_Tx = Tx_None; xSemaphoreGiveFromISR(mtxUsart, 0); } } Есть у кого мысли в чем может быть проблема? Второй день поисков - не дает результата. Понимаю, что можно обойти путем пересинхронизации ADC-DMA после каждого вызова отправки буфера по 4 каналу ДМА. Но это костыль получается.
    • @Beliy_voron @Владимир Белов Это ЕГЭ 
×
×
  • Create New...