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
Условие. Например такое: If Portc.0 = 1 Then : Led = 1 : Else : Led = 0 : End If-Расшифрую. Если(If) на PC1 логическая единица(1), тогда(Then) зажигаем(1) светодиод(Led) иначе(Else) светодиод(Led) погашен(0).
Теперь собственно о том как работать в BascomAVR. На этот раз сюрприз :). Всё будет не на фото показано, а в учебном видео ролике. Записывал сам. Щас опишу последовательность всех действий в видео. На рабочем столе создали новую папку и присвоили имя Led -> Запустили BascomAVR и создали новый файл -> Написали программу, сохранили под именем Led в папку Led и скомпилировали -> Закрыли программу и открыли программу с помощью которой будем зашивать прогу в мк -> Выбираем мк, проверяем Fuse(те ли прошиты. указываю на них курсором) -> и находим программу в папке Led ва формате .hex и прошиваем её.
Видео урок и как работает программа, а так же фото моего программатора, прогу можно скачать тут:
Если не видно на уроки почти ни чего, то можете скачать урок тут весит он чуть больше 3 мб Код программы: