Jump to content

    

*rust*

Участник
  • Content Count

    108
  • Joined

  • Last visited

Community Reputation

0 Обычный

About *rust*

  • Rank
    Частый гость

Recent Profile Visitors

831 profile views
  1. Отлично. Какаю тогда библиотеку нужно подключать, из числа перечисленных? Как я понял, чтобы использовать библиотеку функций для периферии нужно не только подключать ашник, но и указывать библиотеку в настройках MPLABа.
  2. Кто-нибудь вообще MPLABX использует?
  3. Добрый день. Кристалл: PIC18F6722. Среда: MPLAB X Есть компилятор XC8 редакции 1.30, в котором приложена библиотека функций для работы с периферией. Вопрос: Каким образом выбирается нужная библиотека, если их там 5? pic18-profile-00.lib pic18-profile-0d.lib pic18-profile-f0.lib pic18-profile-fd.lib pic18-trace-obj.lib
  4. UART

    Я надеюсь Вы понимаете, что для того чтобы связать ваш микроконтроллер с компьютером посредством последовательного порта Вам необходимо: 1. Преобразователь UART-RS232. 2. Настроить порт компьютера (скорость, кол-во бит данных, четность, стоповые биты) 3. Все правильно распаять, чтобы TX от компьютера попал на RX микроконтроллера через преобразователь, и наоборот. Вот пример кода от TI для микроконтроллера. Все что микроконтроллер примет по UART, то и отправит назад. Думаю, проще нет. //****************************************************************************** // MSP-FET430P140 Demo - USART1, Ultra-Low Pwr UART 9600 Echo ISR, 32kHz ACLK // // Description: Echo a received character, RX ISR used. Normal mode is LPM3, // USART1 RX interrupt triggers TX Echo. // ACLK = UCLK1 = LFXT1 = 32768, MCLK = SMCLK = DCO~ 800k // Baud rate divider with 32768hz XTAL @9600 = 32768Hz/9600 = 3.41 (0003h 4Ah ) // //* An external watch crystal is required on XIN XOUT for ACLK *// // // // MSP430F149 // ----------------- // /|\| XIN|- // | | | 32kHz // --|RST XOUT|- // | | // | P3.6|-----------> // | | 9600 - 8N1 // | P3.7|<----------- // // // M. Buccini // Texas Instruments Inc. // Feb 2005 // Built with CCE Version: 3.2.0 and IAR Embedded Workbench Version: 3.21A //****************************************************************************** #include <msp430x14x.h> void main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT P3SEL |= 0xC0; // P3.6,7 = USART1 TXD/RXD ME2 |= UTXE1 + URXE1; // Enable USART1 TXD/RXD UCTL1 |= CHAR; // 8-bit character UTCTL1 |= SSEL0; // UCLK = ACLK UBR01 = 0x03; // 32k/9600 - 3.41 UBR11 = 0x00; // UMCTL1 = 0x4A; // Modulation UCTL1 &= ~SWRST; // Initialize USART state machine IE2 |= URXIE1; // Enable USART1 RX interrupt _BIS_SR(LPM3_bits + GIE); // Enter LPM3 w/ interrupt } #pragma vector=USART1RX_VECTOR __interrupt void usart1_rx (void) { while (!(IFG2 & UTXIFG1)); // USART1 TX buffer ready? TXBUF1 = RXBUF1; // RXBUF1 to TXBUF1 } Все что Вам нужно сделать - это подключить заголовочный файл своего микроконтроллера и проверить ноги и регистры UART на соответствие.
  5. UART

    MSP430x13x, MSP430F14x, MSP430F15x, MSP430F16x Code Examples <--примеры. В архиве три папки, одна из которых называется "С". Там то, что Вас интересует. Здесь Вам UART никто объяснять не будет, его нужно знать, тем более, что в нем нет ничего сложного.
  6. MSP430F5529

    Спасибо за столь развернутый ответ!
  7. MSP430F5529

    Добрый день! Проц:MSP430F5529 Извините за столь ламерский вопрос. Какую максимальную частоту можно использовать для периферии если источником тактирования является PLL? Известно, что максимальная рабочая частота самого ядра 25МГц. Но с помощью DCO можно получить max - 135МГц. (стр 58 SLAS590E). Где и как можно применить такую частоту? Знаю, что для USB применяется 48Мгц, но что можно тактировать 135Мгц - не знаю. Просьба в ответах использовать ссылки на официальную документацию с номером документа и страницы.
  8. AT91SAM9263 и I2C

    Полностью разделяю точку зрения aaarrr. Могу конкретно сказать за Sam3, TWI в слейве не работает. Обращался к инженерам в ATMEL, указал на проблемы и ошибки в даташите. Инженер признал и то и другое. Ошибки в шите исправили, а как заставить TWI работать не сообщили. Несколько раз писал им, чтобы про меня не забыли, на последнее мое письмо ответили, что типа как только решим проблему сообщим, но воз и ныне там. Регистр флагов TWI это что-то вообще невообразимое! Я так и не смог осознать по каким законам он живет. Заставил работать только когда определил точки сбоя и путем сброса и конфигурирования TWI восстанавливал работу. sashad, если еще есть необходимость могу сбросить код.
  9. Эх... преобразование типов! Да, помогло, спасибо! :a14: :bb-offtopic:
  10. Добрый день! unsigned long total = 0; //32bit unsigned int part1 = 0xAABB; //16bit unsigned int part2 = 0xCCDD; //16bit total = ((part1 << 16) + part2); Результат получается total = 0x0000CCDD; При компиляции выдает сообщение, что слишком большой сдвиг. Если вместо 16 поставить 8, все нормально. Почему не выходит сдвинуть больше 8-ми разрядов?
  11. MSP-FET430UIF

    Это смахивает на роковое стечение обстоятельств! Я поменял USB-шный кабель и все заработало. Хотя, тот же кабель на принтере работает. Думаю, все дело в допусках и посадках разъемов.
  12. MSP-FET430UIF

    Подождал пока MSP-FET430UIF включился и попробовал обновить firmware через IAR, после старта обновления опять замигали диоды, далее окно ошибки. Скачал программатор Elporotronic, попытался через него - не получилось как и в случае с IAR все закончилось на стадии Initializing Bootloader, хотя светодиоды один раз дернулись и далее стал гореть один зеленый. После выхода из Elporotronic оба диода горят. Да не получается даже софт загрузить. Диоды мигают постоянно, иногда перестают это делать, но если выключить включить опять. Когда диоды мигают IAR с отладчиком не работает, окно ошибки выкидывает. Сейчас каким то чудом обновил firmware до 2.4.8.2 через программатор Elporotronic. Проблема осталась, после включения постоянно мигают диоды. Это случаем не аппаратная проблема, на ветке читал, что EEPROM может не читаться?
  13. MSP-FET430UIF

    Добрый день! Отлаживался в IAR. Вдруг, среда наглухо зависла, реакции ноль, немного подождал далее "Завершить процесс" и то с большим трудом IAR закрылся. Такое иногда бывало приходилось выключать MSP-FET430UIF и перегружать IAR. В этот раз вытащил\воткнул USB в дебагер, а он начал циклично мигать диодами, как будто после старта сразу RESET (3раза красный, один зеленый). Реакции на какие либо действия - ноль. Потом сам по себе разблымался, загорелся один зеленый светодиод и вроде бы начал работать. Вот теперь опять включаю его и диоды замигали. V1.4a на самом MSP-FET430UIF hil.dll v.1.2.6.0 msp430.dll v.2.4.4.0 Что это и как привести в рабочее состояние?
  14. MSP-EXP430F5529

    Я так и понял. Спасибо за содействие! Теперь все более менее уложилось.
  15. По задержкам. Я перепробовал огромное количество карточек, вывод один - задержки есть у всех. У некоторых они чаще и дольше, а у некоторых реже и меньше соответственно. Остановился на Transcend, тестил как SDHC так и microSDHC, все не ниже 6 класса и ведут себя примерно одинаково. Я раньше об этом уже писал, что задержек намного меньше если тестируешь новую неписанную карту. Объяснение этому есть, не буду тут его приводить, эту информацию и так можно найти. Остановлюсь конкретно на вопросе как приводить карту к первоначальному состоянию. Путем многочисленных экспериментов, после каждого использования карты, линейной записи до конца (благо проект это позволяет), выяснил, что достаточно отформатировать карту спец. программкой от Transcend. Все, карта как новая. В моем случае вероятность появления задержек, которые приводят к ошибкам снизилась в пять раз, но не принимайте это за панацею. Т.к в моем проекте также есть небольшая буферизация данных на случай задержек. Советую почитать How to Use MMC/SDC и особенно обратить внимание на Optimization of Write Performance. Программа для форматирования от Transcend AutoFormat_1_.zip