BASCOM AVR - Исходники, вопросы и ответы
|
|
Advanced | Дата: Среда, 18.07.2012, 12:59 | Сообщение # 21 |
Подполковник
Группа: Модераторы
Сообщений: 138
Репутация: 0
Статус: Offline
| Подключаем пульт RC5 к МК, при нажатии на кнопки на пульте включаются светодиоды:
Code $regfile = "m48def.dat" $crystal = 16000000 $lib "mcsbyte.lbx"
Config Rc5 = Pind.2
Enable Timer0
Config Pind.3 = Output : Led1 Alias Portd.3 Config Pind.4 = Output : Led2 Alias Portd.4 Config Pind.5 = Output : Led3 Alias Portd.5 Config Pind.6 = Output : Led4 Alias Portd.6 Config Pind.7 = Output : Led5 Alias Portd.7
'*******************************************************************************
Dim Address As Byte , Command As Byte Enable Interrupts
'*******************************************************************************
Do
Getrc5(address , Command) If Address <> 255 And Command <> 255 Then Command = Command And &B01111111 End If If Command = 1 Then Set Led1 Elseif Command = 2 Then Set Led2 Elseif Command = 3 Then Set Led3 Elseif Command = 4 Then Set Led4 Elseif Command = 5 Then Set Led5 Elseif Command = 6 Then Reset Led1 Elseif Command = 7 Then Reset Led2 Elseif Command = 8 Then Reset Led3 Elseif Command = 9 Then Reset Led4 Elseif Command = 10 Then Reset Led5 End If
Loop
|
|
| |
Advanced | Дата: Среда, 18.07.2012, 13:01 | Сообщение # 22 |
Подполковник
Группа: Модераторы
Сообщений: 138
Репутация: 0
Статус: Offline
| Распознавание команд с RC 5 и вывод на ЖКИ 16x2:
Code $regfile = "m48def.dat" $crystal = 12000000 Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.1 , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 Config Lcd = 16 * 2 Cursor Noblink Cursor Off Cls
Config Rc5 = Pind.3 Config Pind.3 = Input Enable Interrupts
Dim Address As Byte Dim Command As Byte
Do
Getrc5(address , Command)
If Address < 255 Then Command = Command And &B01111111 Locate 1 , 1 Lcd " " Locate 1 , 1 Lcd "Adr: " ; Address ; " Cmd: " ; Command End If
Loop
End
|
|
| |
Advanced | Дата: Среда, 18.07.2012, 13:29 | Сообщение # 23 |
Подполковник
Группа: Модераторы
Сообщений: 138
Репутация: 0
Статус: Offline
| Управление пультом, проект предназначался для управления автомагнитолой с ПДУ, схема прикреплена в сообщении, код ниже:
Code $lib "mcsbyte.lbx"
Vol_down Alias Portb.2 Vol_up Alias Portd.6 Prev_track Alias Portb.0 Next_track Alias Portb.4 Disp Alias Portb.1 Mute Alias Portb.6 Source Alias Portd.0
Const Rpower = 12 Const Rsource = 15 Const Rmute = 13 Const Rdisplay = 44 Const Rnext = 10 Const Rprev = 11 Const Rvolup = 16 Const Rvoldown = 17 Const Rfldup = 57 Const Rflddown = 56
Wait 5
Config Portb = Output Config Portd = Output Config Porta.0 = Output
Config Rc5 = Pina.1
Enable Interrupts
Dim Address As Byte , Command As Byte
Do Address = 0 Command = 0 Getrc5(address , Command) Command = Command And &B01111111
If Address <> 255 Then
If Command = Rsource Then Source = 1 Waitms 50 Source = 0 End If
If Command = Rpower Then Source = 1 Wait 2 Source = 0 End If
If Command = Rvolup Then Vol_up = 1 Waitms 50 Vol_up = 0 End If
If Command = Rvoldown Then Vol_down = 1 Waitms 50 Vol_down = 0 End If
If Command = Rprev Then Prev_track = 1 Waitms 50 Prev_track = 0 End If
If Command = Rnext Then Next_track = 1 Waitms 50 Next_track = 0 End If
If Command = Rdisplay Then Disp = 1 Waitms 50 Disp = 0 End If
If Command = Rmute Then Mute = 1 Waitms 50 Mute = 0 End If
End If
Loop
|
|
| |
sawa | Дата: Четверг, 27.06.2013, 20:33 | Сообщение # 24 |
Группа: Удаленные
| Может кто поделится исходником на Баском АВР таймера обратного счета на atmega8 до 24 ч. Очень хочется прикрутить его к дисплею от нокио, но знаний не хватает. Буду благодарен.
|
|
| |
Lavad | Дата: Пятница, 20.09.2013, 03:03 | Сообщение # 25 |
Рядовой
Группа: Пользователи
Сообщений: 1
Репутация: 0
Статус: Offline
| Меню для ЖКИ дисплея вида 1602 (сообщение #9) Судя по коду, речь идет о ЖКИ типа 1604Добавлено (20.09.2013, 03:03) --------------------------------------------- Меню для LCD16x2 - кусок кода 1. Повторение 9-ого сообщения. 2. Есть вызовы подпрограмм _menu_pos1...3 и сами подпрограммы. А где подпрограммы _zadergka_cikla, _setup и _run? 3. Под какой чип код написан?
|
|
| |
Адвансед6476 | Дата: Пятница, 10.10.2014, 14:16 | Сообщение # 26 |
Сержант
Группа: Администраторы
Сообщений: 37
Репутация: 0
Статус: Offline
| Полицейская сирена BASCOM AVR
Цитата $regfile = "m8def.dat" $crystal = 1000000
Dim Frq As Word Dim D As Word
Config Pind.0 = Output Spkr Alias Pind.0
'---------------------------------- Do For Frq = 50 To 20 Step -1 'Step -1 => Speed D = 51 - Frq Sound Spkr , D , Frq Next Frq For Frq = 20 To 50 Step 1 'Step 1 => Speed D = 51 - Frq Sound Spkr , D , Frq Next Frq Loop '----------------------------------
'( Do Sound Spkr , 420 , 60 Sound Spkr , 620 , 40 Loop
Do For Frq = 1 To 80 Set Portd.0 Waitms 3 Reset Portd.0 Waitms 3 Next Frq Waitms 500 Loop ')
End
|
|
| |
lionp | Дата: Суббота, 11.10.2014, 10:13 | Сообщение # 27 |
Рядовой
Группа: Пользователи
Сообщений: 1
Репутация: 0
Статус: Offline
| Всем доброго времени суток! Народ, кто более-менее разбирается в Bascom, помогите пожалуйста подредактировать код под себя. Код находится тут: http://bascom.at.ua/publ/i2c_clock_alarm/1-1-0-29. Автор на связь не выходит, а на том форуме тишина.
|
|
| |
Адвансед6476 | Дата: Воскресенье, 02.11.2014, 20:29 | Сообщение # 28 |
Сержант
Группа: Администраторы
Сообщений: 37
Репутация: 0
Статус: Offline
| Исходный код BASCOM AVR - Включение и выключение светодиода одной кнопкой, можно расширить код до бесконечности по аналогии приведенного кода.
Цитата $regfile = "attiny13.dat" $crystal = 4000000
Config Portb.3 = Output : Set Portb.2
Do Debounce Pinb.2 , 0 , Kn1 , Sub Loop End
Kn1: Toggle Portb.3 Return
End
|
|
| |