Вы вошли на сайт, как Гость
Регистрация

Простой звуковой генератор

Программирование микроконтроллеров в среде FloweCode
(Простой звуковой генератор)

Восьми-тональный звуковой генератор. Принцип работы следующий. Программа в бесконечном цикле опрашивает регистры порта В. Если нажата одна из кнопок, число от 1 до 8 присваивается переменной TONE. Если переменная TONE больше нуля, а это значит, что какая то кнопка нажата, программа посылает единицу в нулевой регистр порта А, затем запускает задержку на число значение переменной TONE миллисекунд и отправляет ноль в нулевой регистр порта А. И так продолжается пока кнопка нажата. Таким образом на выводе микроконтроллера А0 получается импулься с разной скважностью, и если подключить к нему динамическую головку или наушник, то вы услышите звук разной тональности.


Старт бесконечного цикла.




Опрос клавиатуры и присвоение значения 
переменной KEY






Точка выхода безусловного перехода (А)




Точка входа безусловного перехода (В:)




Проверка больше ли 0 переменная TONE

Если да:

Оправить единицу в регистр 0 порта А



Задержка на содержимое переменной 
TONE в мс


Оправить ноль в регистр 0 порта А









Возврат к началу бесконечного цикла



Точка входа безусловного перехода (А:)


Проверка равна ли нулю переменная KEY

Если да:



Перменной TONE присвоить 0







Проверка больше ли нуля переменная KEY

Если да:


Перменной TONE присвоить 1






Проверка больше или равна двум переменная KEY

Если да:



Перменной TONE присвоить 2






Проверка больше или равна четырем переменная KEY

Если да:



Перменной TONE присвоить 3






Проверка больше или равна восьми переменная KEY

Если да:



Перменной TONE присвоить 4






Проверка больше или равна шестнадцати переменная KEY

Если да:



Перменной TONE присвоить 5





Проверка больше или равна тридцати двум переменная KEY

Если да:



Перменной TONE присвоить 6







Проверка больше или равна шестидесяти четырем 
переменная KEY

Если да:

Перменной TONE присвоить 7






Проверка больше или равна ста двадцати восьми 
переменная KEY

Если да:


Перменной TONE присвоить 8






Точка выхода безусловного перехода (В)

Файлы проекта можно скачать здесь:

Оригинальный источник материала: www.flowecode.info