roboforum.ru

Технический форум по робототехнике.
Текущее время: 27 ноя 2024, 01:29

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




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 12:37 
Не в сети

Зарегистрирован: 16 фев 2007, 20:30
Сообщения: 10
Откуда: г.Воронеж
Да именно так.  :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 13:08 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
вот ассемблерный листинг
прога моргает светиком
Код:

171 while (1)
_0xA:
;     172       {
;     173       // Place your code here
;     174
;     175         delay_ms(100);
   LDI  R30,LOW(100)
   LDI  R31,HIGH(100)
   RCALL SUBOPT_0x0
;     176         PORTB.4 = 0;
   CBI  0x18,4
;     177         delay_ms(100);
   LDI  R30,LOW(100)
   LDI  R31,HIGH(100)
   RCALL SUBOPT_0x0
;     178         PORTB.4 = 1;
   SBI  0x18,4
;     179      
;     180        
;     181       };
   RJMP _0xA
;     182 }
_0xD:
   RJMP _0xD

чёта файл не аттачицца воттекст короче
действительно компилятор устанавливает и сбрасывает биты
PORTB.4 = 0;
CBI  0x18,4

PORTB.4 = 1;
SBI  0x18,4

непонимаю...
вот лежит у меня МК и дрыгает лапками=)
одной через PORTB и другой лапкой через PINB


       
Код:
delay_ms(500);
       PORTB.4 = 0;
       PINB.0 = 0;
       delay_ms(500);
       PORTB.4 = 1;
       PINB.0 = 1;

вот этот код даёт интереснеййший эффект=)

11
01
10
00


тоесть светик на ноге 4 (который PORTB)успевает 4 раза моргнуть а светик на ноге 0 (который PINB)моргает 2 раза
асм:
Код:
while (1)
_0xA:
;     172       {
;     173       // Place your code here
;     174
;     175         delay_ms(500);
   LDI  R30,LOW(500)
   LDI  R31,HIGH(500)
   RCALL SUBOPT_0x0
;     176         PORTB.4 = 0;
   CBI  0x18,4
;     177         PINB.0 = 0;
   CBI  0x16,0
;     178         delay_ms(500);
   LDI  R30,LOW(500)
   LDI  R31,HIGH(500)
   RCALL SUBOPT_0x0
;     179         PORTB.4 = 1;
   SBI  0x18,4
;     180         PINB.0 = 1;  
   SBI  0x16,0
;     181        
;     182        
;     183       };
   RJMP _0xA
;     184 }

всё крайне прилично=)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 14:33 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
TamTam писал(а):
Да именно так.  :)


что-то не бегуть !  только 2 светодиода перемигиваются и усё.


Вложения:
led_no_run.rar [5.18 КиБ]
Скачиваний: 36
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 14:38 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Myp писал(а):
вот этот код даёт интереснеййший эффект=)


Слава богу в симуляторе все в норме.


Вложения:
all_good.rar [5.14 КиБ]
Скачиваний: 44
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 14:41 
Не в сети

Зарегистрирован: 16 фев 2007, 20:30
Сообщения: 10
Откуда: г.Воронеж
товарищи побойтесь бога ну самито хоть что нибудь ручками поменяйти, там для двух бит выполняется полная таблица истености. поменяв пару символов можно на весь порт сделать..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 15:08 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
TamTam писал(а):
товарищи побойтесь бога ну самито хоть что нибудь ручками поменяйти, там для двух бит выполняется полная таблица истености. поменяв пару символов можно на весь порт сделать..


дак чтож ты написал

TamTam писал(а):
Да именно так.  :)


???


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 15:09 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Вот не мудурствуя лукаво сделал по-быстрому:

Бегущие огонек - решение "В ЛОБ"
Горят 7 светодиодов а бежит 1 не горящий.

Светодиоды подключены между выводами PORTA
и питанием МК через резисторы.  симуляция в VMLAB (файл z2_vm.prj)

Виртуальный осциллограф показывает сигналы - ЛЯПОТА ...

Компилятор CodeVisionAVR  МК  ATmega16


Вложения:
led_run.rar [5.59 КиБ]
Скачиваний: 50
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 15:18 
Не в сети
Аватара пользователя

Зарегистрирован: 28 мар 2006, 17:28
Сообщения: 486
Откуда: Пенза
а я по ламерски сделал зато более понятно :wink:
Код:
#define LED  PORTD

while(1){
LED = 0b11111110;
delay
LED = 0b11111101;
delay
LED = 0b11111011;
delay
LED = 0b11110111;
delay
LED = 0b11101111;
delay
LED = 0b11011111;
delay
LED = 0b10111111;
delay
LED = 0b01111111;
delay
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 15:53 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
еще делэй задефайнить бы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 16:03 
Не в сети
Аватара пользователя

Зарегистрирован: 28 мар 2006, 17:28
Сообщения: 486
Откуда: Пенза
ну заместо делэя надо написать нужную нам задержку
и поместить это в главную функцию и инициализировать порты :lol:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 16:22 
Не в сети

Зарегистрирован: 16 фев 2007, 20:30
Сообщения: 10
Откуда: г.Воронеж
avr123.nm.ru писал(а):
TamTam писал(а):
товарищи побойтесь бога ну самито хоть что нибудь ручками поменяйти, там для двух бит выполняется полная таблица истености. поменяв пару символов можно на весь порт сделать..


дак чтож ты написал

TamTam писал(а):
Да именно так.  :)


???



Я не совсем правильено понял, набо было 1 огоньком по порту бегать а я вам дал таблицу истенности в целом это вам не подойдет, а ежеле вам надо просто бег огонь так там еще проще просто делайте сдвиг.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2007, 17:38 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
TamTam писал(а):
ежеле вам надо просто бег огонь так там еще проще просто делайте сдвиг.


я и сделал сдвиг в примере в прицепе выше.

TamTam писал(а):
ежеле вам надо просто бег огонь.


я думал что бегущий огонь это и есть "просто бег огонь"   :lol:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 мар 2007, 04:28 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Myp писал(а):
непонимаю...
вот лежит у меня МК и дрыгает лапками=)
одной через PORTB и другой лапкой через PINB


А МК какой у тебя ?

Я то про мегу16 и типа того говорю.

А вот тини и новые меги меняют бит порта при записи "1" в бит в PIN.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 мар 2007, 11:00 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
тинька =)
а я и не знал
неужели это в даташите описано?:lol:

только я непоняла,
вот такой код
Код:
PINB.1 = 1;
PORTB.1 = 1;
delay_ms(50);
PINB.1 = 0;
PORTB.1 = 0;
delay_ms(50);

вовсе не означает что лапки будут синхронно дёргатся
одна будет ровно в 2 раза чаще другой менять состояние


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 мар 2007, 12:39 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Myp писал(а):
тинька =)

а я и не знал
неужели это в даташите описано?:lol:


на странице  avr123.nm.ru/02.htm - на желтом фоне - перечислены некоторые модели у которых ДА и у которых НЕТ !  

Вот такая петрушка.

Просто у меня поясняется что рассматриваем
конкретно порты ATmega16.


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

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


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

Сейчас этот форум просматривают: Bing [Bot] и гости: 6


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

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