Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Proteus, KiCAD и другие ECAD Разработчик так или иначе сталкивается с системами автоматизированного проектирования. Данный раздел - по САПР.

Результаты опроса: Каким Си компилятором пользуетесь?
CodeVisionAvr 45 55.56%
WinAvr 17 20.99%
Iar 12 14.81%
ImageCraft 2 2.47%
другой 5 6.17%
Голосовавшие: 81. Вы ещё не голосовали в этом опросе

Закрытая тема
Опции темы
Непрочитано 19.03.2007, 21:28   #31
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Сообщение от kison

Спасибо за ветку, много посмеялся.
Для начала максимальное 32-х битное целое = 4294967295 , а вовсе не " 4 000 000 с чем то (2^32)."
Дальше больше - вычитать беззнаковые целые числа любой разрядности не просто просто , а очень просто.
Спасибо за код, оказалось действительно очень просто!
dimonbest вне форума  
Непрочитано 20.03.2007, 17:15   #32
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

два месяца занимаюсь в плотную програмированием чур не судить строго
CERGEI1982 вне форума  
Непрочитано 20.03.2007, 23:14   #33
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Я и не сужу
Смех вызвало это:
Сообщение от dimonbest
Я тоже много писал на ассемблере, но сейчас например надо вывести 4 байтное число на LCD экранчик. На Си это делается не сложно, а вот как на ассемблере я еще не придумал...
Все когда-то с 0 начинали. Просто вместо того, что-бы вариться в собственном соку, можно задать конкретный вопрос и получить конкретный ответ.
kison вне форума  
Непрочитано 21.03.2007, 12:39   #34
slawalog
Прохожий
 
Регистрация: 05.07.2006
Сообщений: 5
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slawalog на пути к лучшему
По умолчанию

Есть часть кода:

while(1)
{
if (waitkn3on())
{
if (date==1)date=31; else date--;
gotoxy(0,2);
show(date);
}
if (waitkn1on())
{
if (date==31)date=1; else date++;
gotoxy(0,2);
show(date);
}

}
Как из него видно, переменная date может выводить значения на экран только от 1 до 31. А у меня когда долго клацать на кнопки может принять значение и 255! Может подскажете в чем может быть проблема?
[/quote]

Вот в этом месте:
if (date==1)date=31; else date--;
Посмотри как инициализируется переменная date если
по умолчанию то её значение ==0, тогда декрементация else date--; даёт с каждым циклом значения 255,254, 253 и т.д. это если она unsigned а если знаковая то 127,126,125 ит.д.
slawalog вне форума  
Непрочитано 21.03.2007, 13:02   #35
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Сообщение от slawalog
Вот в этом месте:
if (date==1)date=31; else date--;
Посмотри как инициализируется переменная date если
по умолчанию то её значение ==0, тогда декрементация else date--; даёт с каждым циклом значения 255,254, 253 и т.д. это если она unsigned а если знаковая то 127,126,125 ит.д.
У меня перед этим она инициализируется, иногда значения скачут в процессе, когда я нажимаю эти кнопки. Такое впечатление что программа сама скачет из одного участка в другой. Может дело в железе? Или контроллер глючный?
dimonbest вне форума  
Непрочитано 21.03.2007, 14:26   #36
slawalog
Прохожий
 
Регистрация: 05.07.2006
Сообщений: 5
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slawalog на пути к лучшему
По умолчанию

Сообщение от dimonbest
У меня перед этим она инициализируется, иногда значения скачут в процессе, когда я нажимаю эти кнопки. Такое впечатление что программа сама скачет из одного участка в другой. Может дело в железе? Или контроллер глючный?
Я не понял date инициализируется каким значением?
Я думаю что нужно вот так
unsigned char date=1;
А сжелезом может быть если нажатие кнопки - установка "1" то посмотри какой конденсатор у тебя стоит перед входом в порт.(может держать 1,5в несколько циклов) а так не могу сказать - поставь програмно задержку в 100-150мС после нажатия кнопки в твоей функции waitkn3on()
что то типа
if(bit_is_set(PIND, 5))
delay_ms(150);
slawalog вне форума  
Непрочитано 21.03.2007, 14:30   #37
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Сообщение от slawalog
Я не понял date инициализируется каким значением?
Значением от 1 до 31...
dimonbest вне форума  
Непрочитано 23.03.2007, 17:03   #38
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

0
dimonbest вне форума  
Непрочитано 25.03.2007, 00:47   #39
slawalog
Прохожий
 
Регистрация: 05.07.2006
Сообщений: 5
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slawalog на пути к лучшему
По умолчанию

0
slawalog вне форума  
Непрочитано 25.03.2007, 02:17   #40
stas633
Частый гость
 
Регистрация: 16.03.2007
Сообщений: 13
Сказал спасибо: 1
Сказали Спасибо 10 раз(а) в 2 сообщении(ях)
stas633 на пути к лучшему
По умолчанию

Здравствуйте.
Выражу свое мнение по-поводу "опроса" кнопок. (хотя это и оффтоп для темы)
1. Механические контакты СИГНАЛЬНЫЕ (не путать с СИЛОВЫМИ) "дребезжат" 10...15 милисекунд. Это касается как контактов кнопок, нажимаемых человеком, так и контактов электромагнитных реле... бОльшая задержка для устанения дребезга бессмысленна.
2. Лучшим "устранителем" дебезга является триггер-защелка... НО такое решение требует дополнительных затрат на "железо".
3. Внутреннего "подтягивающего" резистора AVR контроллера (около 100 кОм) не достаточно для устойчивой работы кнопки - ток слишком мал.. от чего велика помехозависимость. Наличие внешнего "подтягивающего" резистора 2...10 кОм - обязательно. (общепринятым считается номинал в 4,7кОм, но если токопотребление всей схемы не является принципиальным, то я бы посоветовал ставить 2,7...3,9 кОм).
4. Для правильной работы программы опроса кнопок необходимо вводить "индикатор" (флаг, если хотите) факта нажатия (или отпускания) кнопки. А в программе оТработки нажатия проводить "анализ" этого флага, и если нажание не обработано, то отрататывать его, и "сбрасывать" флаг нажатия. Такой алгоритм поможет избежать повторной (многократной) отработки одного нажания.

теперь вопрос по теме..
1.Как к CVAVR "подключить" симулятор.
2.Как "ускорить" работу встроенного программатора CVAVR? (видимо, в программе отсутствует режим страничной записи)
мысли про различные компиляторы...
IAR считается "стандартом"..., на мой взгляд, его основной плюс в том, что среди "продуктов" IAR есть компиляторы Си и для 51-х, и для AVR и DSP.. и т.д... а интерфейсная оболочка (IDE) одинакова для любых компиляторов IAR, что обеспечит скорейший "переход" (перенос программы) при "смене" элементной базы.
WinAVR - "дитя" LINUX'a (отсюда его "бесплатность"), в основе GCC компилятор. Его можно "собирать" (самостоятельно добавить новые кристаллы, например) как угодно, но для этого нужны ЗНАНИЯ ...
CVAVR - самый "дружественный", но и самый неуважаемый (на мой взгляд, не заслуженно) проффессиональными (пишушими программы за деньги) программистами. (я "пишу" на нём, хотя "знакомился" со всеми перечисленными). Мой совет начать именно с CVAVR. Если он вас по каким-либо причинам "не устроит" - "пойдете" дальше, но скорее всего "вернетесь" назад..
Есть еще альтернатива - AB (АлгоритмБилдер).. Хоть автор и позиционирует его как ассемблер - это достаточно удобная и понятная графическая система разработки программ. В ней есть возможность работать и с массивами, и с указателями (косвенной адресацией), и даже создавать структуры. Единственное "НО" - это "своеобразная" графика.. (требует "привыкания")..
stas633 вне форума  
Закрытая тема

Закладки


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос по отладчику IAR AVR to kison picavr Микроконтроллеры, АЦП, память и т.д 36 28.04.2009 18:01
Вопрос по ШИМ на нулевом таймере AVR. chapa Микроконтроллеры, АЦП, память и т.д 10 09.02.2009 18:31
Обработка нескольких прерываний AVR (вопрос) festoon Микроконтроллеры, АЦП, память и т.д 27 17.11.2008 18:02
GNU GCC AVR вопрос по переменным.. Mozart Микроконтроллеры, АЦП, память и т.д 3 09.02.2007 20:00
Вопрос по асемблеру к AVR Гость Микроконтроллеры, АЦП, память и т.д 2 12.09.2005 00:47


Часовой пояс GMT +4, время: 02:23.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot