S

StasRadeon

Members
  • Публикации

    100
  • Зарегистрирован

  • Посещение

Репутация

-1 Плохой

О StasRadeon

  • Звание
    Осваивающийся

Информация

  • Пол
    Мужчина
  • Город
    Moldova

Электроника

  • Стаж в электронике
    Менее года
  • Сфера радиоэлектроники
    микроконтроллеры
  1. S

    Спасибо огромное всем , отпишусь когда будет проект готовый.
  2. S

    void InitUART1() { U1MODEbits.UARTEN = 0; U1STAbits.UTXEN = 0; U1MODEbits.ABAUD = 0; U1MODEbits.BRGH = 0; //High Speed mode U1MODEbits.PDSEL = 0; // Fara paritate U1MODEbits.STSEL = 0; // 1 bit de Stop/ // U1BRG = (Fcy / (16 * BaudRate)) - 1 // U1BRG = (36850000 / (16 * 256000)) - 1 // U1BRG = 10 U1BRG = 10;//256.000//239; U1MODEbits.UARTEN = 1; //Activam UART U1STAbits.UTXEN = 1; //Activam Transmisia _delay__us(30); // 1/256000 //DELAY_105uS это последние модификацие в коде, но тоже не очень быстро ;
  3. S

    через два-три часа отпишусь, буду дома чтоба тестировать . спасибо большое
  4. S

    но когда я смотрел в Device Manager в ПК , порт больше чем 128.000 не принимает. А как сделать так что побоище. Допустить поставим 256000, -> 0.64 seconds; Тоже мало
  5. S

    bits_per_character -> 8 data bits + 1 start bit + 1 stop bit bytes x bits_per_character / bits_per_second 16000 x 10 / 128000 = 1.25 seconds. 16 x 1024 x 10 / 128000 = 1.28 seconds. правильное мышление ?
  6. S

    Moldova Хорошо, и как мне повысить на 16 килобайт/сек ? Проблема в УАРТ как видно. Дайте маленький пример, пожалуйста
  7. S

    Это значит что если я отправлю 3 символа ( потому что работаю ацп на 10 битов и я отправляю [0-256 максимум ] аdc value ( но не сложно и 1024 ) ) то будет нужно в 3 раза быстрее, правильно понел ? То значит нужно будет UART -> 256.000 ? и значит что Freq , не должен быть 40 Мнz , а 80 Mhz Правильно ? и видно что мне нужно использовать и Direct Memory Acces (DMA)
  8. S

    Я работаю с Microphone Sensor (KY-038), и хотелось зарегистрировать голос. А для этого , мне нужно как минимум 8000 значение от ацп , чтобъ потом в Матлаб ево преображать для дольнешово дело. И я так подумал , если нужно 8000 значения. Зная что Ф = 1/Т, то мне нужно получать данные с периодом в 125 мкс и передать через UART. Хочу сделать распознавание голоса с неуроновами сетями на недорогой микроконтроллер . Извините за мой русский. //Baudrate 128.000 // U1BRG = (40.000.000 / (16 * BaudRate)) - 1 // U1BRG = (36850000 / (16 * 128.000)) - 1 // U1BRG = 19.53125
  9. S

    Ваши мнения ? как можно исправить. Можете подсказать куда посмотреть , что можно изменить ? UART с рейтом в 128000 работает
  10. S

    я просто сечйас работал на тот элемент , чтобъ зделать одно прерывания через одной секунды и всё, для тово чтобы посмотреть сколько преобозовании будет от ацп и попутался . Проблема в том , по моим расчетом, я должон принимать в hyperterminal (serial) , около 8000 преобозовании от ацп в одной секунды , но я получаю около 3000
  11. S

    правильно заметили , T = 0,125 us ;
  12. S

    Правильно , так : FCY = FOSC/2 = 40 Mhz T = PR3 * 1 / (FCY / Prescaler) FOSC = 80 MHz T = 1 s => PR3 ≈ 4999 Prescaler = 1:1
  13. S

    Работает , но неправильно, не знаю где смотреть, в чём я ошибся.
  14. S

    Правильно , я когда поставил код забыл что менял PR3 = 49; извените .
  15. S

    правильно -> PR3=4999; FCY = FOSC/2 = 40 Mhz T = PR3 * 1 / (FCY / Prescaler) FOSC = 80 MHz T = 1 s => PR3 ≈ 4999 Prescaler = 256 Таймер 3 устанавливается чтоба перезапустить преобразование АЦП через каждые 125 us