Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
20.09.2008, 08:11
|
|
Прохожий
Регистрация: 07.07.2005
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Прерывания AT89C2051
Согласен, что семейство-51 считается устаревшим, но для практических целей вполне подходит. Мне тут понадобился девайс на работу типа много входов и на выходе сигнал аварии и выкл. исполнительного у-ва. Лучше AT89C2051 трудно что-нибудь придумать! Дешево и сердито.
Написал прогу на Си (Keil) правда потыкался недели две, вроде все нормально,но что-то затык вышел на прерываниях.
Специалисты подскажите пожалуйста.
Почему инициализация прерываний производится в таком виде: TMOD |=0x01; TMOD &=0xF1;
А именно зачем используются операторы |,&, почему просто не указать TMOD = 0x01?
Не понял и вошел в ступор
|
|
|
|
20.09.2008, 08:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Прерывания AT89C2051
Сообщение от awix
|
Специалисты подскажите пожалуйста.
Почему инициализация прерываний производится в таком виде: TMOD |=0x01; TMOD &=0xF1;
А именно зачем используются операторы |,&, почему просто не указать TMOD = 0x01?
Не понял и вошел в ступор
|
Ну чтоб не менять другие биты TMOD и при этом поставить бит 1 применяется запись TMOD |=0x01
А TMOD &=0xF1 обнуляютя нужные биты,а остальные остаются неизмены
-- Прилагается рисунок: --
|
|
|
|
20.09.2008, 08:28
|
|
Прохожий
Регистрация: 07.07.2005
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Прерывания AT89C2051
Спасибо CERGEI1982! ![Валяюсь от смеха](images/smilies/icon_biggrin.gif) Быстро работаете!
|
|
|
|
20.09.2008, 10:37
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Re: Прерывания AT89C2051
Сообщение от awix
|
Почему инициализация прерываний производится в таком виде: TMOD |=0x01; TMOD &=0xF1;
А именно зачем используются операторы |,&, почему просто не указать TMOD = 0x01?
Не понял и вошел в ступор
|
Почитайте " Си для МК"
http://avr123.nm.ru/05.htm
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
20.09.2008, 13:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
avr123-nm-ru вас не зря называют зло на форумах
Сайт сумбурнный и новечки должны начинать с ассамблера,а у вас сразу Си.
|
|
|
|
20.09.2008, 14:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.01.2007
Сообщений: 1,747
Сказал спасибо: 2
Сказали Спасибо 46 раз(а) в 35 сообщении(ях)
|
Есть конфигураторы например MCS51 Configuration Wizard ver 0.1 http://arvresearch.nm.ru/ мне понравился
Удачи!
__________________
Я, думаю, нужно подумать...
|
|
|
|
21.09.2008, 20:57
|
|
Прохожий
Регистрация: 07.07.2005
Сообщений: 7
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Прерывания AT89C2051
Согласен надо бы с ассемблера, но с Си помоему тоже неплохо все логично и наглядно. Спасибо sanitar249
отличный конфигуратор.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Программирование at89c2051
|
urisss |
Микроконтроллеры, АЦП, память и т.д |
1 |
26.07.2009 01:26 |
Программные прерывания в at89c2051
|
RA00229 |
Микроконтроллеры, АЦП, память и т.д |
6 |
16.01.2006 02:26 |
Помогите с AT89C2051
|
BSL |
Микроконтроллеры, АЦП, память и т.д |
0 |
07.11.2005 11:48 |
AT89C2051
|
KVN16 |
Микроконтроллеры, АЦП, память и т.д |
1 |
01.10.2005 12:57 |
At89C2051+ВВ55
|
cr0ackerc |
Микроконтроллеры, АЦП, память и т.д |
3 |
08.06.2005 03:08 |
Часовой пояс GMT +4, время: 11:36.
|
|