roboforum.ru

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

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




Начать новую тему Ответить на тему  [ Сообщений: 191 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7 ... 13  След.
Автор Сообщение
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 10:23 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 10:50 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Где это "у нас все нормальные коды только на васике достпупны" ?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 11:15 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 11:51 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
1. Это непоказательная выборка, вот если бы у нас 20-30 человек выкладывало независимые друг от друга проекты написанные с нуля и там был бы только васик - вот тогда да, а тут ты создал платформу ты выкладываешь на том языке который знаешь - по моему подтасовка результатов налицо 8)

2. Если ты не ходил по вике за пределы раздела МиниБот, то это ничего еще не значит, позволю себе привести другие коды, которые выложил я :) которые не на васике: [[Библиотека myCV]], [[Библиотека cvQCodeBeacons]], [[Библиотека myPolyBool]], [[Библиотека PolyMap]], [[Библиотека myBasicGeometry]], это не считая работы других участников в вике и того что куча библиотек уже написана на Си\Си++ только я их сюда не перевыкладываю.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 12:14 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
Ура! Ура! Ура!... :Yahoo!:
у нас теперь есть библы для работы с видео под МК!!! :ROFL:

Ага!.. Щазаз!!! Нука покажи нормальные коды для роботов под МК. :wink:

Добавлено спустя 1 минуту 10 секунд:
типа:
вперед
назад
поморгать светиком
попищать динамиком

вот то-то! :P


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 13:19 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Так, харэ уже. Давайте вы будете спорить о языках в другой ветке. Если не успокоетесь - перетащу в новую ветку, либо сами перетащите. Так будем делать ввводный курс или нет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 13:25 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 13:55 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Ну так заведи тему Вводного курса МК на Васике. А примеры в начале уже были. Как только прикратим флуд и почистим все, я начну выкладывать новые примеры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 14:00 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
Си-шные примеры которые здесь были преведены, они не для начинающих!
Если дальнейшие будут в таком же духе, то они нафиг не нужны.
Я вот до сих пор не осознал всей элегантности вышеприведенных примеров.
Мало того я их смысла не понимаю!

Вводный курс МК на Васике и так уже можно собирать из виковских уроков для минибота. Так что ты от темы не уходи.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 14:15 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Как это не для начинающих?? А какие примеры для начинающих на Си ты хочешь видеть? Вот залезь в гугл, найди такой пример "для начинающих на МК" :o


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 14:20 
Не в сети

Зарегистрирован: 20 окт 2005, 16:11
Сообщения: 432
Откуда: Вильнюс,Литва
прог. языки: Basic
Эд, зря ты так. пример простейшей программы моргания светодиодом был представлен и разобраться в нем можно без труда. Другое дело что сишники легких путей не ищут и выложили решения этой же задачи только более изощренным способом, тем самым запутывая людей не знающих Си.
вот код из вики:
Код:
#include <avr/io.h>
#include <util/delay.h>
#include <inttypes.h>

int main(void)
{
   char i;
   DDRB = 0xFF;
   PORTB = 0x00;

   while(1)
   {
      for(i = 0; i < 100; i++)
         _delay_ms(10);
      PORTB = 0xFF;
      for(i = 0; i < 100; i++)
         _delay_ms(10);
      PORTB = 0x00;
   }
   return 0;
}

мне лично, человеку не разу в жизни не написавшему ни одной строчки на Си он понятен, а тебе? :)

кстати, Dead, в вики походу ошибка. С сайта Атмела нада наверное скачивать AVR Studio, а не WinAVR. :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 14:48 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
в CVAVR работает
delay_ms(1000) и delay_ms(5000), сам проверял так что можно упростить код, убрав циклы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 15:00 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
А так не проще ли будет?
Код:
#include <avr/io.h>
#include <util/delay.h>
#include <inttypes.h>

int main(void)
{
   char i;
   DDRB = 0xFF;
   PORTB = 0x00;

   while(1)
   {
      for(i = 0; i < 100; i++)
         _delay_ms(10);
      PORTB ^= 0xFF; // побитовое исключающее или, в нашем случае просто инвертирование.
                     // если непонятно то man xor; google://исключающее или
   }
   return 0;
}


Добавлено спустя 7 минут 12 секунд:
или вот мигалка поинтереснее:
Код:
#include <avr/io.h>
#include <util/delay.h>
#include <inttypes.h>

int main(void)
{
   unsigned char i, mask = 0x5A;
   DDRB = 0xFF;
   PORTB = 0x00;

   while(1)
   {
      for(i = 0; i < 100; i++)
         _delay_ms(10);
      mask ^= 0xFF;
      PORTB ^= mask;
   }
   return 0;
}

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 15:02 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
rig писал(а):
в CVAVR работает
delay_ms(1000) и delay_ms(5000), сам проверял так что можно упростить код, убрав циклы.

Давайте не будем писать в CV? там библиотеки хорошие, но всетакие не айс. Я предлагаю писать в WInAVR, - там _delay_ms в среднем не может быть больше 200 в зависимости от кварца.

Добавлено спустя 1 минуту 22 секунды:
Vooon, ща ты будешь новичкам объяснять что такое маска и битовые операциия))) Тут же у нас еще курс Си)))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вводный курс для программирования МК AVR на языке C/C++
СообщениеДобавлено: 28 июл 2008, 15:04 
Не в сети
Аватара пользователя

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

Проще - да. Понятнее - однозначно нет. Понятнее всего наверно так:

Код:
#include "library.h"

int main(void)
{
    bit_set(DDRB, 1);
    while (1) {
        bit_set(PORTB, 1);
        wait_ms(300);
        bit_clear(PORTB, 1);
        wait_ms(300);
    }
}



Может имеет смысл сначала сделать простую библиотеку базовых функций, и уже на ее основе делать курс или как-там-его-назвать?

Вместо
Код:
PORTB |= (1 << 6);
будет
Код:
bit_set(PORTB, 6);

Вместо
Код:
PORTB &= ~(1 << 6);
будет
Код:
bit_clear(PORTB, 6);

Вместо
Код:
PORTB ^= (1 << 6);
будет
Код:
bit_invert(PORTB, 6);


Диапазон аргументов к функциям/макросам задержек расширить, другие базовые вещи сделать.

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

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



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

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


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

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


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

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