|
Кто виноват и что делать?, BlueLab и Blutooth модуль Mitsumi WML-C40NH |
|
|
|
Oct 20 2006, 13:24
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
Добрый день. У меня есть плата с Bluetooth модулем от Mitsumi WML-C40 со встроенным UARTом. В ПК торчит другой Bluetooth. Для отладки подключаю WML к компу через встроенный в нем UART и посылаю в него через терминал цепочку символов.WML принимает данные и автоматически отправляет их в Bluetooth ПК.На другом терминале смотрю,что принял Bluetooth ПК и ... НЕ доходят несколько начальных символов цепочки!!! А остальное отображается как надо. ПК терминал1 -> WML UART_RX -> WML Bluetooth -> ПК Bluetooth -> ПК терминал2 - теряет символы ПК терминал2 -> ПК Bluetooth -> WML Bluetooth -> WML UART_TX -> ПК терминал1 - не теряет символы Как я понимаю, вот так должно работать Код (void) StreamConnect(StreamUartSource(), ((SPP_CONNECT_CFM_T*)message)->sink); (void) StreamConnect(StreamSourceFromSink(((SPP_CONNECT_CFM_T*)message)->sink), StreamUartSink()); Но не работает! Так в чем может быть дело? Кто нибудь сталкивался с такой проблемой? Это баг BlueLab или всё же что-то с WML-C40? Или я что-то не дописал? Заранее благодарю за любые идеи и помощь.
|
|
|
|
|
Oct 27 2006, 14:26
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
Ура-а-а! Победа! Всему виной 2 бага: 1. В BlueLab 3.2 B-11639 When using the raw transport, it was possible for a burst of data arriving on the UART to be ignored if it had a particular timing and no further data was ever received. This no longer occurs. Поставил BlueLab 3.5.2 2. Я пользовался терминалом TereTerm. Он теряет символы. Виндовским терминалом всё без проблем. Так что вопрос закрыт
|
|
|
|
|
Oct 31 2006, 05:47
|
Участник

Группа: Свой
Сообщений: 19
Регистрация: 20-12-05
Из: Обнинск
Пользователь №: 12 442

|
Цитата(LessNik @ Oct 27 2006, 17:26)  Ура-а-а! Победа! Всему виной 2 бага: 1. В BlueLab 3.2 B-11639 When using the raw transport, it was possible for a burst of data arriving on the UART to be ignored if it had a particular timing and no further data was ever received. This no longer occurs. Поставил BlueLab 3.5.2 2. Я пользовался терминалом TereTerm. Он теряет символы. Виндовским терминалом всё без проблем. Так что вопрос закрыт Приветствую! Реализовал SPP на BlueLab 2.8 шил WML-20 а потом WML-30 все нормально, сейчас привезли WML-40 и вот он отказывается шиться blueflash'ом. Может кто знает в чем дело ?
|
|
|
|
|
Oct 31 2006, 09:07
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
Цитата(_Bob_ @ Oct 31 2006, 08:47)  Цитата(LessNik @ Oct 27 2006, 17:26)  Ура-а-а! Победа! Всему виной 2 бага: 1. В BlueLab 3.2 B-11639 When using the raw transport, it was possible for a burst of data arriving on the UART to be ignored if it had a particular timing and no further data was ever received. This no longer occurs. Поставил BlueLab 3.5.2 2. Я пользовался терминалом TereTerm. Он теряет символы. Виндовским терминалом всё без проблем. Так что вопрос закрыт Приветствую! Реализовал SPP на BlueLab 2.8 шил WML-20 а потом WML-30 все нормально, сейчас привезли WML-40 и вот он отказывается шиться blueflash'ом. Может кто знает в чем дело ? Reset там вообще не нужен, оторви от шлейфа его
|
|
|
|
|
Nov 1 2006, 08:33
|
Участник

Группа: Свой
Сообщений: 19
Регистрация: 20-12-05
Из: Обнинск
Пользователь №: 12 442

|
Цитата Reset там вообще не нужен, оторви от шлейфа его  Т.е. дело не в BlueLab'e ?
|
|
|
|
|
Nov 1 2006, 08:52
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
Цитата(_Bob_ @ Nov 1 2006, 11:33)  Цитата Reset там вообще не нужен, оторви от шлейфа его  Т.е. дело не в BlueLab'e ? Я думаю, что да. Я прошивал WML-C40 загнув ножку Reset на шлейфе <=> Reset в WML ни к чему не подключен. Попробуй, должно получиться.
|
|
|
|
|
Nov 2 2006, 09:08
|
Участник

Группа: Свой
Сообщений: 19
Регистрация: 20-12-05
Из: Обнинск
Пользователь №: 12 442

|
[/quote]
Я думаю, что да. Я прошивал WML-C40 загнув ножку Reset на шлейфе <=> Reset в WML ни к чему не подключен. Попробуй, должно получиться. [/quote]
Спасибо! Действительно запрограммировал, правда потом модуль не запустился. Сейчас завален работой буду разбираться позже, огромное спасибо.
|
|
|
|
|
Nov 2 2006, 13:41
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
[quote name='_Bob_' date='Nov 2 2006, 12:08' post='171569'] [/quote]
Я думаю, что да. Я прошивал WML-C40 загнув ножку Reset на шлейфе <=> Reset в WML ни к чему не подключен. Попробуй, должно получиться. [/quote]
Спасибо! Действительно запрограммировал, правда потом модуль не запустился. Сейчас завален работой буду разбираться позже, огромное спасибо. [/quote]
Модуль не запускается, когда включена отладка с выводом каких-либо значений на терминал BlueLab, если,конечно, нет ошибок в самой программе.Т.е.когда используется в программе printf, то модуль будет работать только через BlueLab, а отдельно не будет. Сам с этим просидел приличное время, не понимая что не работает.
|
|
|
|
|
Nov 7 2006, 17:52
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-04-06
Пользователь №: 15 753

|
Цитата(LessNik @ Nov 2 2006, 16:41)  Модуль не запускается, когда включена отладка с выводом каких-либо значений на терминал BlueLab, если,конечно, нет ошибок в самой программе.Т.е.когда используется в программе printf, то модуль будет работать только через BlueLab, а отдельно не будет. Сам с этим просидел приличное время, не понимая что не работает. Для этих целей CSR придумал BCSP
|
|
|
|
|
Nov 8 2006, 07:18
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 6-09-06
Из: Москва
Пользователь №: 20 118

|
Цитата(boroda1983 @ Nov 7 2006, 20:52)  Цитата(LessNik @ Nov 2 2006, 16:41)  Модуль не запускается, когда включена отладка с выводом каких-либо значений на терминал BlueLab, если,конечно, нет ошибок в самой программе.Т.е.когда используется в программе printf, то модуль будет работать только через BlueLab, а отдельно не будет. Сам с этим просидел приличное время, не понимая что не работает.
Для этих целей CSR придумал BCSP Для каких этих целей? И у меня модуль NH - поддерживается только H4 UART. Не понил
|
|
|
|
|
Nov 8 2006, 07:36
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-04-06
Пользователь №: 15 753

|
Цитата(LessNik @ Nov 8 2006, 10:18)  Для каких этих целей? И у меня модуль NH - поддерживается только H4 UART. Не понил  Есть такой набор утилит BlueSuite от CSR. Используя программку PSTool.exe нажно поменять ключ PSKEY_HOST_TRANSPORT на "UART running over BCSP"
|
|
|
|
|
Nov 10 2006, 10:42
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-04-06
Пользователь №: 15 753

|
Цитата(LessNik @ Nov 9 2006, 18:16)  А почему,если этот ключ не установлен в "UART running over BCSP" и я использую printf, из-за этого не должен запускаться модуль? Данные у меня raw, vm access to UART. T.e. по UART_TX, UART_RX я принимаю и отправляю сырые данные и мне это и нужно. PSKEY_HOST_TRANSPORT - Этот ключ нужен, чтобы данные, передаваемые по SPI_MISO и SPI_MOSI, передавались используя протокол BCSP, а на UART_RX TX это не отразится и модуль будет работать без BlueLab? Так что ли ? Что-то я не понял. Или мы говорим про разные вещи? BlueLab applications have access to 16 channels for debug output (numbered 0 through 15.) They can output diagnostic messages to these using several functions: * printf and putchar from the standard library. * cprintf, also from the standard library. * VmPutChar, as described in the vm library. * PRINT and CPRINT from the print library. printf and putchar always use channel 0, while cprintf takes the channel number as its first argument. All of these routines eventually call VmPutChar which sends a single character to a designated debug channel. Channels can be selectively disabled using the VmPutCharControl function from the vm library. When running under the debugger these channels are displayed in the Output and Stream tabs at the bottom of the main window. When running on-chip they are sent through a reserved part of BCSP channel 13 (which does not conflict with the host library) and can be displayed using an application like vmSpy. Note: An application running on-chip which uses the debug channels will be stopped until a suitable host application is running. Because of this we recommend that debug diagnostics should be removed from all shipping versions of BlueLab applications. The easiest way of ensuring this is to produce diagnostics using only the macros defined in the print library since these are controlled by the DEBUG_PRINT_ENABLED macro.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|