Суббота, 27.04.2024, 03:12
| RSS
[SEARCH_TITLE]
[SEARCH_FORM]
Важно!!!
Для успешного просмотра
сайта воспользуйтесь
браузером Mozilla Firefox



Мини-Профиль
Гость


Группа:
Гости
Время:03:12

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!

Категории раздела
О программаторах [4]
Не много о том как и с помощью чего программировать.
Программирование в BascomAVR [6]
Учимся благодаря статьям писать программы. Язык Basic
Программирование в CV AVR? [4]
Учимся благодаря статьям писать программы. Язык Си

Поиск

Наш опрос
Какой язык вы хотели бы изучать?
Всего ответов: 352

Друзья сайта
roboforum
  • robozone
  • Железный феликс
  • robo.com.ua
  • imobot
  • ASARobotics
  • Grover
  • Электроника
  • Your Device
  • Программирование BASCOM
  • Basic для PIC мк
  • Электроника для всех
  • RassionRobots
  • Newrobots-world

  • Статистика

    Каталог-Молдова - Ranker, Statistics
    RoboRing.Ru
    << | list | ? | >>
    Rambler's Top100
    Рейтинг@Mail.ru
    Рейтинг робо-сайтов


    Помоги сайту
    ЯндексЯндекс. ДеньгиХочу такую же кнопку


    Главная » Статьи » Программирование » Программирование в BascomAVR

    BascomAVR
    И так мой любимый BascomAVR.


    BascomAVR - приложение для персонального компьютера, с помощью этой программы можно выполнять следующие действия:
    -писать программы для avr, pic и др. мк
    -компилировать написанный код программы в машинный код в формате .hex, нужный для мк
    -симулировать написанный вами код
    -прошивать мк с помощью самого компилятора используя например программатор STK200/STK300, или с помощью внешних программ не входящих в BascomAVR, например USBASP_AVRDUDE_PROG(я использую эту программу и проблем не знаю, программатор соответственно USB, на фото ниже будет).



    Теперь о поддержке функций в BascomAVR, которые встроены в мк AVR:
    -аналого-цифровой преобразователь (АЦП, ADC) — устройство, преобразующее
    входной аналоговый сигнал в дискретный код (цифровой сигнал)
    -ШИМ—широтно-импульсная модуляция(например с помощью шима можно контролировать ПРОГРАММНО скорость движения вашего робота)
    -UART
    -поддержка шины I2C
    -таймеры, счётчики
    Так же можно сказать и о внешних устройствах, которые могут быть подключены:
    -не большие цифровые клавиатуры 3*3
    -ЖК-дисплеи 16*2, 16*4, 40*2 и т.д.
    -кнопки
    -датчики(Sharp, ик-бампер, фотодиоды, УЗ и т. д.)
    -инфракрасное управление(для этого нужно подключить ик-приёмник, робот будет управляться с пульта от телевизора)
    -конечно же можно подключить и камеру и многое другое, но всё не перечислить :)

    Так вот, кто-то может сейчас сказать, а на фига изучать какой там
    бейсик, если есть более современные языки, я вам скажу товарищи.
    Потому, что это чудесный язык в котором на начальных этапах сможет
    разобраться даже ребёнок. Во всяком случаи в простых кодах на подобие
    мигания светодиодом, которую в качестве примера буду приводить в этой
    же статье ниже. И простота этого языка это не одна причина. Если
    поискать по интернету, то можно найти очень много примеров причём не на
    иностранных сайтах, а именно на наших, где частенько даются подробные
    комментарии. А вот ранее изучал Си так вот против него ни чего не имею,
    но такого же сказать не могу. Примеров не достаточно хотя книг полно с
    этим не поспоришь. Кстати на счёт книг. Можно скачать их не сколько-это
    единственные, которые мне попадались. Можите скачать. Справочник по BascomAVR часть 1-ая, Справочник по BascomAVR часть 2-ая, Справочник по BascomAVR (FAQ), Звук в BascomAVR, Освой мк за один день(BascomAVR), графический логотип на текстовом ЖКИ, Bascom avr начинающему(достаточно понятно рассказано) и Bascom-8051-это правдо не совсем, то очень похожа очень, поэтому поглядеть тоже можно.

    Теперь немного о самом языке. Ниже приведу примеры как задействовать мк, кварц, порты и т.д.

    Мк и кварц:
    $regfile = "m16def.dat"    '-ATmega16
    $crystal = 16000000    '-кварц на 16мГц

    Для комментариев нужно поставить значок " ' " и после него можно писать
    всё что угодно, то есть так же я сделал выше где мк и кварц.

    Порты например порт A:
    Config PORTA.0 = Output-здесь ножку PA0  мы назначили на выход
    Config PORTA.0 = Input-здесь ножку PA0  мы назначили на вход

    Так же для простоты можно присвоить имя вот так:
    Config PORTA.0 = Output : Led Alias PORTA.0-здесь ножку PA0  мы назначили на выход и присвоили имя Led
    Config PORTA = Output-с помощью такой команды мы назначили все ножки PA на выход

    Если код написан так:
    Config PORTA.0 = Output
    То изначально на него можно установить логический 0 так:
    PORTA.0 = 0
    так например я делал в написание программы для мигания светодиодом, она ниже.

    Но тоже самое можно сделать так:
    Config PORTA.0 = Output : Led Alias PORTA.0
    Led = 0


    Цикл программы:
    do
    'ваша программа
    loop


    Например:
    Do
    Porta.2 = 1
    Wait 1
    Porta.2 = 0
    Wait 1
    Loop



    Условие. Например такое:
    If Portc.0 = 1 Then : Led = 1 : Else : Led = 0 : End
    If
    -Расшифрую. Если(If) на PC1 логическая единица(1), тогда(Then)
    зажигаем(1) светодиод(Led) иначе(Else) светодиод(Led) погашен(0).

    Закончить программу:
    End

    Ну вот для начало должно хватить.

    Скачать сей компилятор можно по этой ссылке.

    Теперь собственно о том как работать в BascomAVR. На этот раз сюрприз
    :). Всё будет не на фото показано, а в учебном видео ролике. Записывал
    сам. Щас опишу последовательность всех действий в видео.
    На рабочем столе создали новую папку и присвоили имя Led ->
    Запустили BascomAVR и создали новый файл -> Написали программу,
    сохранили под именем Led в папку Led и скомпилировали -> Закрыли
    программу и открыли программу с помощью которой будем зашивать прогу в
    мк -> Выбираем мк, проверяем Fuse(те ли прошиты. указываю на них
    курсором) -> и находим программу в папке Led ва формате .hex и
    прошиваем её.

    Видео урок и как работает программа, а так же фото моего программатора, прогу можно скачать тут:


    Если не видно на уроки почти ни чего, то можете скачать урок тут весит он чуть больше 3 мб
    Код программы:
    $regfile = "m16def.dat"
    $crystal = 16000000
    Config Portc.2 = Output
    Portc.2 = 0
    Do
    Portc.2 = 1
    Wait 1
    Portc.2 = 0
    Wait 1
    Loop
    End  

    Пока всё. Надеюсь вам понравился BascomAvr. Удачи.
    Категория: Программирование в BascomAVR | Добавил: Space (25.07.2009)
    Просмотров: 9326 | Теги: команды bascom, как работать в Bascom AVR, Видео урок, Bascom AVR, мигание светодиодом, AVR, Bascom, пример программ, бейсик, как работать в BascomAVR | Рейтинг: 4.8/9 |
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]