Простая функция
1 2 3 4 5 6 7 8 9 10 |
// преобразование двоично-десятичного в двоичное char decbin_bin (char data) { char a; a=data>>4; a=a*10; data=data&0b00001111; data+=a; return data; } |
Микроконтроллер PIC18F46K22 модуль eusart2 иногда возникала ситуация, когда не возможно стандартной процедурой сбросить бит переполнения
1 2 3 4 5 6 |
if(RC2STAbits.OERR) // проверка переполения { // EUSART1 error - restart RC2STAbits.CREN = 0; // выключить и включить модуль RC2STAbits.CREN = 1; // } |
Сброс работал стабильно на 100% когда выполнялась процедура
1 2 3 4 5 6 7 |
/* устраняет 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 после этого пропарсит проект и неоправданные ошибки пропадут:
Это может быть интересно
PIC18F25K42 – v. A001 – выявленные баги.
Модуль I2C Не работает при использовании в стандартной конфигурации MCC. Требует особой нестандартной конфигурации и управления для нормальной работы. Обойти Обход проблемы возможен библиотека см статью. Модуль ADC2 На выводе RA0, …DIXELL XWEB500D-EVO + RUT900 или как пробить NAT-сервер
Когда необходимо под какой нибудь контроллер имеющий вэб сервер в инет, то нужен статический IP, что оказалось проблемой при работе с операторами сотовых сетей, конкретно с оператором сети “Киевстар”. Их …VU Meter Tower ART – part 2
Проект – VU Meter Tower ART получил продолжение в своем развитии. Теперь можно заказать набор деталей из акрила для самостоятельной сборки. В проект корпуса внесено целый ряд доработок, позволяющие улучшить …JDY-62A Audio bluetooth module
Простой модуль для простого аудио блютуса. размеры схема подключения Встроенные подсказки на английском языке. Модуль включен, режим муте – после подачи питания. Контроль разряда батареи предупреждение что батарея разряжена …CAN – Controller Area Network
Controller Area Network (CAN) первоначально был создан немецким поставщиком автомобильных систем Робертом Бош в середины 1980-х для автомобильной промышленности как метод для обеспечения возможности надежной последовательной связи. Целью было сделать автомобили более надежными, безопасными и …WiFi ESP8266 – AT команды связанные с функцией TCP/IP (v.1.6.1)
AT команды связанные с функцией TCP/IP В этом разделе описаны команды которые позволяют устанавливать соединения между серверами и клиентами в сети. Приведено описание команд и примеры их выполнения. Функции TCP/IP …Проект с использованием MCC часть 03
Первым делом перенастроим регистры конфигурации, следующим образом: Отключим выход генератора (CLKOUT function is disabled. I/O function on the CLKOUT pin) Включим сторожевой таймер (WDT enabled) После этой настройки мы должны …Датчик приближения от Румена Желева
Проект на Болгарском языке. Автор Румен Желев. Болгария. Проект, датчик приближения в котором устранены все недостатки влияния засветки посторонними источниками. Применен совершенно оригинальный принцип контроля ИК излучения. Основната идея на …MPLAB® Code Configurator and Encoder
Еще раз про энкодер… Для некоторых приложений очень удобно и экономически выгодно, для настройки и управления использовать энкодер. Такие энкодеры имеют строенную тактовую кнопку которую можно применить для выбора режимов работы …Проект с использованием MCC часть 14
С выводом данных на дисплей мы справились (но могу сразу сказать библиотеку графики к этой статьи пришлось доработать, поэтому в этом проекте она обновлена). У нас на текущем этапе имеется …
В записи нет меток.