Views: 7145
На заметку разработчику…
Простая функция
// преобразование двоично-десятичного в двоичное 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 после этого пропарсит проект и неоправданные ошибки пропадут:
Это может быть интересно
- 12-BIT A/D CONVERTER WITH THRESHOLD DETECT на примере PIC24FJ128GA204Views: 825 Введение. 12-битный модуль A/D Converter является усовершенствованной версией 10-битного модуля, предлагаемого на некоторых устройствах PIC24. Оба модуля являются преобразователями, в своих ядрах, с последовательным приближением (SAR), в окружении …
- Цифровой спидометр для автомобиляViews: 10153 Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например, для …
- Сумеречное релеViews: 1447 Реле управления освещением, датчик день-ночь – одним словом фотореле для управления освещением или формирования сигнала для системы умный дом о понижении или повышении освещенности относительно заданного уровня. Реле выполнено по классической схеме, конденсаторный блок питания, от сети переменного тока …
- Простой цифровой вольтметр ch-c3200Views: 2506 В этой статье рассмотрен пример создания простого вольтметра постоянного тока на основе печатной платы ch-c0030pcb, а при возможности использования внешнего делителя и вольтметр переменного тока. Дан краткий принцип …
- Проект с использованием MCC часть 15Views: 1516 EUSART – Универсальный асинхронный приёмопередатчик (УАПП, англ. Universal Asynchronous Receiver-Transmitter, UART) — узел вычислительных устройств, предназначенный для организации связи с другими цифровыми устройствами. … читать на вики. Внесем изменения в нашу схему, …
- MCC PIC24 – модуль REAL-TIME CLOCK AND CALENDAR (RTCC)Views: 473 RTCC предоставляет пользователю часы реального времени и функция календаря (RTCC), точность “хода” может быть откалибрована. Основные особенности модуля RTCC: • Работает в режиме глубокого сна. • Возможность выбора источника …
- PIC18 – System ArbitrationViews: 566 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …
- My libraries for Altium DesignerViews: 3907 Attention, this version of the database is outdated today. See updates in articles https://catcatcat.d-lan.dp.ua/altium-designer-my-setup-system-and-project-structure and https://catcatcat.d-lan.dp.ua/altium-designer-my-setup-system-and-project-structure-v23-2/ My libraries for Altium designer (Updated V – 29/05/2022) (c) 2021 …
- Одноканальный емкостной сенсор – AT42QT1012Views: 2331 Описание сенсора [wpdm_file id=242] Незаконченный проект, так-как сенсор не оправдал своего назначения, не рекомендую, просто выброшенные деньги. Особенности. • Количество сенсоров – один, режим переключения ( touch-on/touch-off ), а также программируемая …
- Проект с использованием MCC часть 16Views: 1080 Продолжим изучение EUSART. На этом этапе отработает передачи данных с ПК и получения эха. Для этого в основной цикл программы добавим код if(EUSART_DataReady) // проверим флаг готовности данных …