Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Модератор форума: ivan_fd  
Форум Picbasic.ru » Программирование МК » PicBasicPro » помогите пожалуйста новичку со звуком (DTMF сигнал)
помогите пожалуйста новичку со звуком
terrarus Дата: Вс, 08.11.2009, 23:40  |                                                                                                                Сообщение # 31
Группа: Пользователи
Ранг:  Помогаю всем
Сообщений: 451
Репутация: 17   ±
Замечания:   ±
На сайте с 21.08.2008

Статус: Offline

FREQOUT not supported wiht 12-bit core devices!
Вот, что сказал мне Протон по поводу 12C509A при попытке использовать оператор FREQOUT.
А по руски это значит - команда FREQOUT не поддерживается 12-разрядными устройствами.
Но это не значит что нельзя написать программу в Протоне для 12C509A.
Я прикрепил к предыдущему своему сообщению полностью рабочую программу и работающую модель сделанную в Протеусе 7.5 SP3 версии. Именно на девайсе 12C509A!!! А написал програмку и откомпилировал в среде PROTON+IDE 1.0.4.6 и PPROTON+BASIC Compiler 3.2.5.5.
Из всего сказанного мною здесь нужно сделать следующие выводы:
Вывод 1. Протон преданазначен для работы с 16-разрядными устройствами. Кстати об этом на первых страницах мануала разработчики и предупреждают об этом. Хотя и для 12-разрядных девайсев на нем можно писать программы. Но не вся МОЩЬ Протона может при этом использоваться.
Вывод 2. В этой ситуации плох не Протон, а микроконтроллер. Это все равно, что собирать звуковой усилитель на транзисторах П4Б, а в выпрямительном мосту использовать диоды Д7Ж.
Вывод 3. Нужно изучать и переходить но новые средства программирования и новую элементную базу.
Если вы со мной не согласны и упорно будете отстаивать 12C509A, то Вам нужно забыть о синтезе сложных зуков и довольствоваться разработкой мигалок для новогодних елок.


Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
ЯНДЕКС Дата: 08.11.2009
stanoknet Дата: Вс, 22.11.2009, 09:23  |                                                                                                                Сообщение # 32
Группа: Проверенные
Ранг:  Новенький
Сообщений: 6
Репутация: 0   ±
Замечания:   ±
На сайте с 03.10.2009

Статус: Offline

Месяц назад я вообще смутно представлял что такое микроконтроллер...
Сначала ёлки и мигалки, потом синтез сложных звуков, который невозможен как я понимаю без использования внешней памяти, но пока разбираюсь с этим. Что тут не так, почему компилируется, но отказывается работать правильно.
Code

          Device = 12C509A
          XTAL = 4
          TRISB=%00110100
    '------- Определение переменных ------------   
          Symbol PIN = GPIO.0
          Symbol PINM = GPIO.5
          Symbol PINH = GPIO.4
          Symbol PINW = GPIO.2
          Dim A As Word
          Dim INDEX As Byte
          Dim Assign1 As Word
          Dim Assign2 As Word
                 
          main:
          '------обработчик кнопок-----
          '------бработчик кнопки Микрофон-----                  
          If PINM=1 Then
          GoTo main
          EndIf          
          '------бработчик кнопки Horn-----                  
          If PINH=0 Then
          '--------Horn --------
            
          HORN:
          INDEX = 0
          Assign1 = LookUpL INDEX, [ 1000, 600, 440, 400, 360, 320, 300, 280, 300, 320, 360, 400, 440, 600 ]
          Assign2 = LookUpL INDEX, [ 600, 440, 400, 360, 320, 300, 280, 300, 320, 360, 400, 440, 600, 1000 ]
          PIN=1
          PAUSEUS Assign1
          PIN=0
          PAUSEUS Assign2
          INDEX = INDEX + 1
          If INDEX = 13 Then GoTo main
          GoTo HORN
          EndIf          
          '------обработчик кнопки Wail-----          
          If PINW=0 Then
          '--------Wail --------
            
          Wail:   
          For A=0 To 700 Step 1
          PIN=1
          PAUSEUS 800
          PIN=0
          PAUSEUS 400
          PIN=1
          PAUSEUS 250
          PIN=0
          PAUSEUS 125
          PIN=1
          PAUSEUS 62
          PIN=0
          PAUSEUS 31
          PIN=1                     
          PAUSEUS 15
          PIN=0
          PAUSEUS 7
          PIN=1
          PAUSEUS 3
          PIN=0
          PAUSEUS A                
          Next
          For A=700 To 0 Step -1
          PIN=1
          PAUSEUS 800
          PIN=0
          PAUSEUS 400
          PIN=1
          PAUSEUS 250
          PIN=0
          PAUSEUS 125
          PIN=1
          PAUSEUS 62
          PIN=0
          PAUSEUS 31
          PIN=1                     
          PAUSEUS 15
          PIN=0
          PAUSEUS 7
          PIN=1
          PAUSEUS 3
          PIN=0
          PAUSEUS A                     
          Next          
          GoTo Wail          
          EndIf
          GoTo main
          End

файл ISIS

Возможны небольшие фатальные ляпы, не судите строго

Прикрепления: test_sound.dsn (83.8 Kb)

Сообщение отредактировал stanoknet - Вс, 22.11.2009, 09:26
terrarus Дата: Вс, 22.11.2009, 23:14  |                                                                                                                Сообщение # 33
Группа: Пользователи
Ранг:  Помогаю всем
Сообщений: 451
Репутация: 17   ±
Замечания:   ±
На сайте с 21.08.2008

Статус: Offline

stanoknet, в общем я покрутил, покрутил вашу модель и программу, помучился и пришел к выводам:
1. В самой модели есть какие-то бяки, толи у Вас Протеуст с глюками, толи Вы что-то делели некорректно, только пришлось мне заменить все модельки деталек включая и микропроцессор. Только тогда схема стала оживать.
2. Писать для 12C509 нужно либо на асме, либо на PicBasicPro и компилировать нужно соответствующими инструментами. Протон возможно плохо переваривает такой слабый процессор. Думаю, что на Протоне при соответствующем опыте написания прог для 12-разрядных микроконтроллерах можно с успехом писать и для 12C509. У меня такого опыта нет, да и не очень-то хочется его приобретать. Все равно могралки и кряколки я на таком процессоре делать не буду. И возвращаться к PicBasicPro не хочется, попробовав вкус Протона. Я сейчас даже PIC16f.. в своих разработках не применяю, а только PIC18....
Я смоделировал то, что вы хотели на PIC16f628A, и все сразу заработало. Если хотите я могу разместить здесь и схему и програмку. Сейчас же ничего не прикрепляю так как вы продолжаете упорно держатся за 12C509, может быть вам просто не нужна схемка на PIC16f628A и програ для него.


Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
stanoknet Дата: Вс, 22.11.2009, 23:38  |                                                                                                                Сообщение # 34
Группа: Проверенные
Ранг:  Новенький
Сообщений: 6
Репутация: 0   ±
Замечания:   ±
На сайте с 03.10.2009

Статус: Offline

да согласен ..... cool я ещё и ZX только год назад выкинул, старьёвщик....блин
с удовольствием проанализирую твою схему на pic18, но раз зашёл разговор о ней, то вопрос: роясь про просторам интернета, нашёл чудную прогу http://www.romanblack.com/picsound.htm , но это видимо только для работы с внешней памятью
Куда в какую сторону рыть, как управлять скоростью воспроизведения, что бы получить типа vroombox-a http://www.vroombox.com/vroombox/ ?

Кстати сирена родилась простым просмотром спектра в aimp, хотя сигнал сложный и трёхуровневый, если изменять длительность периода повторений и длительность самих импульсов (простых прямоугольных) не по линейному закону, а скажем по экспоненте, то можно получить совсем близкий по значению сигнал к Wail

p.s. неужели Китайские товарищи с их голосящими игрушками умнее меня? неужели я не повторю, что либо подобное? не превзойду их?

Сообщение отредактировал stanoknet - Пн, 23.11.2009, 04:28
Форум Picbasic.ru » Программирование МК » PicBasicPro » помогите пожалуйста новичку со звуком (DTMF сигнал)
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Поиск: