George!
Свой-
Постов
28 -
Зарегистрирован
-
Посещение
-
Нашел в интерете документацию по работе ICD2 с некоторыми контроллерами. В ней сказано: Т.е. ошибка из-за того, что вместо своего идентификатора микроконтроллер PIC16F628A выдает идентификатор для PIC16F648A. Решение проблемы - игнорировать или отключить это сообщение об ошибке.
-
Я правильно понял что в режиме программатора ICD2 работает безошибочно, а в режиме отладчика выдает ошибку "Invalid target device id"?
-
Условие if(RCIF) правильное. Прерывания запрещены? Может ты не попадаешь в блок if(RCIF){...} потому что программа блуждает где-то в прерываниях? Попробуй вводить данные другим способом. Debuger->Stimulus->New Workbook Появится окно. Там выбери закладкуAsynch. В ячейке под Pin/SFR выбери из списка RCREG. В Action установи Direct Message. Commen/Message - произвольноя строка. Чтоб запустить передачу этой строки надо нажать на символ ">" в столбце Fire
-
Прерывания на PIC16F628
George! ответил Balaganoff тема в PIC
Прерывание генерируется если INTF && INTE && GIE = 1. в случе а и б флаг INTF регистра INTCON поднимается в 1, а GIE равен 0. Т.е. условие не выполняется. После установки бита GIE в 1 прерывание должно возникнуть, независимо от логического уровня на порту RB0/INT. Скорее всего где-то в программе чистится бит INTF до того как GIE устанавливается в 1. -
Если можно добавить код на си то наверно лучше сделать примерно так: Скачать майкрочиповский C18, можно демо версию. unsigned long dividend32; unsigned short long dividend24; //unsigned short long объявляет беззнаковую переменную длинной 24 бита unsigned int divisor16; unsigned long res32; unsigned short long res24; res32 = dividend32/divisor16; res24 = dividend24/divisor16;
-
Если используешь кварц, проверь что он работает.
-
Если посмотреть внимательно то можно заметить, что каждая библиотечная функция в стандартной библиотеке написана в отдельном файле. Это означает что у каждой функции свой объектный файл. Множество таких объектников объеденены в библиотеку. Во время линковки, линковщик ищет среди всех библиотек и по всем объектным файлам содержащихся в них на предмет какой-нибудь переменной или функции, и нужный объектник прикрепляет к проекту. Вот поэтому, стандартные библиотеки не добавляют лишних функций. Линковщик добавил, например, объектник с функцией memcpy. А в этом объектнике ничего кроме memcpy и нет. Если в файле объявлено несколько функций, в код добавятся все. Наколько знаю, все функции объявленные в файле, который прикреплен к проекту, попадут в конечный код. Это связано с тем, что в командную строку линковщика они попадают как объектники. Например: link main.o leds.o ADC.o RTC.o В таком случае линковщик не думает, нужно ли это или нет, а просто добавляет в конечный код.
-
Качай 7.62. Не знаю где они здесь эти особенные глюки. Я особых отличий не вижу. Но зато там добавили автозавершение кода. Вот оно, как раз, еще очень сырое. Но дареному коню.... В конце концов, по умолчанию оно вообще выключено. Вот так.
-
На вскидку. SPI: память. I2C: память, RTC и расширитель интерфейса (порты в/в)
-
Я думаю вы зря все так усложняете. У нас схемы где SPI и I2C на одном MSSP сидят уже несколько лет используются. Никаких проблем не возникает. Вот здесь подобное обсуждалось microchip.ru, правда тоже к результату не пришли.
-
Модули ZigBee от MaxStream
George! ответил at90 тема в RF & Microwave Design
Спасибо. Я просто не до конца был уверен что это весь список... -
Модули ZigBee от MaxStream
George! ответил at90 тема в RF & Microwave Design
Прошло больше года с момента написания последнего поста. Но есть один вопрос который не дает мне покоя. Кто нибудь знает где достать полный список API функций для XBee? -
Подозреваю что раз ты вручную вводил биты конфигурации, у тебя есть в коде что то вроде этого #pragma config DEBUG = OFF #pragma config LVP = ON Первая запись - озночает "отключить режим внутрисхемной отладки", без которой отлаживаться в ICD2 невозможно. Вторая - разрешить низковольтовое програмирование. Также внутрисхемная отладка невозможна если 1) Включен WDT 2) Включен LVP 3) Включен BOR Но если ты пытаешься записать в м/к программу используя отладочный режим (Debuger->Select Tool-> MPLAB ICD2) то на эти биты должны появляься сообщения, типа "Режим отладки невозможен если бит такойто стоит/отключен". Если они не появляются посмотри здесь: Debuger->Settings вкладка Warnings. И поставь там везьде галки. Надеюсь поможет
-
У меня версия MPLAB 7.50. Watch представляет собой таблицу. Одна из строк (самая последня) пустая. Таким образом можно добавлять переменные не через Add Symbol, а папрямую забив адрес (Address) или название переменной (Simbol Name) в пустой строке. Так вот, если добавить переменную *filename вышеуказанным способом, то ты увидешь значение самой filename.
-
Лазерный дальномер с интерфейсом
George! опубликовал тема в Метрология, датчики, измерительная техника
Собственно сам сабж стоит от 44 до 55 тыс. рублей например DIMETIX DLS-B. Но это слишком дорого -- не сильно отличающиеся по хар-ам mettro CONDTROL 50 Pro, Leica DISTO™ A2, Leica DISTO™ A3 стоят на много дешевле, до 10 тыс. рублей. Нужно разобрать дешевый прибор и научиться с ним разговаривать. Никто не слышал о подобном?