roboforum.ru

Технический форум по робототехнике.
Текущее время: 17 фев 2025, 07:57

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 56 ]  На страницу Пред.  1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 29 июл 2009, 13:45 
Не в сети
Аватара пользователя

Зарегистрирован: 21 янв 2005, 12:16
Сообщения: 977
Откуда: Germany
прог. языки: asm
Zeus писал(а):
внутреннюю структуру микроконтроллера все равно надо знать?

я бы советовал писать сразу на асм.
тем более, что внутреннюю структуру микроконтроллера все равно знать надо, а с асм это получится быстрее всего.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 29 июл 2009, 13:52 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Советы даны, на этом и остановимся. Даже не пытайтесь здесь устроить очередную свару C vs ASM vs Basic :x Отвечать на мой пост тоже не надо

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 09 окт 2009, 10:13 
Не в сети
Аватара пользователя

Зарегистрирован: 20 июл 2009, 13:59
Сообщения: 119
Откуда: Канск
Тема вроде про баском, надеюсь, начинающему можно задавать здесь вопросы...
Немного непонятен момент с включением внутренней подтяжки на ноге сконфигурированной на вход, т.е. пишу Config PINC.0 = Input, смотрю в протеусе - пин находится в состоянии Z. Посмортрел код в АВР-студии, включения подтяжки вроде не нашел... Т.е. подтяжка не включается?

_________________
Ты приснись ей, ангел белый, пусть ей будет хорошо...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 09 окт 2009, 10:20 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Подтяжка не включается...

_________________
if(!Operate) Read(pDatasheet);


Последний раз редактировалось galex1981 09 окт 2009, 10:58, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 09 окт 2009, 10:36 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
PINC.0 = Input просто включает ногу на вход, без подтяжки


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 09 окт 2009, 10:37 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Yuraskas писал(а):
Т.е. подтяжка не включается?


Посмотрите устройство ножки AVR , его вцелом и его портов


Вложения:
Комментарий к файлу: устройство AVR и его портов http://avr123.nm.ru/02.htm
avr.png
avr.png [ 130.49 КиБ | Просмотров: 20044 ]


Последний раз редактировалось avr123.nm.ru 09 окт 2009, 11:20, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 09 окт 2009, 11:14 
Не в сети
Аватара пользователя

Зарегистрирован: 20 июл 2009, 13:59
Сообщения: 119
Откуда: Канск
2 avr123: Смотрел, и не единожды, то что подтяжка включается установкой бита в регистре PORT - знаю, просто я по наивности своей думал что баском сам подтяжку включает, когда конфигурируешь ногу на вход, :oops: оказалось - был не прав, что и подтвердил EdGull, спасибо ему за это. Значит для подтяжки нужно сделать еще Set PORTC.0

_________________
Ты приснись ей, ангел белый, пусть ей будет хорошо...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 16 окт 2009, 23:24 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2009, 12:50
Сообщения: 930
Откуда: Волжский
Skype: pashok0988
ФИО: Павел Петрович
Yuraskas писал(а):
Тема вроде про баском, надеюсь, начинающему можно задавать здесь вопросы...
Немного непонятен момент с включением внутренней подтяжки на ноге сконфигурированной на вход, т.е. пишу Config PINC.0 = Input, смотрю в протеусе - пин находится в состоянии Z. Посмортрел код в АВР-студии, включения подтяжки вроде не нашел... Т.е. подтяжка не включается?

Меня когда-то тоже интересовал вопрос подтяжки на баскоме viewtopic.php?f=16&t=6714 советую прочитать в ознакомительных целях


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 13 июл 2010, 18:04 
Не в сети
Аватара пользователя

Зарегистрирован: 11 июл 2010, 13:59
Сообщения: 2
встретил в такую строчку - $prog &HFF , &HE4 , &HD9 , &H00 'указываем какие фусибиты надо прошить
Что аткое фусибиты? , что такое "$prog"? Что такое &HFF , &HE4 , &HD9 , &H00???


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 25 июн 2011, 14:30 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
Есть ли в баском, что-то типо игнорирования условия в программе? Суть проблемы в том, что у меня в программе сделано одно действие, которое исполняется при разных условиях. Вообщем вот:

Код:
Sub Вов

Tem1 = A
Tem2 = B

If Temp => Tem1 Then : Реле = 1 : End If

If Temp <= Tem2 Then : Реле = 0 : End If

Вклвыкл_Реле:

Toggle Реле                                                 'Инверсия логического уровня на ножке PORTD.4

Return                                                      'Возврат из подпрограммы в точку где произошло прерывание

End Sub

Реле включается при определённой температуре и также отключается. Но включается и отключается оно также и при нажатие на клавишу. Так вот когда нажимаю на клавишу реле включается и тут же отключается из-за условия:
Код:
If Temp <= Tem2 Then : Реле = 0 : End If

Как бы сделать так чтобы это условие игнорировалось при нажатие клавиши?

_________________
https://vk.com/ledscale - платы, vk.com/ledscale3dprintig - 3Д печать\моделирование, vk.com/ledrenovation- ремонт светодиодных источников света


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 25 июн 2011, 14:39 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
А так не получается?
Код:
If Temp <= Tem2 And Кнопка <> нажата Then : Реле = 0 : End If


Где "Кнопка <> нажата" условие ненажатой кнопки

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 25 июн 2011, 16:09 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
дело в том, что клавиша без Фиксации. Нажал реле включилось, снова нажал, реле выключилось. То есть сделал за счёт прерываний

Код:
Set Portd.2 : Вкл_выкл Alias Pind.2                         'Клавиша для принудительного вкл. и выкл. реле
Config Portd.4 = Output : Реле Alias Portd.4   

Config Int0 = Falling                                       'Разрешаем прерывания по спаду напряжения On Int0
On Int0 Вклвыкл_Реле                                        'Задаём метку перехода по прерыванию
Enable Interrupts                                           'Разрешаем прерывания
Enable Int0                                                 'Разрешаем прерывания на ножке int0


Sub Вов

Tem1 = A
Tem2 = B

If Temp => Tem1 Then : Реле = 1 : End If

If Temp <= Tem2 Then : Реле = 0 : End If

Вклвыкл_Реле:

Toggle Реле                                                 'Инверсия логического уровня на ножке PORTD.4

Return                                                      'Возврат из подпрограммы в точку где произошло прерывание

End Sub

вот так более полно выглядит код

_________________
https://vk.com/ledscale - платы, vk.com/ledscale3dprintig - 3Д печать\моделирование, vk.com/ledrenovation- ремонт светодиодных источников света


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 25 июн 2011, 19:35 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Что то основной цикл программы не вижу. А вообще в основном цикле можно просматривать нажатие/отпускание клавиши по пину pind.2

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 26 июн 2011, 16:21 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
не стал его просто выкладывать, а так вот:
Код:
Do
Call Температура : Call Вов
Locate 1 , 1
Lcd Time$ ; "**" ; Celsium ; "**"
Locate 2 , 1
Lcd Date$ ; "**" ; Fahrenhei ; "**"
If Меню = 0 Then : Gosub МенюП : End If
Loop


это можно, только что мне это даст не совсем понимаю?

_________________
https://vk.com/ledscale - платы, vk.com/ledscale3dprintig - 3Д печать\моделирование, vk.com/ledrenovation- ремонт светодиодных источников света


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Учебный курс по Bascom AVR Basic для ЧАЙНИКОВ
СообщениеДобавлено: 26 июн 2011, 20:39 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
galex1981, спасиб :Yahoo!: Вообщем подумал, как можно использовать то что ты предложил и нашёл решение. Только в цикле фиксировал лишь нажатие клавиши за счёт команды:
Код:
Debounce

При удержание клавиши просто осущевствляю переход в другой цикл, котором убрал процеду по вкл. и выкл. реле за счёт температуры, и за счёт нажатие клавиши могу вкл. и выкл. реле. Может громоздка, но ведь работает :D
Код:
'*****************************Оcновной_цикл_программы***************************

Вкл._от_перемены_температуры:
Disable Int0                                                'Запрещаем прерывания на Int0
Sound Пищалка , 110 , 213

'*******************************************************************************

Do

Call Температура                                            'Вызвать подпрограмму(процедуру) "Температура"
Call Вов                                                    'Вызвать подпрограмму(процедуру) "Вов"
Locate 1 , 1
Lcd Time$ ; "**" ; Celsium ; "***"
Locate 2 , 1
Lcd Date$ ; "**" ; Fahrenhei ; "**"
If Меню = 0 Then : Gosub МенюП : End If                     'При нажатие клавиши меню, переходим на метку МенюП
Debounce Вкл_выкл , 0 , Вкл._от_клавиши
Loop

'*******************************************************************************

Вкл._от_клавиши:
Enable Int0                                                 'Разрешаем прерывания на Int0
Sound Пищалка , 140 , 299

'*******************************************************************************

Do
Call Температура                                            'Вызвать подпрограмму(процедуру) "Температура"
Locate 1 , 1
Lcd Time$ ; "**" ; Celsium ; "***"
Locate 2 , 1
Lcd Date$ ; "**" ; Fahrenhei ; "**"
If Меню = 0 Then : Gosub МенюП : End If                     'При нажатие клавиши меню, переходим на метку МенюП
Debounce Вкл_выкл , 0 , Вкл._от_перемены_температуры
Loop

'*******************************************************************************

_________________
https://vk.com/ledscale - платы, vk.com/ledscale3dprintig - 3Д печать\моделирование, vk.com/ledrenovation- ремонт светодиодных источников света


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 56 ]  На страницу Пред.  1, 2, 3, 4  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO