Страница 2 из 304

Добавлено: Пн сен 24, 2007 09:23:23
SAU
SOUND
Action
Sends pulses to a port pin.
Syntax
SOUND pin, duration, pulses
Remarks
Pin
Any I/O pin such as PORTB.0 etc.
Duration
The number of pulses to send. Byte, integer/word or constant.
Pulses
The time the pin is pulled low and high.
This is the value for a loop counter.
When you connect a speaker or a buzzer to a port pin (see hardware) , you can use the SOUND statement to generate some tones.
The port pin is switched high and low for pulses times.
This loop is executed duration times.
The SOUND statement is not intended to generate accurate frequencies. Use a TIMER to do that.
See also
NONE
Example
'-----------------------------------------------------------------------------------------
'name : sound.bas
'copyright : (c) 1995-2005, MCS Electronics
'purpose : demo : SOUND
'micro : Mega48
'suited for demo : yes
'commercial addon needed : no
'-----------------------------------------------------------------------------------------
$regfile = "m48def.dat" ' specify the used micro
$crystal = 4000000 ' used crystal frequency
$baud = 19200 ' use baud rate
$hwstack = 32 ' default use 32 for the hardware stack
$swstack = 10 ' default use 10 for the SW stack
$framesize = 40 ' default use 40 for the frame space
Dim Pulses As Word , Periods As Word
Pulses = 65535 : Periods = 10000 'set variables
Speaker Alias Portb.1 'define port pin
Sound Speaker , Pulses , Periods 'make some noice
'note that pulses and periods must have a high value for high XTALS
'sound is only intended to make some noise!
'pulses range from 1-65535
'periods range from 1-65535

End

Упс! Я ОЧЕНЬ разочарован в способностях автора данного поста. По крайней мере, можно было пустые строки убрать...Недоумевающий Сэр Мурр

Добавлено: Пн сен 24, 2007 10:11:18
KOSTYA
ой влетит вам от мышонка за этот пост, уже писалось неоднократно, что б такие вещи сохранялить в текстовике или еще каком редакторе, и цеплять к сообщению, потому как один такой пост целую страницу изводит

Добавлено: Вт сен 25, 2007 16:12:26
sinobi
SAU не мог бы ты написать как работать по i2с,да и с другими портами, интересует такие стороны как программы таймеров и частотомеров на барсике..Ждём продолжение с нетерпением.Побаловался в симуляторе с прогой и второго доковского файла-прикольно,а как можно ещё другого типа индикаторы прикручивать?Ивиняюсь,если я слишком разогнался.

Добавлено: Вт сен 25, 2007 17:19:44
SAU
sinobi писал(а):SAU не мог бы ты написать как работать по i2с,да и с другими портами, интересует такие стороны как программы таймеров и частотомеров на барсике..Ждём продолжение с нетерпением.Побаловался в симуляторе с прогой и второго доковского файла-прикольно,а как можно ещё другого типа индикаторы прикручивать?Ивиняюсь,если я слишком разогнался.
Частотомер писать на бейсике бессмысленно.Его нужно писать на асме.
Тем более, что у АВР синхронные счетчики и больше 1 Мгц ты не измеришь.
Конфигурирование портов очень простое - пишешь PortB=Output - и он настроен на выход, пишешь PortB=Input и он настроен на вход.Также можно настривать и отдельные пины.
Честно признавшись - лучше чем Кулиш я вряд ли напишу.Да и огромное количество апноутов могут помочь.
Если будет время - нарисую схему какой-нибудь охранной сигнализации, скажем на меге8, и попробуем разобрать.Но опять же - когда будет свободное время.
ЗЫ.Bascom , микроконтроллеры , ВЧ техника это всего лишь хобби, которому я отдаю свободное время когда оно появляется, к сожалению не очень часто.

Добавлено: Вт сен 25, 2007 20:37:55
Karavan
sinobi писал(а):а как можно ещё другого типа индикаторы прикручивать?Ивиняюсь,если я слишком разогнался.
Вот-тут есть кое какие библиотеки для графических дисплеев: http://ledeffects.net/pages/?id=12
Но симулятора под них в Барсике нет.
Успехов!

Добавлено: Ср сен 26, 2007 03:47:45
sinobi
SAU спасибо за совет буду изучать,насчёт сигнализации это правильно,в нашей стране это актуально и интересно .

Добавлено: Ср сен 26, 2007 20:29:12
SAU
Часть третья - Bascom и DS18B20.
Прошу прощения у Кота за мой пост с кодом.Обещаю больше так не делать.

Добавлено: Ср сен 26, 2007 21:06:54
WildCat
Замечание по III части.
SAU! ты жаловался в статье, что нет оператора сдвига битов в байте. Есть только функция rotate, но она перемещает бит с конца в начало и наоборот. Так вот, необходимый тебе оператор называется Shift и пример его использования находится в файле rotate.bas

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

B = 128
Shift B , Left
Print B
'B should be 0 now
Вот результат. А если бы ты сделал это функцией rotate, то значение переменной было бы 1.

Добавлено: Чт сен 27, 2007 10:40:30
Radan
Мои 5 копееек...Сенсор на светодиоде. Кто повторит, отпишитесь.

Добавлено: Пн окт 01, 2007 08:32:04
Пожиратель AVR
Кто могбы помоч с компиляцыей програмы ? Я больше уделяю написанию на си ну тут понадобилась скомпилировать программу на бейсике.Если кто возмется пожалуста подправте контролер с ATMEGA32 на ATMEGA128

Добавлено: Пн окт 01, 2007 08:46:12
tych

Добавлено: Пн окт 01, 2007 11:55:47
Radan
Пожирателю AVR - скомпилил. Обращайся на http://bascomavr.3bb.ru/, там всегда помогут.

Добавлено: Пн окт 01, 2007 18:47:31
Пожиратель AVR
Спосибо Radan , завтра попробую собрать если чтонить заработает доложусь :))

Добавлено: Вт окт 02, 2007 15:55:50
Radan
Кому надо программу для организации звука с подробными комментариями и кучей мелодий - http://ledeffects.net/data/bascom/SOUND_BASCOM.zip

Добавлено: Ср окт 03, 2007 10:43:36
omike
Уважаемый SAU , если можно расскажите в одной из частей Вашего учебника как в BASCOM реализовать ШИМ. Ждем продолжения!!!! :)

Добавлено: Пн окт 08, 2007 16:16:54
Radan
Уважаемый SAU , с нетерпением ждём обещанные бегущие огни!

Добавлено: Ср окт 10, 2007 04:21:07
sinobi
да ждём про сигналку!

Добавлено: Чт окт 18, 2007 14:52:13
omike
Ждем и ждем!!!!!!!!!!! :cry:

Добавлено: Ср окт 24, 2007 16:55:33
Radan
Люди, где вы!?
Тема то востребована!

Добавлено: Вт окт 30, 2007 12:09:07
omike
Кто-то обидел SAU , и он нас бросил, если что ни так просим прощения и ждем продолжения обучалки!!! :)