14 сообщений в этой теме

larivlad    0

Здравствуйте.

Пишу и отлаживаю свои программы на MPLAB. Проблем нет.

Решил попробовать писать на языке С и установить MicroC for pic и столкнулся со следующей проблемой:

открываю проект примера Timer0 Interrupt и запускаю отладку программы. Выбираю регистр Tmr0 для контроля

и пошагово прохожу по программе, а изменений в таймере почему-то не происходит,

также не происходит и вызова Interrupt. Помогите разобраться почему пример предложенный самим MicroC for pic не работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Vovka    29

Начну с совета: забыть о MicroC и поставить, например, xc8

Прерывания разрешены? Таймер сконфигурирован и запущен?

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UVV    51

MicroC for pic отличная программа не чата замудрёной MPLAB

  • Не одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
солар    163

Вопрос

В 07.06.2017 в 16:58, larivlad сказал:

Помогите разобраться почему пример предложенный самим MicroC for pic не работает

, а не какую IDE можно ещё использовать и почему. Умники, ёпта...

Изменено пользователем солар

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    546
3 часа назад, UVV сказал:

MicroC for pic отличная программа не чата замудрёной MPLAB

Вы работник Микроэлектроники чтоли, такие лозунги выкрикиваем ? Или просто кроме микроси ничего в глаза не видели ?
MPLAB не замудрёная, MPLAB - инструмент от производителя. А микроси - сторонняя какашка. Что сама IDE, что их недокомпилятор.

Не надо тут ля-ля...

 

В 7 июня 2017 г. в 15:58, larivlad сказал:

также не происходит и вызова Interrupt.

Избитая тема. MicroC в отладке - г..но. В прерывания не входит, watch'и отстойные, ... 
Если решили перейти с АСМа на Си, то просто поставьте сишный компилятор и не наживайте гемор. Иначе так ничему не научитесь, кроме как задавать на форумах вопросы ардуинщиков, типа "Помогите найти библиотеку", "Почему вот этот код не работает ?", и т.д...
 

  • Одобряю 2
  • Не одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UVV    51

У MicroC процесс создания нового проекта очень прост и понятен, биты конфигурации определяются до входа в текстовый процессор, так же до можно подключить либы и инклюды, Инсталяция самой MicroC занимает пару минут и после инсталяции не чего и не куда не надо настраивать до устанавливать какие то дополнения пути прописывать. Про её отладчик не скажу так как не пользуюсь но глюков с готовыми прошивками ещё не когда не возникала а если и возникал глюк то это от собственных недоделок и невнимательности.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    546
1 час назад, UVV сказал:

У MicroC процесс создания нового проекта очень прост и понятен

В MPLAB'е тоже всё понятно и элементарно. Проект создаётся в несколько кликов мыши.

1 час назад, UVV сказал:

биты конфигурации определяются до входа в текстовый процессор

Вы наверное имели в виду "редактор", а не "процессор".
Не вижу тут плюсов, в плане "до". Есть разница когда их ставить, "до" или "во время" ? В MPLAB'е их можно тоже мышкой устанавливать, не прописывая в коде.

Цитата

так же до можно подключить либы и инклюды

Не вижу проблем написать пару строк со словами "include". По сравнению с основной программой - это микроб.

Цитата

Про её отладчик не скажу так как не пользуюсь но глюков с готовыми прошивками ещё не когда не возникала

Значит Вы просто ещё не писали серьёзные программы. Отладка - необходимая вещь, с которой сталкиваешься постоянно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Vovka    29
13 часа назад, UVV сказал:

MicroC for pic отличная программа не чата замудрёной MPLAB

Без обид, но это ответ студента, который кроме как мигалки на светодиоде ничего не писал!

1 час назад, UVV сказал:

У MicroC процесс создания нового проекта очень прост и понятен, биты конфигурации определяются до входа в текстовый процессор, так же до можно подключить либы и инклюды, Инсталяция самой MicroC занимает пару минут и после инсталяции не чего и не куда не надо настраивать до устанавливать какие то дополнения пути прописывать. Про её отладчик не скажу так как не пользуюсь но глюков с готовыми прошивками ещё не когда не возникала а если и возникал глюк то это от собственных недоделок и невнимательности.

Так поставьте MPLAB X - там есть конфигуратор. Лично мне MPLAB X не понравился и я по прежнему на MPLAB IDE, а конфигурирую в отдельном файле.
ГЛЮКОВ НЕТ??? Да я на всю жизнь запомнил, когда готовый проект на PIC18F46K22, память была заполнена где-то на 90%, добавляю простую задержку из пары nop-ов и после этого прошивка перестает работать! А заказчик нервничает! И как я потом срочным образом все это дело переносил на MCC18...
Если бы мне кто раньше такое сказал, то я бы в жизни MicroC  не поставил!

22 минуты назад, Alex сказал:

Значит Вы просто ещё не писали серьёзные программы. Отладка - необходимая вещь, с которой сталкиваешься постоянно.

Я в последнее время, где это возможно, поступаю так: в main.c, в функции main() делаю инклуд файла с кодом этой функции. В Visual C++ делаю программку и вставляю этот файл. Отлаживается все без глюков, плюс делаю визуальный интерфейс, который можно показать заказчику. Потом в MPLAB компилирую прошивку и заливаю - очень удобно! Т.е. вся основная работа по написанию логики прошивки идет в Visual C++. Хотя можно и без MPLAB компилировать через bat-файл...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UVV    51

Тут как говорится кто к чему привык. Отлаживаю в proteus-е. Максимум писал под pic18f4550. Я с начало хотел тоже начать с MPLAB на HI-tec-е но уж очень там было всё забубённо, потом вышел на микрос и всё пошло. 

Не надо здесь людям руки отбивать от мирос всё в ней нормально.

Последнее что писал для мк это передача USART по радиоканалу на модулях DRA889TX и DRA887RX, один приёмник и 50 передатчиков. Пришлось придумать небольшой протокол передачи данных и все тайминги на ошибки потери пакетов также приём и передачу всё обрабатывал в прерывании да ещё и дисплей знакосинтез. пришлось прикрутить к приёмнику для отображения какой когда сработал датчик. Да и всё это должно было быть подвешено через сторожевую собаку.

Но увы заказчик смылся и на связь не выходил.

Изменено пользователем UVV

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
larivlad    0
22 часа назад, UVV сказал:

MicroC for pic отличная программа не чата замудрёной MPLAB

unsigned cnt;

void interrupt() {
  if (TMR0IF_bit) {
    cnt++;                 // increment counter
    TMR0IF_bit = 0;        // clear TMR0IF
    TMR0   = 96;
  }
}

void main() {
  OPTION_REG = 0x84;       // Assign prescaler to TMR0
  ANSEL  = 0;              // Configure AN pins as digital
  ANSELH = 0;
  C1ON_bit = 0;            // Disable comparators
  C2ON_bit = 0;
  TRISB = 0;               // PORTB is output
  PORTB = 0xFF;            // Initialize PORTB
  TMR0  = 96;              // Timer0 initial value
  INTCON = 0xA0;           // Enable TMRO interrupt
  cnt = 0;                 // Initialize cnt

  do {
    if (cnt >= 400) {
      PORTB = ~PORTB;      // Toggle PORTB LEDs
      cnt = 0;             // Reset cnt
    }
  } while(1);
}

Вот такой код примера из папки для 16f887. Все регистры загружаются при отладке верно, а в таймере значение 96

и не увеличиваются при отладке.

Может я какой кривой microc поставил? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UVV    51

Версия какая микроси ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
larivlad    0

На одном компьютере 5.61, на другом 6,61 и работают все одинаково.

Нужно было написать простую програмку для измерения 

длительности входного импульса используя таймер 1. Хотел попробовать на С.

Написал откомпеллировал.

А таймер при отладке молчит. Вот потом я и решил попробовать  пример от microc. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UVV    51

@larivlad привет.

Вот тебе пример для PIC16F677A таймер считает секунды минуты часы но под 

593d55727aec9_.GIF.1facb7098625aa9e634d84f6b0f67245.GIF

в общем по переполнению TMR1 происходит прерывание в котором инкрементируется переменная tmr_sec а в основном цикле программы выполняется счёт минут и часов и вывод этого всего на дисплей.

Всё это дело можно спокойно отлаживать вот в такой программе

593d56e615d2c_3.GIF.865ec0a14f6c3e30da9987ea6e29a313.GIF 

это её рабочая область с лева окно Watch Window отображаются регистры МК а с права сама схема.

593d58d15aa31_4.thumb.GIF.4c4d340ed58f8af505499cf7f11dc160.GIF

тут в архиве весь проект 1.rar

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
dosikus    12
В 09.06.2017 в 11:37, UVV сказал:

Не надо здесь людям руки отбивать от мирос всё в ней нормально.

Приведите исходники встроенных либ. И каким  чудом вы будете трассировать их чудный код.

  Если вам это ничего не говорит, и вы уверовали в непогрешимость продуктов МикроЕ , то свой шаг в ардунью вы уже сделали. Вляпались по самое немогу ...

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Автор: Михаил Савин
      Добрый день. Подскажите есть устройство на плате для регулирования дроссельной заслонки от Калины. Довольно специфическое, индивидуальная разработка, аналогов не купить. Основывается на микроконтроллере ATXMEGA128A3U AU 1651. Возможно ли скопировать залитый в него код что бы изготовить данное устройство ? Или это невозможно в принципе ?
    • Автор: ficus216
      Здравствуйте всем. Такая проблема. Дорожка работала, при беге в максим. 10км/ч резко прибавила скорость до 12 наверное ( хотя только до 10 максимум она разгоняется)
      попытался убавить скорость но ничего не срабатывало, можно только переключать между табло "каллории" "скорость" "расстояние""время" ничего убавить нельзя. Дальше вытаскиваю магнит (обычно дорожка автоматически выключается после этого) в этом случае нет, она дальше работала на полной скорости.
      Снизу находится общий включатель, раньше если его вкл то пока старт не нажмешь ничего не будет. а сейчас нажимаю этот вкл снизу и сразу на 12шке херачит.
      Тестором все прозвонил, сгорел микропроцессор я так понимаю. В магзиине мне сказали. что только если на али заказать. Название сгоревшего sonyx sn8p2624kb на али нет в точности с таким названием. прилагаю ссылку
      можно ли заказать этот или любой другой с другим названием ? что делать дальше ? не нужно потом это все прошивать ? и как ?https://clck.ru/DQhDh



    • Автор: Сибирский кот
      Здравствуйте! Мой знакомый отдал мне по ненадобности пульты для заправочной станции модели "Сапсан". В одном пульте стоял микроконтроллер ATMEL AT89S51-24PU и в другом-AT89C51-24PU. Искал схемы в интернете,но ничего не нашел,кроме даташиты. Не знаю,что делать с этими микроконтроллерами-пустить в дело или в утиль. Сможете подсказать?
    • Автор: Oleg Borisov
      Добрый день. Для исследование мне необходимо разработать и собрать прибор который анализирует температуру и влажности среды.
       
      Прибор состоит из следующих блоков:
      1. Выносной датчик температуры
      2. Выносной датчик влажности
      3. Передатчик Bluetooth
      4. Батарея с возможностью подзарядки
      5. Корпус
      6. Мобильное программное обеспечение (Андройд)

      Устройство небольшого размера закрепляется на объекте и передает показания датчиков по средствам Bluetooth на мобильное устройство с предустановленным программным обеспечением.
      В приложении примерная визуализация прибора.
      Оплата договорная!

    • Автор: MolodoyElectrik
      Всем привет.
      Пишу скетч для ардуины, нужно чтоб 1 светодиод мигал постоянно, и 4 светодиода включались и выключались поочередно. Все должно происходить в одно время разумеется и Delay здесь не катит. Вот пример как должно быть только с delay:
       
      Сделал такой скетч:
      Тот который 1 светодиод мигает все хорошо, а вот с 4, которые должны подряд включаться какая то лажа) Где напортачил?
      Предыдущую тему не в том разделе создал, удалите пожалуйста. 
  • Сообщения

    • То есть есть какая то схема которая определяет что акб заряжен. Это наверно и есть контроллер. И если я правильно понимаю эта схема стоит в фонаре? Стабилизатор напряжения я понимаю как сделать. А стабилизатор тока можно наверно на Lm317 clсделать?  Я имею ввиду такую схему : Трансформатор Диодный мост Конденсатор электролит. Стабилизатор напряжения на lm7808 + схема регулировки напряжения  ( чтобы понизить до 7.2) Стабилизатор тока на lm317  Такая схема будет работать?
    • Я буду долго ржать, если он окажется из Владивостока :))
    • Получилось! По совету @colorad  накидал триггер Шмитта по переменке и управляемый генератор, и как ни странно симулятор не заругался. Еще раз спасибо за направление.  
    • @vladimir1478 Не передёргивайте. Если из десятка предложений вольно надёргать слов\сделать нарезку-можно получить: от шестой заповеди, до призыва к вооружённому восстанию. ---- 1. Считайте что не согласен. 2. А вам ни кто и не запрещает  "понимать" и  выбирать.Каждый волен ошибаться в пределах своего разума и кошелька. Один вон товарищ(вкупе с единомышленниками) видя глазами сразу слышит как  поганит звук в колонках - 8см "неправильного" провода добавленного к 4метрам феншуйного.(но при этом не может сказать на какой аппаратуре он это услышал) Другой с трепетом подходит к выбору правильного(аудиофильского) предохранителя за 20-50$. Третий захлёбываясь соплями от восторга,вещает на весь инет-как он заменив в кампутерных коробусках "неправильный" конденсатор на волшебный Мундофф получил звук на уровне АС за тыщы баксов. Четвёртый ставит удава( сетевой провод ) толщиной в руку и громко вопит как изменился\стал волшебным звук - при этом ни мало не смущаясь,что до совдеповской розетки идёт совдеповский ляминь 2.5 кв.мм И.Т.Д. ----------------------- В спорах рождается истина. Я высказал своё мнение и если оно не укладывается в ваше видение\ концепцию (понимания и выбора) - ну... извиняйте
    • Нет такого мнения. За спрос денег не берут. А уж отвечать или не отвечать личная воля каждого. Ага, там петлевое усиление ОУ плюс двухкаскадный УН. Успокоить все это дело не так просто. Звенит при малейшей неточности.  Единственное "достоинство", что с током покоя заморачиватся не нужно. Особенно если конструктивно еще и термостабилизация тока покоя УН предусмотрена.
    • Да,  судя по подготовке специалистов до наноэлектроники нам, как до Владивостока раком.