Последний раз редактировалось Openreel; 14.04.2011 в 22:49.
WBR, Michael.
Цель расчетов - понимание, а не числа (с) Хемминг.
Если я хочу сделать передачу для USART в две стороны, то мне нужно делать два вектора прерываний: один для RC, а другой для ТХ? Или это не обязательно?
Использовать прерывания или опрос - зависит от самой программы вцелом, от ее сложности.
Не зная всей задачи нельзя сказать, обойдется без прерываний или нет.
При использовании прерываний (не важно, уарт, таймер или там АЦП) необходимо в полном объеме осознать не только механизмы работы с прерываниями,
но и чисто софтверные вещи. Понятие атомарности операции, способы синхронизации данных между задачами (минимально - критические секции). Если этих основ не разобрать, то при использовании прерываний глючить все будет обязательно, и никакой симулятор не поможет.
WBR, Michael.
Цель расчетов - понимание, а не числа (с) Хемминг.
Как правильно записать действие?
Я хочу, например, чтобы Х = PORTC, но не все 8 бит, а только биты с 0 по 6 включительно
X = (PORTC & (1>>5));
"Замполит, чайку?"(с)"Охота за Красным Октябрем".
"Да мне-то что, меняйтесь!"(с)анек.
<-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.
хочу подключить 4 DS18B20.............с командой сброса и импульса присутствия вроде разобрался....................подскажите как реализовать опрос адресов устройств search rom (код команды 0xF0)?
Нужен совет................я правильно делаю?
Из даташита вычитал:
Главное устройство читает один бит с шины. Каждое устройство ответит, помещая значение первого бита соответствующего его данным ROM. Результат – «логическое И» всех устройств на линии.
Главное устройство будет читать следующий бит. (С тех пор когда команда Search ROM выполняется, все устройства отвечают одновременно). Все устройства помещают на шину дополнение первого бита их соответствующего.
Если бы все устройства имели «0» в этой позиции двоичного разряда, чтение дало бы результат «01»; если бы позиция двоичного разряда содержала во всех устройства «1» результат был бы «10».
Код://Главное устройство читает один бит с шины (прямий біт) r_0(); bit_analizer=0b00000011; if (bus == 0) {a = 0b00000010;} //0b0000000x else {a = 0b00000011;} //0b0000000x bit_analizer = (bit_analizer & a); Delay10TCYx(25); // 50 мкс //Главное устройство будет читать следующий бит. (інвертований біт) r_0(); if (bus == 0) {a = 0b00000001;} //0b000000x0 else {a = 0b00000011;} //0b000000x0 bit_analizer = (bit_analizer % a); Delay10TCYx(25); // 50 мкс //Аналіз отриманих значень bit_analizer
В протеусе на линии вольтметр показывает SLO и WHI................это "0" и "1"?
Может кто-то сталкивался?
Нужна схема регулирования мощности нагревателя..........от контролера идет сигнал на включение/выключение и в зависимости от той температуры, в которой находиться нагреватель, он будет меньше или больше греться.
Кто-то может подсказать где такую схему можно найти?
Регулятор мощности на тиристоре? Это проще всего.
Книжечка есть, прилагается.
Есть даже специализированные микросхемы для фазовых тиристорных регуляторов, гальванически отвязанные от тиристоров и управляемые напряжением. ТСА780 - навскидку.
Yours Aye, Ilya
Здравствуйте.
Написал код в котором отображаю строку на жк-индикаторе. В протеусе попробовал, все нормально работает. А когда попробовал на живой PICDEM2PLUS строка отображается искаженной. Кто-то может сказать в чем проблема?
Весь проект в архиве.........может кто-то поможет....
Социальные закладки