Интересные функции и решения

Views: 7258


На заметку разработчику…


Простая функция

// преобразование двоично-десятичного в двоичное
char decbin_bin (char data)
{
char a;
a=data>>4;
a=a*10;
data=data&0b00001111;
data+=a;
return data;
}

Микроконтроллер  PIC18F46K22 модуль eusart2 иногда возникала ситуация, когда не возможно стандартной процедурой сбросить бит переполнения

    if(RC2STAbits.OERR) // проверка переполения
    {
        // EUSART1 error - restart
        RC2STAbits.CREN = 0;    // выключить и включить модуль
        RC2STAbits.CREN = 1;    //
    }

Сброс работал стабильно на 100% когда выполнялась процедура

/* устраняет OERR: Ошибка переполнения если остановился приемник
   в 46к22 востановление возможно на 100% выключением модуля     */    
    RC2STAbits.SPEN = 0;
    RC2STAbits.SPEN = 1;
    ukaz = RC2REG;
    RC2STAbits.CREN = 0; // выключить и включить модуль
    RC2STAbits.CREN = 1;

XC16

Если IDE показывает ошибку типа Неопределенный идентификатор!

Подчеркивает макросы и регистры, но при этом компилятор, ошибок при компиляции не находит, то это значит сам IDE не может определить место где искать описание вашего контроллера.

Исправить это можно указать в настройках. где конкретно они расположены. У меня, на текущий момент, это версия компилятора 1.41

И путь к файлам описания выглядел так

 

C:\Program Files (x86)\Microchip\xc16\v1.41\support\PIC24F\h

Для этого откройте свойства проекта:

Зайдите в предпроцессор и сообщения:

Откройте Си каталоги вложения:

Нажмите кнопку браузер и добавьте путь к папке описания:

 

 

ok, ok – IDE после этого пропарсит проект и неоправданные ошибки пропадут:

 


Это может быть интересно

  • Проект с использованием MCC часть 07Проект с использованием MCC часть 07
    Views: 1152 Модуль PWM – широтно импульсная модуляция (ШИМ). ПИК контроллеры часто на борту имеют модули ШИМ. На их основе строятся многие узлы управления электро приводами. В нашем варианте мы …
  • Arduino LCD + STONE STVI056WT-01 + Strain gaugeArduino LCD + STONE STVI056WT-01 + Strain gauge
    Views: 585 Author li grey email: greyli1987@outlook.com The strain assessment instrument is used to assess the degree of corresponding muscle strain by obtaining the muscle surface action potential through silver …
  • Проект с использованием MCC часть 02Проект с использованием MCC часть 02
    Views: 2409 Когда мы запустили конфигуратор, самое главное понять, что с этим делать и как проверить, то что мы делаем работает или нет. Для начала настроим регистры конфигурации микроконтроллера и настроем …
  • Analog-to-Digital Converter with Computation Technical BriefAnalog-to-Digital Converter with Computation Technical Brief
    Views: 1404 Аналого-цифровой преобразователь с вычислительным модулем. ВВЕДЕНИЕ Аналого-цифровой преобразователь (ADC) с вычислительным модулем (ADC2) в 8-разрядном микроконтроллере Microchip имеет встроенные вычислительные функции, которые обеспечивают функции пост-обработки, такие как передискретизация, …
  • Проблемы классической светомузыкиПроблемы классической светомузыки
    Views: 2150 Светомузыка – что это такое? Определение: Светомузыка  (жаргонное: цветомузыка)  — вид искусства, основанный на способности человека ассоциировать звуковые ощущения со световыми восприятиями. Такое явление в неврологии получило название …
  • PIC32MZ – Core Timer (библиотека)PIC32MZ – Core Timer (библиотека)
    Views: 560 Переработанные файлы от Microchip, библиотека для работы с Core Timer.
  • Гаджеты для домашней автоматики – Емкостной сенсорГаджеты для домашней автоматики – Емкостной сенсор
    Views: 1784 Управление светодиодным освещением – Сенсор емкостной. Данный гаджет предназначен для управления освещением где необходимо включением освещение сенсорным прикосновением. Датчик позволяет управлять светодиодной нагрузкой в виде модулей или светодиодных лент …
  • LCD индикаторы на драйвере ML1001LCD индикаторы на драйвере ML1001
    Views: 1973  ML1001 – статический LCD GOG (чип в стекле) драйвер для 40-сегментного LCD в позолоченном противоударном исполнении. На них можно каскадно строить цельные из 80 или 120 сегментов LCD индикаторы. …
  • Система AT команд версии V2.0 для ESP8266 и ESP32Система AT команд версии V2.0 для ESP8266 и ESP32
    Views: 13421 Появление нового модуля на базе ESP32 заставило систематизировать систему AT команд, а так же систему обновления и для модулей на базе ESP8266. Начиная с версии v2.0 в ESP8266 …
  • Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)
    Views: 3393 Солнечные коллекторы для отопления в Европе используют в более 50% от общего количества установленных гелиосистем. Однако следует понимать, что гелиосистемы предназначены лишь для поддержки отопления и экономии затрат на основную …


Поделись этим!