Arduino

Arduino в Смоленске

Увлечения и развлечения
Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#211

Сообщение Академик Иосиф » 24 апр 2017, 19:15

Код: Выделить всё

	unsigned char string1[] = "Академик Иосиф";
	unsigned char string2[] = "forum.smolensk.ws";
	unsigned char string3[] = "2017 год";
	unsigned char string4[] = "24 апреля";
	unsigned char string5[] = "19:10 (примерно)";
	unsigned char string6[] = "На улице +8.3'C";
	unsigned char string7[] = "Давление 735 мм рт.ст.";
	unsigned char string8[] = "Без осадков";
иркан.jpg
опять штырит, но в другом месте :ne_vi_del:

Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#212

Сообщение Академик Иосиф » 24 апр 2017, 19:18

я уже молчу про функцию переноса по словам с прокруткой :ne_ne_ne:

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#213

Сообщение neutrino » 24 апр 2017, 19:30

Попробуй пока такой вариант. Делаем строки глобальными с неизменным адресом и неприкосновенные.

Код: Выделить всё

    
    volatile static unsigned char string1[] = "cъешь еще этих";
    volatile static unsigned char string2[] = "мягких французских";
    volatile static unsigned char string3[] = "булок, да выпей";
    volatile static unsigned char string4[] = "чаю! @#;%:?*()_+";
    volatile static unsigned char string5[] = "СЪЕШЬ ЕЩЕ ЭТИХ";
    volatile static unsigned char string6[] = "МЯГКИХ ФРАНЦУЗСКИХ";
    volatile static unsigned char string7[] = "БУЛОК, ДА ВЫПЕЙ";
    volatile static unsigned char string8[] = "ЧАЮ?[]{}\|/`~";


    int main()
    {
	
       LCD12864_Init();
       _delay_ms(1);
       LCD12864_Clr();
       _delay_ms(1);
       
       LCD12864_String(0,0,string1,sizeof(string1)-1);
       LCD12864_String(1,0,string2,sizeof(string2)-1);
       LCD12864_String(2,0,string3,sizeof(string3)-1);
       LCD12864_String(3,0,string4,sizeof(string4)-1);
       LCD12864_String(4,0,string5,sizeof(string5)-1);
       LCD12864_String(5,0,string6,sizeof(string6)-1);
       LCD12864_String(6,0,string7,sizeof(string7)-1);
       LCD12864_String(7,0,string8,sizeof(string8)-1);
       while(1);
    }

Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#214

Сообщение Академик Иосиф » 24 апр 2017, 19:33

О, а это работает. Благодарю. Вот теперь со спокойной душой можно пилить перенос по словам.
Вот только почему то обратный слеш пропал :ne_vi_del:

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#215

Сообщение neutrino » 24 апр 2017, 19:38

Академик Иосиф писал(а):О, а это работает. Благодарю. Вот теперь со спокойной душой можно пилить перенос по словам.
Вот только почему то обратный слеш пропал :ne_vi_del:
По-хорошему должен работать и предыдущий вариант, либо линкер обязан выдать ошибку выделения памяти.

Каким компилятором пользуешься?

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#216

Сообщение neutrino » 24 апр 2017, 19:39

Академик Иосиф писал(а): Вот только почему то обратный слеш пропал :ne_vi_del:
Обратный слэш на С выглядит так: '\\', то есть их два. Попробуй.

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#217

Сообщение neutrino » 24 апр 2017, 19:41

"ЧАЮ?[]{}\\|/`~";

Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#218

Сообщение Академик Иосиф » 24 апр 2017, 19:49

neutrino писал(а):"ЧАЮ?[]{}\\|/`~";
Это чё за странность такая? Я чего-то не знаю?

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#219

Сообщение neutrino » 24 апр 2017, 19:53

Академик Иосиф писал(а):
neutrino писал(а):"ЧАЮ?[]{}\\|/`~";
Это чё за странность такая? Я чего-то не знаю?
Не знаешь )) Обратный слэш в языке С означает начало спецсимвола.

'\0' - конец строки
'\n' - новая строка
'\r' - возврат каретки

И многое другое.

Аватара пользователя
John Prick
Сообщения: 7755
Зарегистрирован: 12 янв 2006, 19:30
Благодарил (а): 52 раза
Поблагодарили: 14 раз
Контактная информация:

Re: Arduino

#220

Сообщение John Prick » 25 апр 2017, 11:53

Может, проблема в несоответствии типов?
unsigned char string1[] = "cъешь еще этих";
//...
void LCD12864_String(unsigned char x0,unsigned char y0,char* buffer, unsigned char count)
//...
void LCD12864_Char(unsigned char x0, unsigned char y0, unsigned char code)
Не должно, по идее, влиять, но мало ли что там компилятор выдумает.

FreemanNow
Сообщения: 33762
Зарегистрирован: 02 окт 2006, 09:23
Настоящее имя: Виталий
Откуда: г.Смоленск
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Re: Arduino

#221

Сообщение FreemanNow » 25 апр 2017, 12:05

Академик Иосиф, примерно такая вот фигня бывает в юниксе если текстовый файл для скрипта готовился в виндовом редакторе. Разница в том, что в винде перевод строки содержит два символа (CR,LF), а в юниксе только CR, попробуй убрать лишний

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#222

Сообщение neutrino » 25 апр 2017, 12:20

John Prick писал(а):Может, проблема в несоответствии типов?
unsigned char string1[] = "cъешь еще этих";
//...
void LCD12864_String(unsigned char x0,unsigned char y0,char* buffer, unsigned char count)
//...
void LCD12864_Char(unsigned char x0, unsigned char y0, unsigned char code)
Не должно, по идее, влиять, но мало ли что там компилятор выдумает.
Приведение типов операндов делается перед вычислением, в данном случае - перед передачей параметров. Если компилятор по-разному размещает в памяти char и unsigned char, это конец света и крах всех надежд (приходится использовать худ.эвфемизмы, поскольку слово на букву "П" запретил кровавый режим).

Но так писать, конечно нельзя. Типы должны совпадать, иначе сюрпризы появятся в других местах ))

Аватара пользователя
John Prick
Сообщения: 7755
Зарегистрирован: 12 янв 2006, 19:30
Благодарил (а): 52 раза
Поблагодарили: 14 раз
Контактная информация:

Re: Arduino

#223

Сообщение John Prick » 25 апр 2017, 12:40

Да и в принципе unsigned char это числовой тип, а символьный именно char. Т.е. строку обьявить надо char string1[] = "cъешь еще этих";

И ещё подумалось, а какой размер стека выделяет этот компилятор для функции? Может, в этом проблема?

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#224

Сообщение neutrino » 25 апр 2017, 12:54

John Prick писал(а):Да и в принципе unsigned char это числовой тип, а символьный именно char. Т.е. строку обьявить надо char string1[] = "cъешь еще этих";

И ещё подумалось, а какой размер стека выделяет этот компилятор для функции? Может, в этом проблема?
Евгений, я понимаю, что в данном случае main не возвращает управление, но правила выделения памяти для локальных переменных никуда не исчезают. Переменная, объявленная внутри функции, является автоматической, и компилятор может разместить ее даже в регистрах общего назначения, он - машина, ему пофиг, что это строка ))) Здесь такое вряд ли, но возможны другие варианты. Чтобы выяснить, нужна инфа по настройкам памяти, включена или нет оптимизация, а наш юный друг не ответил даже, что за компилятор он использует. С объявлением строк внутри функций чудеса бывают у IAR, например.

Универсальный метод - указать, что строка имеет неизменный адрес.

Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#225

Сообщение Академик Иосиф » 25 апр 2017, 13:31

neutrino писал(а):а наш юный друг не ответил даже, что за компилятор он использует
да чорт его знает, атмел студио 6.1

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#226

Сообщение neutrino » 25 апр 2017, 14:05

Академик Иосиф писал(а):
neutrino писал(а):а наш юный друг не ответил даже, что за компилятор он использует
да чорт его знает, атмел студио 6.1
Понятно. Я с ним никогда не работал, не могу надежно указать причины такого сбоя.

John Watson
Сообщения: 2649
Зарегистрирован: 07 май 2010, 00:04
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Arduino

#227

Сообщение John Watson » 25 апр 2017, 15:04

Академик Иосиф, а какой микроконтроллер?

Аватара пользователя
Академик Иосиф
Сообщения: 33302
Зарегистрирован: 07 май 2008, 23:38
Благодарил (а): 68 раз
Поблагодарили: 69 раз

Re: Arduino

#228

Сообщение Академик Иосиф » 25 апр 2017, 15:06

атмега8

Аватара пользователя
barmoglot
Сообщения: 34098
Зарегистрирован: 17 мар 2009, 18:43
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Re: Arduino

#229

Сообщение barmoglot » 25 апр 2017, 18:24

FreemanNow писал(а):Академик Иосиф, умный дом для бармаглота это не просто сложно, это непостижимо))
дурачков искать не надо, они сами тебя находят.
зы: чтоб ты знал, у меня голосовое управление светом по всему дому, контроль температуры и видеонаблюдение. Теперь иди переваривай.

Аватара пользователя
barmoglot
Сообщения: 34098
Зарегистрирован: 17 мар 2009, 18:43
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Re: Arduino

#230

Сообщение barmoglot » 25 апр 2017, 18:26

neutrino писал(а):
barmoglot писал(а):neutrino, реализовать умный дом сможешь?
К сожалению, нет. Я не занимаюсь крупными системами. Если только отдельный датчик или манипулятор, но их уже много готовых, нет смысла изобретать велосипед.
Эх.
Короче, будут желающие, взял бы на работу для продвижение проекта.

Аватара пользователя
Sceapt
Сообщения: 15281
Зарегистрирован: 16 дек 2005, 20:35
Благодарил (а): 0
Поблагодарили: 18 раз

Re: Arduino

#231

Сообщение Sceapt » 25 апр 2017, 20:36

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

HTC
Сообщения: 9473
Зарегистрирован: 02 июн 2010, 08:28
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Re: Arduino

#232

Сообщение HTC » 25 апр 2017, 20:47

+1


barmoglot, мути "китай" под собственным брэндом, можешь взять "полукитай" с разрабами ,но это явно будет не один человек с "доход от 30-ти" )))

А весь твой "умный дом" пойдет по одному месту, когда последнему товарищу замутят девайс для "сказки" http://market.smolensk.ws/message/view.html?id=11986 (просто для примера привел, если что).
Последний раз редактировалось HTC 25 апр 2017, 21:00, всего редактировалось 5 раз.
blah blah blah

Аватара пользователя
Sceapt
Сообщения: 15281
Зарегистрирован: 16 дек 2005, 20:35
Благодарил (а): 0
Поблагодарили: 18 раз

Re: Arduino

#233

Сообщение Sceapt » 25 апр 2017, 20:50

Да, ODM-производство в Китае, у индусов заказать код приложений для мобильных и настольных ОС. Это будет дешевле и эффективнее.

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#234

Сообщение neutrino » 25 апр 2017, 21:05

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

HTC
Сообщения: 9473
Зарегистрирован: 02 июн 2010, 08:28
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Re: Arduino

#235

Сообщение HTC » 25 апр 2017, 21:09

:-))
Импортозамещение наше все
blah blah blah

Аватара пользователя
Sceapt
Сообщения: 15281
Зарегистрирован: 16 дек 2005, 20:35
Благодарил (а): 0
Поблагодарили: 18 раз

Re: Arduino

#236

Сообщение Sceapt » 25 апр 2017, 21:14

neutrino, так а смысл, если вся материально-техническая база будет из того же Китая?

HTC
Сообщения: 9473
Зарегистрирован: 02 июн 2010, 08:28
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Re: Arduino

#237

Сообщение HTC » 25 апр 2017, 21:23

Sceapt, свои "фишки" типа, на базе конструктора.

Создается впечатление что заказчику бусы на "писят карат из экологических ракушек" впарили , а исполнитель знает как эти бусы слепить из подручной глины... Но в итоге заказчик заплатит как за стекло, да и исполнитель слепит из того же ....

Забавно,но так и живем.....
blah blah blah

Аватара пользователя
Sceapt
Сообщения: 15281
Зарегистрирован: 16 дек 2005, 20:35
Благодарил (а): 0
Поблагодарили: 18 раз

Re: Arduino

#238

Сообщение Sceapt » 25 апр 2017, 21:28

HTC, ну тут вопрос выбора платформы, ардуино отличная платформа для умного дома, но тоже до определенного предела, кто-то ежевику использует, кто-то альтернативные решения.

Аватара пользователя
neutrino
Сообщения: 3959
Зарегистрирован: 09 июн 2009, 01:03
Откуда: Смоленск
Благодарил (а): 3 раза
Поблагодарили: 6 раз
Контактная информация:

Re: Arduino

#239

Сообщение neutrino » 25 апр 2017, 21:30

Sceapt писал(а):neutrino, так а смысл, если вся материально-техническая база будет из того же Китая?
Она у всех из того же Китая. И ничего, делают люди из китайской комплектухи, и никто не расстраивается.

HTC
Сообщения: 9473
Зарегистрирован: 02 июн 2010, 08:28
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Re: Arduino

#240

Сообщение HTC » 25 апр 2017, 21:36

:hi_hi_hi:
Было бы над чем ...расстраиваться
blah blah blah

Ответить Пред. темаСлед. тема

Вернуться в «Хобби»