-
Постов
641 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные KARLSON
-
-
-
снимите галочку run to main
Использование runtime control modules с IO emulation
Это где всё находиться?
Вообще да, когда 2 точки останова находятся, то это и происходит. Приходится перед перезапуском или перепрошивкой убирать их.
-
f0GgY спасибо большое.
Действительно, да же по слову Autocad находиться ветка в поиске. Что то не подумал, что проблема у многих была.
-
Ясно. Спасибо. Буду значит чертить в другой программе.
-
-
Здравствуйте. Сделал PCB файл. Хотел сделать чертежи платы, но при импорте в автокаде файла DXF сказал, что испорченный или неполный файл. Раньше с другими платами было всё нормально, а тут что-то мешает. Помогите разобраться.
-
Опубликовано · Изменено пользователем KARLSON · Пожаловаться
Здравствуйте. У меня не ошибка, просто давно мучает один момент. При отладке бывают случаи когда программатор работает на медленной частоте, видно как красный светодиод моргает (примерно 10 Гц). Например когда перепрошиваю программу с установленной точкой останова (вываливается окно, что то про точку останова и я нажимаю Execute (картинку прикрепил)). И бывает когда в IAR нажимаю на какую-нибудь кнопку Step (со стрелочками) в режиме отладки.
Зачем он уменьшает частоту работы?
И можно ли это ускорить?
-
Действительно, проблема со скоростью была. Ни знаю точные цифры частот в контроллере, но при настройке по умолчанию 19200 не совпадали. Стал варьировать (осциллографа то нет)))) в сторону увеличения и ПОПАЛ :08: :disco: . с контроллером согласовал отладочную плату EVB с помощью микросхемы ADM3202. На компе 2 сом порта (один через переходник USB) и от проводов RXD и TXD припаял отводы на 2 ногу ком порта. И так вот наблюдал))))
-
И писать во флешь через специальные команды: Раздел 7 Flash Memory Controller из книги MSP430x2xx _User Guide.
-
Со скоростями поэкспериментирую.
Инверсии как электрически, а уж тем более программно нет.
И куда мы без общего провода-то)))
-
тогда непонятно это: Пробовал из терминала печатать в контроллер, то тут всё правильно и символы совпадают
-
Здравствуйте. Скажите, а в какой кодировке пишет в терминал модуль sim900b. Думал что в ASCI, но не совпадает.
дело ввот в чём: модуль подключил к контроллеру, по уарту читаю модуль и одновременно подал сигнал на терминал компа, Нва компе вижу правильные символы, например RDY(в терминале), а в контроллере 0x21 0x45 0x65 (что по таблице получается !Ee). Пробовал из терминала печатать в контроллер, то тут всё правильно и символы совпадают, Скажите пожалуйста в чём причина?
-
Очень хорошо. Я обрадован, что остаётся DTFM. Когда срок выхода в рынок?
-
Что-то я совсем не пойму. Прерывание по порту P1, а обрабатываете шестой. Во-вторых, как оно вообще срабатывает? Где строчка разрешения прерывания от изменения порта 1: P1IE = (биты такие-то). Если она где-то стоит, так после обработки прерывания обнулите значение: P1IE = 0(или обнулите тот бит, по которому прерывания не нужны).
-
От 220 и так и так хорошо взрывается)))) В разумных пределах должна выдержать. А что? Диод поставить очень накладно?
-
что означает не запускается?
На выходе портов у Вас что? Осциллограф? Светодиоды?
Код компилируется? По мне так надо int main(void) заменить на void main(void).
В коде вроде проблем нет, кроме int.
Через что программируете?
Пошагово запускать программу пробовали?
-
Опубликовано · Изменено пользователем KARLSON · Пожаловаться
Прибор не может мне ответить той же самой командой.Может.
Некоторые контроллеры интерфейса (например MCP2515) имеют режим проверки линии. Вы получаете эхо. Если у вас какой-то адаптер специальный готовый купленный, то может у него включено эхо по умолчанию. Хотя, если подумать логически, он не нужен при работе, т.к. можно прочитать некоторый регистр, у которого биты означают те или иные ошибки.
Кстати, про маски: если маски и фильтры приёмного и передающего буферов настроены одинаково, то принимать эхо вы так же будете.
Прибор то какой? Может это анализатор CAN? Так он Вам всё покажет что на шине происходит в не зависимости, Вы послали или нет.
-
Опубликовано · Изменено пользователем KARLSON · Пожаловаться
Здравствуйте. Скажите пожалуйста, MT-LINK v8 с какими фирмами производителями контроллеров ARM он работает. Хотелось бы работать с STM32......, LPC.... и LM3S.... на одном отладчике.
-
Всё. Исправил ситуацию. Ошибка в монтаже приёмника. RX0BF и RX1BF выводы были перепутаны местами.
И другим примечание.
Если требуется принимать сообщения только с одним идентификатором, настраиваете фильтр 0 (RXF0) и маску 0 (RXM0) на нужный идентификатор, а фильтр1 (RXF1) и маску 1 (RXM1) на FF FF FF FF, что бы буфер RXB1 не работал. Если RXB1 не настроить, то он всё подряд будет принимать. Зачем лишние действия контроллеру)).
-
Опубликовано · Изменено пользователем KARLSON · Пожаловаться
И есть ещё такое поведение:
Адрес сообщения 00 FF 10 00
Так вот, Если фильтр RX0 настроить на этот адрес, то не принимает, а если отличный любой другой ,то принимает сообщения.
Маска RXM0 FF FF FF FF
-
Здравствуйте. Что бы тем не плодить, напишу здесь. Я думаю в тему будет.
Так вот. Пытаюсь справиться с принятием сообщений.
Непонятно, каким то образом, регистр RXB0CTRL изменяет свои биты, конкретно биты RXM1 и BUKT.
В программе он конфигурируется только один раз в режиме конфигурации и принимает только значение RXM1 = 1 (принятие расширенных сообщений, ), BUK = 0 (Запись сообщения из RXB0 в RXB1 запрещена).
Работает система так: устройство на шине посылает 8 сообщений с идентификатором 00 FF10 00.
Моё устройство (которое не так работает) имеет 8 раз дёргает ногу RX0BF (которая настроена на опускание при принятии правильного сообщения в RXB0). Читаю RXB0 и RXB1 и смотрю: Данные с адресом лежат в RXB1. Регистр RXB0CTRL = 0.
И вот как он это делает ума не приложу.
Посоветуйте, куда копать.
-
Без кода инициализации, что у Вас сейчас, вряд ли поможем.
-
Я так и думал. Спасибо.
Так как у меня дальний вход это A7, то создавать из-за этого структуру с 8 2-х байтных переменных, это просто так не использовать 12 байт и так малой оперативки.
-
Здравствуйте. Предлагаю сюда вносить все вопросы связанные с АЦП10 2-го семейства.
У меня вопрос такой.
Надо оцифровывать 2 канала P3.0 (A5) и P3.7(A7).
Хочу за одно вздёргивание бита ADC10SC получить 2 измерения. И что бы эти измерения скопировались в структуру АВ с помощью DTC.
#include "msp430x21x2.h" struct _AB { unsigned int A2; unsigned int A1; unsigned int A0; }AB; void Pause (unsigned int time) { while (time-- > 0);} void main( void ) { // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; P2SEL = BIT6 + BIT7; // сброс флага "сбой генератора" и запрет прер-ия OFIE при не исправ-ти DC-генератора IE1 &= ~OFIE; IFG1 &= ~OFIFG; // предустановка желаемой частоты DCOCLK = 8MГц _BIC_SR(OSCOFF); // включить генератор LFXT1 DCOCTL = CALDCO_8MHZ; BCSCTL1 = CALBC1_8MHZ; BCSCTL1 |= XT2OFF + XTS + DIVA_0; // источник такт-ия MCLK и SMCLK - DCOCLK, MCLK = DCOCTL/1, SMCLK = DCOCTL/1 BCSCTL3 = LFXT1S_2; // инициализация LFXT1 do { IFG1 &= ~OFIFG; Pause(5000); }while (IFG1 & OFIFG); BCSCTL2 = SELM_3 //SELM_0 (0x00) /* MCLK Source Select 0: DCOCLK */ +DIVM_0 +DIVS_3; ADC10CTL1 =// INCH_5 + INCH_7 /// + ADC10DIV_7 + ADC10SSEL_2 // MCLK = 8МГц + CONSEQ_1 ; ADC10CTL0 |= ADC10SHT_3 // + MSC + ADC10ON; ADC10AE0 = BIT7 + BIT5 ; ADC10DTC0 |= ADC10CT; ADC10DTC1 = 2; ADC10SA = (unsigned int ) &AB.A2; ADC10CTL0 |= ENC; while (1) { ADC10CTL0 &= ~ENC; while (BUSY & ADC10CTL1); ADC10CTL0 |= ENC + ADC10SC; // Start sampling _NOP(); } }
Но ничего не выходит. Измерения смотрю в Watch.
Измерять один канал у меня получается. Но не переконфигурировать же мне постоянно модуль.
Посоветуйте как его настроить?
UART-->RS232-->USB
в RS232/LPT/USB/PCMCIA/FireWire
Опубликовано · Пожаловаться
Скорости обмена у Вас разные, на какую то малую долю.