|
|
| (не показано 12 промежуточных версий 3 участников) |
| Строка 1: |
Строка 1: |
| − | '''УРОК №1 ===Учим МиниБот ездить под управлением ИК-пульта от телевизара по протоколу RC-5==='''<br />
| + | [[Категория:МиниБот]] |
| | | | |
| − | [[Задание№1]]'''Задание №1''' ''-=Учим МиниБот ехать прямо на заданной скорости=-''<br /> | + | [[Категория:МиниБот]] |
| | + | == Учим МиниБот ездить под управлением ИК-пульта от телевизара по протоколу RC-5 == |
| | + | * [[Задание№1]] ''-=Учим МиниБот ехать прямо на заданной скорости=-''<br /> |
| | + | * [[Задание№2]] ''-=Учим МиниБот работать с УАРТом=-''<br /> |
| | + | * [[Задание№3]] ''-=Учим МиниБот понимать команды RC5 от ИК-пульта обычного телевизора=-''<br /> |
| | + | * [[Задание№4]] ''-=Собираем все части кода в кучу=-''<br /> |
| | | | |
| − | Указываем васику с каким крутым камнем ему прийдется иметь дело
| + | {{МиниБот Уроки и Задания}} |
| − | <blockquote>
| |
| − | $prog &HFF , &HE4 , &HD9 , &H00 'указываем какие фусибиты надо прошить<br />
| |
| − | $regfile = "m32def.dat" ' файл спецификации Меги32<br />
| |
| − | $crystal = 8000000 ' указываем на какой частоте будем работать<br />
| |
| − | </blockquote>
| |
| − | конфигурируем необходимые ноги
| |
| − | <blockquote>
| |
| − | Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down<br />
| |
| − | Config Pinc.2 = Output : Drl Alias Portc.2 'ногу сконфигурировали как выход и обозвали Drl<br />
| |
| − | Config Pinc.3 = Output : Drr Alias Portc.3 'ногу сконфигурировали как выход и обозвали Drr<br />
| |
| − | Config Pind.4 = Output 'ногу ШИМа левого движка сконфигурировали как выход<br />
| |
| − | Config Pind.5 = Output 'ногу ШИМа правого движка сконфигурировали как выход<br />
| |
| − | </blockquote>
| |
| − | Объявляем переменную в которой будем держать текущую скорость
| |
| − | <blockquote>
| |
| − | Dim Speed As Byte<br />
| |
| − | Speed = 70<br />
| |
| − | </blockquote>
| |
| − | Так как мы используем аппаратный ШИМ то должны учитывать, что 100% скорости это 255 попугаев ШИМа.<br />
| |
| − | 0% это соответсвенно 0 попугаев ШИМа. Но фактически движки не будут крутиться при ШИМе менее 50-70 попугаев.<br />
| |
| − | | |
| − | Теперь собственно основной код программы
| |
| − | <blockquote>
| |
| − | Do<br />
| |
| − | Drl = 0 'направление движения левого движка, в нашем с<code></code>лучае это прямо<br />
| |
| − | Drr = 0 'направление движения правого движка, в нашем случае это прямо<br />
| |
| − | Pwm1b = Speed : Pwm1a = Speed<br />
| |
| − | Loop<br />
| |
| − | </blockquote>
| |
| − | | |
| − | ----
| |
| − | | |
| − | Итого код должен выглядеть вот так
| |
| − | | |
| − | | |
| − | <code>
| |
| − | $prog &HFF , &HE4 , &HD9 , &H00 'указываем какие фусибиты надо прошить<br />
| |
| − | $regfile = "m32def.dat" ' файл спецификации Меги32<br />
| |
| − | $crystal = 8000000 ' указываем на какой частоте будем работать<br />
| |
| − | | |
| − | '----------------------------------------------------------------------------<br />
| |
| − | Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down<br />
| |
| − | Config Pinc.2 = Output : Drl Alias Portc.2 'ногу сконфигурировали как выход и обозвали Drl<br />
| |
| − | Config Pinc.3 = Output : Drr Alias Portc.3 'ногу сконфигурировали как выход и обозвали Drr<br />
| |
| − | Config Pind.4 = Output 'ногу ШИМа левого движка сконфигурировали как выход<br />
| |
| − | Config Pind.5 = Output 'ногу ШИМа правого движка сконфигурировали как выход<br />
| |
| − | '----------------------------------------------------------------------------<br />
| |
| − | Dim Speed As Byte<br />
| |
| − | Speed = 70<br />
| |
| − | | |
| − | Do<br />
| |
| − | Drl = 0 'направление движения левого движка, в нашем случае это прямо<br />
| |
| − | Drr = 0 'направление движения правого движка, в нашем случае это прямо<br />
| |
| − | Pwm1b = Speed : Pwm1a = Speed<br />
| |
| − | Loop<br />
| |
| − | </code>
| |
| − | | |
| − | Теперь после компиляции и прошивки этого кода, МиниБот должен поехать очень медленно прямо.<br />
| |