Новые сообщения в форуме · Участники · Правила форума · Поиск · RSS ]







  • Страница 1 из 1
  • 1
Модератор форума: Визинга  
Примеры программирования на СИ для AVR
klaster_qДата: Суббота, 08.09.2012, 17:46 | Сообщение # 1

Репутация:


Группа:
Новичок


Сообщений: 4
Награды: 0
Статус:Offline
Всем доброго времени суток , история разгрызния контроллера дошло до моргания лампочкой , но любопытство берет своё , куча вопросов а ответветы с космоса не идут и как Меделеву не сняться , само не понятное в написания условий что попадает в регистры и как происходит вычесление , Люди добрые объясните на примере "включает и выключения устройства одной кнопкой " а то жена из дома выгонить из - за большого поведения времени за компом
 
brys99Дата: Среда, 12.09.2012, 05:21 | Сообщение # 2

Репутация:


Группа:
Помощник администратора


Сообщений: 448
Награды: 19
Статус:Offline
да видно програмисты перевелись cry biggrin
 
sanyaavДата: Понедельник, 17.09.2012, 13:15 | Сообщение # 3

Репутация:


Группа:
Журналист


Сообщений: 134
Награды: 8
Статус:Offline
идея влючения и выключения: ВКЛ-подали высокий уровень (1), ВЫКЛ - подали низкий уровень (0), у каждого порта есть защёлки, через которые на ножки подаётся сигнал с регистра, управляющего этим портом, в нашем примере возьмём 1 ножку выход, получаем, что при записи в регистр 00000000 - на 1 ножке будет низкий уровень, а при записи 00000001 - высокий, на остальные ножки не нужно обращать внимания, то есть если записать 11111111 - то тоже будет высокий уровень, далее нужно как то подцепить кнопку, можно сделать по 2 вариантам: по прерыванию и по принудительному опросу. Допустим будем делать по прерыванию, для этого нужно оперировать 2 подпрограммами: подпрограмма ВКЛ, подпрограмма ВЫКЛ, а подпрограмма прерываний будет направлять нас в нужное русло в зависимости от предыдущего состояния. Для запоминания предыдущего состояния выделим отдельный регистр и будем записывать туда значения 0 и 1
Допустим у нас произошло прерывание по нажатию кнопки, перво-наперво нужно запретить прерывания в подпрограмме прерываний (думаю не нужно объяснять почему))), затем нужно вставить паузу для исключения влияния дребезга контактов, а вот затем нужно начинать проверять значения, тут тоже есть мааса вариантов, например вычитать 1 и сравнивать значение с нулём, или вычитать единицу и проверять флаг переноса, или же самый простой вариант инвертировать биты регистра, а затем проверять отдельно нулевой бит на равность нулю, 2 пути развития: равно нулю-идём в подпрограмму "ноль", разрешаем прерывания, записываем в порт значение 00000000, и крутимся в теле этой подпрограммы до следущего прерывания,... аналогично и с подпрограммой "один"
Можно делать уход в эти 2 подпрограммы в теле основной программы, а не в прерывании, при этом нужно будет инвертировать значение регистра и выполнить команду возвращения из прерываний (по идее так правильнее, но я пользовался обоими вариантами-оба работают)


I'll be back
 
VovkaДата: Вторник, 18.09.2012, 21:47 | Сообщение # 4

Репутация:


Группа:
Помощник администратора


Сообщений: 634
Награды: 19
Статус:Offline
А почему именно СИ ? И вообще , есть куча лит-ры (даже у нас).


"СДЕЛАТЬ ХОТЕЛ УТЮГ , СЛОН ПОЛУЧИЛСЯ ВДРУГ "
 
yrrrecДата: Среда, 07.11.2012, 19:13 | Сообщение # 5

Репутация:


Группа:
Паятель


Сообщений: 10
Награды: 1
Статус:Offline
Всем привет! а почему СИ, я пишу на PIC basic........ и просто . и быстро
Прикрепления: 8925219.jpg (77.3 Kb)


Юрец
 
klaster_qДата: Пятница, 04.01.2013, 17:27 | Сообщение # 6

Репутация:


Группа:
Новичок


Сообщений: 4
Награды: 0
Статус:Offline
А может кто нибудь написать исходник тригерног режима кнопки ? На си так как я привязался к сям уже, , мне писал человечек как-то с флагами , я потерял и не успел вникнуть , поможите люди добрые , или все же перевелись программисты ?
 
yrrrecДата: Суббота, 05.01.2013, 00:10 | Сообщение # 7

Репутация:


Группа:
Паятель


Сообщений: 10
Награды: 1
Статус:Offline
Всем привет! С Новым Годом!!!


Юрец
 
VovkaДата: Вторник, 08.01.2013, 10:34 | Сообщение # 8

Репутация:


Группа:
Помощник администратора


Сообщений: 634
Награды: 19
Статус:Offline
С новым !
Ещё раз не по теме - подарка не будет !
Есть - " Для разной поговорить и тд. и тп. " wink


"СДЕЛАТЬ ХОТЕЛ УТЮГ , СЛОН ПОЛУЧИЛСЯ ВДРУГ "
 
135alex135Дата: Среда, 13.02.2013, 09:38 | Сообщение # 9

Репутация:


Группа:
Новичок


Сообщений: 9
Награды: 0
Статус:Offline
вопросы те же! напишите, кто знает, пример на СИ как считать нажатие кнопки
 
  • Страница 1 из 1
  • 1
Поиск:

- ЕСТЬ НОВОЕ СООБЩЕНИЕ
- НЕТ НОВЫХ СООБЩЕНИЙ

Copyright Zloy Soft (Company) © 2008 - 2024