Воспроизведение звука на основе pic 16f628a

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Да, на 4.7 к. Что то с чтением не так, потому что, судя по осцилографу данные идут..
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Реклама
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

А где тот прочитанный байт юзаете ?
Выдайте на порт для наглядности.
И не нужно в рабочий цикл это все ставить, перед ним прочитайте.
Покурите шит на 24, может, не выбрана или адрес в воздухе висит.
Реклама
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2360
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Dmitry Dubrovenko »

Вот применение речевого информатора на I2C совместно с массажным креслом.
Вложения
Voice2chip.part2.rar
(465.23 КБ) 290 скачиваний
Voice2chip.part1.rar
Flash-презентация
(781.25 КБ) 279 скачиваний
ICQ нет, и, в ближайшее время, не будет.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

urry писал(а):А где тот прочитанный байт юзаете ?
Выдайте на порт для наглядности.
И не нужно в рабочий цикл это все ставить, перед ним прочитайте.
Покурите шит на 24, может, не выбрана или адрес в воздухе висит.
Выдал и увидел, что после чтения сигнал на SDA и SCL остаётся постоянно высоким, из за чего после присваения порту В принятого байта, последний устанавливается в 0xFF..
Dmitry Dubrovenko писал(а):Вот применение речевого информатора на I2C совместно с массажным креслом.
Очень забавно, но исходники были бы ценнее :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

а каким он должен быть ?
FF - стандарт для незапрограмированной памяти. Запишите инфу в адрес, выждите 10 мс, прочтите и сравните с тем, что записали.
Реклама
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Что это может значить? :facepalm: (зеленый - линия данных, красный - тактирование)
Изображение
Вложения
121.JPG
(28.67 КБ) 1153 скачивания
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Реклама
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

я б сказал, что зеленый тактирование :)
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Да точно переаутал :oops: но всё равно у них форма какая то странная..это нормально?
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

нет, после 8 битов информации идет 9 бит подтверждения - по шине клок импульс выдает мк , а садит в 0 шину данных устройство, которому оно адресовано. Т.е. на 9 бите sda должна быть просажено на землю сигналом со стороны памяти.
Этого нет. Память не отвечает.
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2360
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Dmitry Dubrovenko »

Hispanus писал(а):Очень забавно, но исходники были бы ценнее
Исходники на Асме.
Могу выслать запрограммированный МК (подробности - личкой).

urry писал(а):Этого нет.
Почему же? Вроде как-раз есть.
Хотя, конечно, по такой картинке судить сложновато.
ICQ нет, и, в ближайшее время, не будет.
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

Имхо, нет.
Причем я даже не могу сказать - проект в студию - чтобы дома посмотреть - в жизни у меня это ццс не стояло.
Только хайтек.
Форева типа.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Аlex »

Hispanus, посмотрите http://chipmk.ru/index.php/features/44- ... c16-ds1990.
Там и исходник я выложил.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Спасибо, у меня даже кое что получилось - запись в 24LC256, а потом чтение оттуда:

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

#include <16f628a.h>
#use delay(clock=4000000)
#fuses XT,NOWDT
#use i2c(Master,Slow,sda=PIN_A1,scl=PIN_A0,force_hw)
#byte TRISA = 0x85
#byte PORTB = 0x06
#byte TRISB = 0x86

const int8 c1[]={
0x95,0x95,0x95,0x93,0x91,0x8e,0x8c,0x89,0x86,0x82,0x80,0x7b,0x78,0x74,0x72,0x6f,0x6d,0x6c,0x6c,0x6c,0x6c,
0x6e,0x6f,0x72,0x75,0x78,0x7c,0x7f,0x82,0x85,0x89,0x8b,0x8d,0x90,0x91,0x92,0x92,0x92,0x90,0x8e,0x8b,0x88,
0x84,0x81,0x7e,0x7c,0x7a,0x78,0x76,0x74,0x72,0x71,0x6f,0x70,0x70,0x71,0x73,0x75,0x78,0x7b,0x7f,0x81,0x85,
0x88,0x8a,0x8c,0x8e,0x90,0x91,0x91,0x92,0x91,0x8f,0x8d,0x8b,0x88,0x84,0x81,0x7d,0x7a,0x77,0x74,0x71,0x6e,
0x6c,0x6a,0x68,0x67,0x68,0x69,0x6b,0x6e,0x71,0x75,0x78,0x7c,0x80,0x84,0x88,0x8c,0x90,0x93,0x96,0x99,0x9a,
0x9a,0x9a,0x99,0x96,0x93,0x8f,0x8b,0x87,0x83,0x80,0x7c,0x79,0x75,0x72,0x6e,0x6c,0x69,0x68,0x67,0x68,0x69,
0x6b,0x6e,0x72,0x75,0x79,0x7d,0x81,0x84,0x88,0x8b,0x8e,0x91
};
int8 c2[]={0};
int value=0,i=0,addr=0;

void main()
{
   TRISB=0;
  PORTB=0;
  TRISA=0b00000011;
  
  value=sizeof(c1);
  
  while(1)
    {
     while (i<=value)
       {
               i2c_start();
      //Инициализация передачи
      
      i2c_write(0xA0);
      //Адрес Slave с запросом на запись
      
      i2c_write(addr);
      i2c_write(addr);
      //Адрес ячейки памяти
      
      i2c_write(c1[i]);
      //Передача 
      
      i2c_stop();
      //Конец
      
      delay_ms(10);
      
      
      i2c_start();
      
       i2c_write(0xA0);
      //Адрес Slave с запросом на запись
      
      i2c_write(addr);
      i2c_write(addr);
      //Адрес ячейки памяти
      
      i2c_start();
      
      i2c_write(0xA1);
      //Адрес Slave с запросом на чтение
      
      c2[i]=i2c_read(0);
      //Чтение
      
      i2c_stop();
      //Конец
      delay_ms(10);
      
      PORTB=c2[i];
      delay_ms(500);
      i++;
      addr++;
       }
       i=0;
    }
}
Индикацией служит Порт В, в который заливаются значения массива

Кто хочет может поиграться в Протеусе :)
Вложения
1.rar
(15.04 КБ) 214 скачиваний
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

Это победа, согласен.
Но эта память Вам не нужна.
Подключайте микросд или ммс и переходите с 16 пика на 24.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Наверно еще пока рано) Теперь меня мучает другой вопрос: эта внешняя память такая большая..как же теперь ее использовать..ведь чтобы ее прошить нужен как минимум МК..а у МК всё наоборот - память маленькая...получается рекурсия)) Только программатор?
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

ну не руками же набивать... Открываете wav файл, ковыряете оттуда данные, сохраняете в bin формате, он самый простой и, кстати, конвертируется в hex тоже без проблем.
И чем-то типа ponyprog шейте, если больше ничего нет.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Как Вы думаете будет ли работать воспроизведение, если соединить код про ШИМ, представленный мной в начале темы с кодом записи\чтения внешней памяти? :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Аlex »

Думаю что если просто соединить, то не будет. Их ещё надо связать между собой :)
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Re: Воспроизведение звука на основе pic 16f628a

Сообщение urry »

Ну у Димы же работает связка :)
Только с записью - сразу нет - блок пишется 10 мс.
Долго ждать .
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Воспроизведение звука на основе pic 16f628a

Сообщение Hispanus »

Аlex писал(а):Думаю что если просто соединить, то не будет. Их ещё надо связать между собой :)
Под соединить я предполагал написать новый исходник, добавив туда алгоритм работы с ШИМ + алгоритм работы с внешней памятью :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»