Страница 3 из 3 Первая 123
Показано с 41 по 51 из 51

Тема: Подскажите по PIC18F452

  1. #41
    Завсегдатай Аватар для Openreel
    Регистрация
    02.09.2006
    Адрес
    Санкт-Петербург
    Возраст
    50
    Сообщений
    3,434

    По умолчанию Re: Подскажите по PIC18F452

    Цитата Сообщение от wi3ik Посмотреть сообщение
    С чем это связано?
    Протеус ясно сказал, у компа кишка тонка, чтобы симулить это в реальном времени.

    Пора брать паяльник и симулировать в реальной железяке, столько нового интересного откроется....
    Последний раз редактировалось Openreel; 14.04.2011 в 22:49.
    WBR, Michael.
    Цель расчетов - понимание, а не числа (с) Хемминг.

  2. #42
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    Если я хочу сделать передачу для USART в две стороны, то мне нужно делать два вектора прерываний: один для RC, а другой для ТХ? Или это не обязательно?

  3. #43
    Завсегдатай Аватар для Openreel
    Регистрация
    02.09.2006
    Адрес
    Санкт-Петербург
    Возраст
    50
    Сообщений
    3,434

    По умолчанию Re: Подскажите по PIC18F452

    Использовать прерывания или опрос - зависит от самой программы вцелом, от ее сложности.
    Не зная всей задачи нельзя сказать, обойдется без прерываний или нет.
    При использовании прерываний (не важно, уарт, таймер или там АЦП) необходимо в полном объеме осознать не только механизмы работы с прерываниями,
    но и чисто софтверные вещи. Понятие атомарности операции, способы синхронизации данных между задачами (минимально - критические секции). Если этих основ не разобрать, то при использовании прерываний глючить все будет обязательно, и никакой симулятор не поможет.
    WBR, Michael.
    Цель расчетов - понимание, а не числа (с) Хемминг.

  4. #44
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    Как правильно записать действие?
    Я хочу, например, чтобы Х = PORTC, но не все 8 бит, а только биты с 0 по 6 включительно

    X = (PORTC & (1>>5));

  5. #45
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    38,704

    По умолчанию Re: Подскажите по PIC18F452

    Цитата Сообщение от wi3ik Посмотреть сообщение
    Если я хочу сделать передачу для USART в две стороны, то мне нужно делать два вектора прерываний: один для RC, а другой для ТХ? Или это не обязательно?
    Это зависит от того, как ты саму программу делаешь. Можно и не одного из этих прерываний не делать...

    Цитата Сообщение от wi3ik Посмотреть сообщение
    Я хочу, например, чтобы Х = PORTC, но не все 8 бит, а только биты с 0 по 6 включительно
    X = PORTC & 0x3F; // это универсально, любой компилятор поймет
    или:
    X= PORTC & 0b00111111; // это поймут не все компиляторы!
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  6. #46
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    хочу подключить 4 DS18B20.............с командой сброса и импульса присутствия вроде разобрался....................подскажите как реализовать опрос адресов устройств search rom (код команды 0xF0)?

  7. #47
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    Нужен совет................я правильно делаю?
    Из даташита вычитал:
    Главное устройство читает один бит с шины. Каждое устройство ответит, помещая значение первого бита соответствующего его данным 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

  8. #48
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    В протеусе на линии вольтметр показывает SLO и WHI................это "0" и "1"?

  9. #49
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    Может кто-то сталкивался?
    Нужна схема регулирования мощности нагревателя..........от контролера идет сигнал на включение/выключение и в зависимости от той температуры, в которой находиться нагреватель, он будет меньше или больше греться.
    Кто-то может подсказать где такую схему можно найти?

  10. #50
    Завсегдатай Аватар для boatsman
    Регистрация
    10.03.2004
    Адрес
    Москва
    Возраст
    62
    Сообщений
    2,702

    По умолчанию Re: Подскажите по PIC18F452

    Регулятор мощности на тиристоре? Это проще всего.
    Книжечка есть, прилагается.

    Есть даже специализированные микросхемы для фазовых тиристорных регуляторов, гальванически отвязанные от тиристоров и управляемые напряжением. ТСА780 - навскидку.
    Вложения Вложения
    Yours Aye, Ilya

  11. #51
    wi3ik
    Гость

    По умолчанию Re: Подскажите по PIC18F452

    Здравствуйте.
    Написал код в котором отображаю строку на жк-индикаторе. В протеусе попробовал, все нормально работает. А когда попробовал на живой PICDEM2PLUS строка отображается искаженной. Кто-то может сказать в чем проблема?

    Весь проект в архиве.........может кто-то поможет....
    Вложения Вложения
    • Тип файла: rar temp.rar (53.4 Кб, Просмотров: 61)

Страница 3 из 3 Первая 123

Социальные закладки

Социальные закладки

Ваши права

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