реклама на сайте
подробности

 
 
> Bluetooth, Все что с ним связано.
Stanislav_S
сообщение May 5 2007, 10:59
Сообщение #1


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Собственно интересует, встраивал ли кто в свои модули данный интерфейс. Какие впечатления, какие подводные камни? На какое железо стоит ориентироваться ( в плане доставабельности, глючности и и т д...), в общем хотелось бы услышать личные впечатления smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
_Pasha
сообщение Aug 10 2014, 09:27
Сообщение #2


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Код
#define BTPORT PORTA
#define BTPORT_DDR DDRA

#define _BV(n) (1<<n)
uint8_t BTport_dir = _BV(PIN0)//Rst
            | _BV(PIN3)   //myTxD->RxD
            | _BV(PIN6)   // myRTS->CTS
            | _BV(PIN4); // myDTR->DTR

uint8_t BTport_ini = _BV(PIN6) | _BV(PIN4); // rst=0; txd/rxd=alt.driven; myRTS=off; myDTR=off

BTPORT = BTport_ini;
BTPORT_DDR = BTport_dir;


Так, что ли?
Это если путаницы нету в реф.доках, они такое полюбляют...

Сообщение отредактировал _Pasha - Aug 10 2014, 09:28
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 10 2014, 16:39
Сообщение #3


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(_Pasha @ Aug 10 2014, 13:27) *
[code]
| _BV(PIN4); // myDTR->DTR
Так, что ли?
Это если путаницы нету в реф.доках, они такое полюбляют...


Источник не вызывает доверия, т.к. соединение
myDTR->DTR
явно ошибочное - одноименные линии между контроллером и модулем не соединяются никогда!

В норме DTR - выходная линия контроллера, которая должна приниматься модулем на контакт DSR.

По общим соображениям (стандарт RS-232), у контроллера на выход должны быть направлены линии TXD, RTS, DTR, а со стороны модуля им соответствуют RXD, CTS, DSR, соответственно.

Следующая несуразица:
uint8_t BTport_ini = _BV(PIN6) | _BV(PIN4); // rst=0; txd/rxd=alt.driven; myRTS=off; myDTR=off
- выдача низкого уровеня на Reset.
Этого в принципе делать нельзя, т.к. такие действия ставят внутренний контроллер модуля в стояние сброса:
Цитата: "Device Reset. This exit mode is selected by either using the RESET_N line (reset active low)"
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Aug 11 2014, 14:50
Сообщение #4


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Xenia @ Aug 10 2014, 19:39) *
Этого в принципе делать нельзя, т.к. такие действия ставят внутренний контроллер модуля в стояние сброса:
Цитата: "Device Reset. This exit mode is selected by either using the RESET_N line (reset active low)"

С последующей установкой в "1", а как иначе? Все равно при инициализации ставится сразу на сброс а затем после паузы устанавливается в "1".
Про DTR вроде все правильно. Пусть еще кто-то скажет/рассудит.

Сообщение отредактировал _Pasha - Aug 11 2014, 14:52
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 01:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01397 секунд с 7
ELECTRONIX ©2004-2016