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

 
 
5 страниц V  < 1 2 3 4 5 >  
Reply to this topicStart new topic
> ATTINY2313 и UART, ATTINY2313 и UART
jin_jin
сообщение Apr 1 2008, 11:07
Сообщение #31


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Это получается что для 300
UBRP= (4000000/4800)-1 = 832
это надо перевести в 16 систему = 340

Вот так правильно будет??

USART_Init(340);
Go to the top of the page
 
+Quote Post
Well_Di
сообщение Apr 1 2008, 11:13
Сообщение #32





Группа: Новичок
Сообщений: 13
Регистрация: 1-11-07
Пользователь №: 31 948



пардон wacko.gif не заметил второй страницы.

Сообщение отредактировал Well_Di - Apr 1 2008, 11:13
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 1 2008, 11:16
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 1 2008, 14:07) *
Это получается что для 300
UBRP= (4000000/4800)-1 = 832
это надо перевести в 16 систему = 340
Вот так правильно будет??
USART_Init(340);
Вычислено - верно. Но, зачем переводить?

Правильно будет

USART_Init(832); или, что тоже самое USART_Init(0x340);
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 1 2008, 11:23
Сообщение #34


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Спасибо большое
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 2 2008, 06:29
Сообщение #35


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



C устройством разобрался собрал на передачу и прием по ИК
Проблема следующая работает не более чем на 2 метра.
Как можно усилить сигнал предатчика ИК
Пробовал стандартные схемы усиления на 2 транзисторах результат тот же 2 метра и все.
На какое максимальное расстояние можно передавать по ИК связи??
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 2 2008, 06:41
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 2 2008, 09:29) *
На какое максимальное расстояние можно передавать по ИК связи??
Вы меня удивляете... Пульт от телевизора Panasonic (тот же ИК) переключает с метров так десяти. Имхо, все дело в излучателе (излучающем ИК-диоде) и, возможно, скорости передачи.
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 2 2008, 07:01
Сообщение #37


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Мы и сами сидим удивляемся.
Пульт принимает наша банка с расстоянии 5-8 метров
Мы уже и с разных схем передатчик пробовали на 2 на 1 транзисторе
максимум 2 метра получается
Излучаем с частотой 36 кГц скорость 1200 Baud
Может кто что посоветовать
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 2 2008, 07:06
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 2 2008, 10:01) *
Мы уже и с разных схем передатчик пробовали на 2 на 1 транзисторе
Может, все-таки, не число транзисторов менять, а тип ИК-диода...
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 4 2008, 05:17
Сообщение #39


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Может кто-нибудь мне подсказать в следующем вопросе.
Можно ли через UART передавать байты с частотой 36 кГц не используя внешний генератор
Чтобы как в RC-5.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 4 2008, 06:09
Сообщение #40


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 4 2008, 08:17) *
Можно ли через UART передавать байты с частотой 36 кГц не используя внешний генератор. Чтобы как в RC-5.
Генератор можно взять и внутренний - на таймере. Выходы ОСn таймера и Тх USART объединить внешней логикой.
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 4 2008, 06:23
Сообщение #41


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Если не затруднит можно ли по подробнее что за OCn таймер и как это связать с Usart
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 4 2008, 06:43
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 4 2008, 09:23) *
можно ли по подробнее что за OCn таймер и как это связать с Usart
ОСn - это не таймер, это - Output Compare pin - один из выходов таймера. В t2313 два таймера и у каждого два Output Compare pin: для таймера 0 - OC0A, OC0B, соответственно для таймера 1 - OC1A, OC1B. Соответствующей настройкой таймера можно получить на OCn некоторую частоту (например, 36 кГц, или около того). Вот Вам и не потребуется внешний генератор. Промодулировать сигнал этого генератора сигналом с Тх USART прийдется внешней обвязкой - это уж придумайте сами - как Вам сподручнее будет сделать.
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 4 2008, 06:54
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



А как настроить прваильно таймер на частоту 36кГц??
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 4 2008, 07:15
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(jin_jin @ Apr 4 2008, 09:54) *
А как настроить прваильно таймер на частоту 36кГц??
Сначала определитесь с таймером: таймер0 или таймер1. В даташите для каждого таймера есть подраздел "Output Compare Unit" в котором всё подробно написано. Есть даже формулы определения частоты, которая получится на выходе: для таймера0 - на стр. 72, таймера1 - стр. 99. Несложными математическими преобразованиеми этих формул легко получить значения регистров.
Go to the top of the page
 
+Quote Post
jin_jin
сообщение Apr 4 2008, 07:27
Сообщение #45


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 15-02-08
Пользователь №: 35 071



Таймер0 буду использовать. Что то пытался сделать через CodeVisionGenerator выставить значения но что то не получилось

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 15,625 kHz
// Mode: Normal top=FFh
// OC0A output: Toggle on compare match
// OC0B output: Disconnected
TCCR0A=0x40;
TCCR0B=0x04;
TCNT0=0x24;
OCR0A=0x24;
OCR0B=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

Вся проблема в том что у меня проблема с английским.
А даташит на инглише. Если не затруднит вы можtnt помочь расчитать значение таемера на 36 кГц
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th June 2025 - 15:19
Рейтинг@Mail.ru


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