19.04.2009, 20:52
|
|
Временная регистрация
Регистрация: 13.07.2006
Сообщений: 90
Сказал спасибо: 10
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
2IOPA: Не совсем корректное утрерждение по пунктам 1 и 2 предыдущего поста. Дело не в "профессиональнее" или "элегантней", а в том что при записи
TCCR0|=0b00000 001;
я выставляю нужный мне бит, а не перезаписываю весь байт, как в случае
TCCR0=0b00000 001;
Сброс бита тоже не совсем корректен. Считаю более правильной запись
TCCR0&=~(1‹‹0);
|
|
|
|
19.04.2009, 21:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Сообщение от xinod
|
2IOPA: Не совсем корректное утрерждение по пунктам 1 и 2 предыдущего поста. Дело не в "профессиональнее" или "элегантней", а в том что при записи
TCCR0|=0b00000 001;
я выставляю нужный мне бит, а не перезаписываю весь байт, как в случае
TCCR0=0b00000 001;
Сброс бита тоже не совсем корректен. Считаю более правильной запись
TCCR0&=~(1‹‹0);
|
Согласен с вами полностью, но в начале была оговорка "изначально пусть TCCR0=0x00". Просто для каждого частного случая можно выбрать свой корректный код.
|
|
|
|
28.04.2009, 01:27
|
|
Гражданин KAZUS.RU
Регистрация: 20.06.2006
Сообщений: 937
Сказал спасибо: 1,045
Сказали Спасибо 3,982 раз(а) в 926 сообщении(ях)
|
Сообщение от IOPA4
|
Сообщение от xinod
|
2IOPA: Не совсем корректное утрерждение по пунктам 1 и 2 предыдущего поста. Дело не в "профессиональнее" или "элегантней", а в том что при записи
TCCR0|=0b00000 001;
я выставляю нужный мне бит, а не перезаписываю весь байт, как в случае
TCCR0=0b00000 001;
Сброс бита тоже не совсем корректен. Считаю более правильной запись
TCCR0&=~(1‹‹0);
|
Согласен с вами полностью, но в начале была оговорка "изначально пусть TCCR0=0x00". Просто для каждого частного случая можно выбрать свой корректный код.
|
Юрий, при всем моем уважении к Вам - xinod дал как раз общее решение задачи, и тогда не нужно "для каждого частного случая можно выбрать свой корректный код". Логично?
|
|
|
|
28.04.2009, 17:18
|
|
Прохожий
Регистрация: 20.01.2009
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Пожалуйста, Удалите мой акаунт и не присылайте спам...
|
|
|
|
28.04.2009, 19:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Сообщение от Medvedirus
|
Пожалуйста, Удалите мой акаунт и не присылайте спам...
|
Не понял это кому?
|
|
|
|
28.04.2009, 19:51
|
|
Гражданин KAZUS.RU
Регистрация: 24.06.2005
Сообщений: 535
Сказал спасибо: 262
Сказали Спасибо 216 раз(а) в 118 сообщении(ях)
|
Это Неуловимый Джо! 8O
|
|
|
|
28.04.2009, 21:44
|
|
Временная регистрация
Регистрация: 30.08.2005
Адрес: Ротовска йобласть
Сообщений: 84
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
|
Сообщение от IOPA4
|
Сообщение от xinod
|
2IOPA: Не совсем корректное утрерждение по пунктам 1 и 2 предыдущего поста. Дело не в "профессиональнее" или "элегантней", а в том что при записи
TCCR0|=0b00000 001;
я выставляю нужный мне бит, а не перезаписываю весь байт, как в случае
TCCR0=0b00000 001;
Сброс бита тоже не совсем корректен. Считаю более правильной запись
TCCR0&=~(1‹‹0);
|
Согласен с вами полностью, но в начале была оговорка "изначально пусть TCCR0=0x00". Просто для каждого частного случая можно выбрать свой корректный код.
|
Это хорошо когда регистр пустой (=0), а если нет, тогда конечно удобней делать так (на пример для MCUCR)
#define int0 6
#define int1 7
MCUCR |= 1‹‹int0;
|
|
|
|
28.04.2009, 22:08
|
|
Частый гость
Регистрация: 02.12.2008
Сообщений: 32
Сказал спасибо: 23
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Сообщение от IOPA4
|
to: sva-don
Цитата:
|
Юрий, честно говоря я немного в шоке. Просто LCD до того вылизаны, что вопросы их применения уже даже не рассматриваются. Чтобы решить твою проблему, думаю, что это будет интересно многим, раз такой эффект проявился, значит он может проявиться и у других, нужно:
1. Схему устройства.
2. Тип LCD.
3. Программу управления.
4. Фото платы с обоих сторон. Той, которая сейчас есть у тебя.
|
Все выложено на сайте http://iopa4.narod.ru
P.S. Вопрос решился сам по себе: устройство было подключено к программатору, который, соответственно, подключен к ПК через USB порт. Вероятно это воздействие помех от ПК.
|
Земля и питание LCD оказались на конце длинных проводников ("антенна" для всяческих помех). Часто помогает включение блокировочных конденсаторов непосредственно на выводы Vcc и GND LCD.
|
|
|
|
28.04.2009, 22:43
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Да, вероятно это помеха на длинные провода, спасибо за совет
|
|
|
|
28.04.2009, 22:49
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Помогите разрешить данное утверждение, есть ли ошибки:
Код:
|
if ((M==3) && (day›=time_mart)) {Hcor=H - 1;} else //если месяц март и день больше даты перевода часов - поправка 1
if ((M›3) && (M‹=10)) {Hcor=H - 1;} else //если месяц больше марта, но меньше октябра - поправка 1
if ((M==10) && (day›=time_octb)) {Hcor = H;} else //если месяц октябрь и дата больше даты перевода - поправка 0
if ((M›10) && (M‹=12)) {Hcor = H;}; //если месяц больше октября но меньше/равно декабрю - поправка 0 |
Уже мозги дымятся и результата нет
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 09:03.
|
|