Например TDA7294

Форум РадиоКот • Просмотр темы - USART+Proteus
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пн июл 28, 2025 02:11:08

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 18 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: USART+Proteus
СообщениеДобавлено: Вс янв 29, 2012 08:19:26 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Здравствуйте, не могли бы вы помочь. У меня такой случай пытаюсь сделать передачу по USART в протеусе. Поставил ATtiny2313 подключил его к порту (COMPIM), установил программу Free Virtual Serial Ports Emulator (которая виртуально соединяет порты и соединил 2рой и 5тый )(контроллер подключен к 2отму порту а терминал ко 5ому) а теперь пытаюсь при помощи терминала принять или отправить байт.
Так вот передача от контроллер происходит а вот принимать байт он не в какую не хочет :(

На счёт уровней протеус сам может преобразовать ? раз как-то передаёт


Код:
.include "tn2313def.inc"   ; Присоединение файла описаний
.def   temp=r18
.def    rab = r17      ; Определение рабочего регистра

;---------- Начало программного кода

      .cseg          ; Выбор сегмента программного кода
      .org   0      ; Установка текущего адреса на ноль

start:   rjmp   init   ; Переход на начало программы
      reti         ; Внешнее прерывание 0
      reti         ; Внешнее прерывание 1
      reti         ; Прерывание по захвату таймера T1
      reti         ; Прерывание по совпадению T1
      reti         ; Прерывание по переполнению T1
      reti         ; Прерывание по переполнению T0
      rjmp uart_rcv   ; Прерывание UART прием завершен
      reti         ; Прерывание UART регистр данных пуст
      reti         ; Прерывание UART передача завершена
      reti         ; Прерывание по компаратору
      reti         ; Прерывание по изменению на любом контакте
      reti         ; Таймер/счетчик 1. Совпадение B
      reti         ; Таймер/счетчик 0. Совпадение B
      reti         ; Таймер/счетчик 0. Совпадение A
      reti         ; USI Стартовая готовность
      reti         ; USI Переполнение
      reti         ; EEPROM Готовность
      reti         ; Переполнение охранного таймера
;----------
init:      ldi      temp, ramend   ; Выбор адреса вершины стека
      out      SPL, temp   ; Запись его в регистр стека
      



;---------- Инициализация портов ВВ
      lDI      temp,0b11111111
      out      DDRB,temp   
   
      
      lDI      temp,0
      out      DDRD,temp   
      out      PORTD,temp   

      rcall uart_init      ;инициализация  UART

;---------- передача  символа 5
      ldi      r20,'5'
      rcall uart_snt

      sei               ;разрешаем прерывание

;---------- главный цикл
main:

   
      Rjmp   main


;----------
;подпрограммы
;----------
uart_init:   

      LDI    R16, $00
      OUT    UBRRH,R16
      LDI    R16, $33
      OUT    UBRRL,R16
       LDI    R16,0x06      ; скорость передачи 9600 при частоте 8Мгц
      OUT    UCSRC, R16
      
      LDI    R16,$00
      OUT    UCSRA, R16
      LDI    R16,(1<<RXEN)|(1<<TXEN)|(1<<RXCIE) ;RXCIE- разрешение прерывание по завершению приёма
      OUT    UCSRB, R16
      
      RET


;---------- приём по прерыванию
uart_rcv:
   
      IN   temp,UDR            ; байт пришел - забираем.
      out   portb,temp            ; выводим в порт B 
      RETI                  ; Выходим. Результат в rab

;---------- передача      
uart_snt:
      
      SBIS    UCSRA,UDRE      ; Пропуск если нет флага готовности
      RJMP   uart_snt       ; ждем готовности - флага UDRE
      
      OUT   UDR, R20         ; шлем байт
      
      RET
      
exit:      
      RJMP   exit
      



Изображение


Вложения:
asm+shem.rar [15.89 KiB]
Скачиваний: 402
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вс янв 29, 2012 12:43:07 
Мучитель микросхем
Аватар пользователя

Карма: 8
Рейтинг сообщений: 28
Зарегистрирован: Вс авг 10, 2008 19:35:49
Сообщений: 411
Откуда: Евпатория
Рейтинг сообщения: 0
Протеус в топку. Работайте сразу на железе, чтобы не было потом вопросов типа - а как же так, я в Протеусе всё отладил, а на контроллере не работает. В даташите есть пример программного кода и на Си и на ассемблере. В статье показано как их применить.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вс янв 29, 2012 13:13:40 
Держит паяльник хвостом

Карма: 25
Рейтинг сообщений: 375
Зарегистрирован: Ср апр 13, 2011 11:09:20
Сообщений: 933
Откуда: Екатеринбург
Рейтинг сообщения: 0
pokk писал(а):
Здравствуйте, не могли бы вы помочь. У меня такой случай пытаюсь сделать передачу по USART в протеусе.

Согласен с предыдущим оратором. В топку все эти симуляторы. На железе нужно отлаживать.

pokk писал(а):
Поставил ATtiny2313 подключил его к порту (COMPIM)

Э-м-м... А ничего, что у интерфейса RS-232 логические уровни, мягко говоря, немного отличаются от ТТЛ-овских?
Если Вам нужно связать контроллер с компьютером по COM-порту, возьмите микросхему MAX232, подключите её согласно даташиту и покажите схему Э3. Без этого лично я даже вникать в программу не буду. Ибо бессмысленно.

pokk писал(а):
На счёт уровней протеус сам может преобразовать ? раз как-то передаёт

Понятия не имею, что может протеус, но скажите, какова цель вашей работы? В симуляторе отладить? Тогда я Вам не помощник, ибо у меня нет времени на ерунду. Потому что в реальном железе никто за Вас преобразовывать уровни не будет.
Если хотите сделать реальное устройство, начинать нужно со схемы Э3. Программирование - это уже второй этап.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вс янв 29, 2012 13:30:39 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Цитата:
В даташите есть пример программного кода и на Си и на ассемблере

Я от туда и взял кусок
Цитата:
Понятия не имею, что может протеус, но скажите, какова цель вашей работы?

Разобраться
Цитата:
возьмите микросхему MAX232, подключите её согласно даташиту и покажите схему Э3

ок

меня просто интересовало почему передача шла а приём не хотел


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вс янв 29, 2012 15:40:03 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Оффтоп поудалял.
Господа, холиварить - прошу в МЯУ. Тут только по делу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 11:43:59 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Вот сделал схему по смотрите
VCC=+5в
GND=-5в
Изображение


Вложения:
схема.PDF [129.71 KiB]
Скачиваний: 285
Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 12:27:32 
Держит паяльник хвостом

Карма: 25
Рейтинг сообщений: 375
Зарегистрирован: Ср апр 13, 2011 11:09:20
Сообщений: 933
Откуда: Екатеринбург
Рейтинг сообщения: 0
pokk писал(а):
Вот сделал схему по смотрите

Ну, схема верна.
Имейте лишь в виду, что указанное подключение к COM-порту справедливо лишь для разъема DB9. Для разъема DB25 выводы 2 и 3 нужно поменять местами.

Ну, и что Ваш симулятор говорит?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 12:40:01 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Цитата:
Ну, схема верна.

Ок спасибо значит сейчас буду разводить и травить


Цитата:
Ну, и что Ваш симулятор говорит?

Да нечего =) я в нём не пробовал


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 18:16:04 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 9
Рейтинг сообщений: 163
Зарегистрирован: Вс янв 09, 2011 16:51:39
Сообщений: 2335
Откуда: Санкт-Ленинград
Рейтинг сообщения: 0
По работе Протеуса очень много материала на Казусе.

Вот, нашёл тут у себя урок по Компиму (надо запустить хтмл-файл).


Вложения:
ComPim_Lesson.zip [399.03 KiB]
Скачиваний: 459

_________________
ICQ нет, и, в ближайшее время, не будет.
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 18:40:41 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1430
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4567
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Цитата:
Так вот передача от контроллер происходит а вот принимать байт он не в какую не хочет
А ничего, что Вы повесили 3 девайса параллельно ? Вам не могло прийти в голову, что Вы одним девайсом просто-напросто засадите другой ?
Хорошо, что Вы в протеусе это собрали, иначе дыма бы не избежать :facepalm:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 18:58:27 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Цитата:
А ничего, что Вы повесили 3 девайса параллельно ? Вам не могло прийти в голову, что Вы одним девайсом просто-напросто засадите другой ?
Хорошо, что Вы в протеусе это собрали, иначе дыма бы не избежать :facepalm:


Оказалось всё куда проще соединил порт и контроллер я не так :facepalm:
Зато программа отлично работает :))

Цитата:
Вот, нашёл тут у себя урок по Компиму (надо запустить хтмл-файл).

спасибо за статью =) это я там это и увидел =))

хм странно соединял как тут крест накрест ,а оказалось надо было напрямую :dont_know:
http://easyelectronics.ru/avr-uchebnyj- ... -uart.html


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт янв 31, 2012 19:17:29 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Это как напрямую? TX-TX, RX-RX? :shock:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Ср фев 01, 2012 05:32:53 
Вымогатель припоя

Зарегистрирован: Вт ноя 02, 2010 17:46:37
Сообщений: 574
Рейтинг сообщения: 0
Цитата:
Это как напрямую? TX-TX, RX-RX? :shock:

Ага именно так =)

может крестообразное соединение для контролёров идёт а так как я соединяю порт (да ещё при помощи виртуальной перемычки) там чего-нибуть переворачивается

в железе делать крест накрест ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Ср фев 01, 2012 06:43:37 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Цитата:
в железе делать крест накрест ?

Разумеется, иначе попалишь выходы.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Чт фев 02, 2012 11:14:54 
Мудрый кот
Аватар пользователя

Карма: 3
Рейтинг сообщений: 60
Зарегистрирован: Пн ноя 29, 2010 15:58:43
Сообщений: 1816
Рейтинг сообщения: 0
ploop писал(а):
Разумеется, иначе попалишь выходы.


на самом деле MAX232 и аналогичные ей . очень стойкие к неправильному(выход на выход) включению. проверено неоднократно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Чт фев 02, 2012 11:39:43 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Это хорошо, от случайностей никто не защищён, но всё равно не стоит не подумав подключать.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Пт фев 03, 2012 09:01:22 
Держит паяльник хвостом

Карма: 25
Рейтинг сообщений: 375
Зарегистрирован: Ср апр 13, 2011 11:09:20
Сообщений: 933
Откуда: Екатеринбург
Рейтинг сообщения: 0
pokk писал(а):
может крестообразное соединение для контролёров идёт а так как я соединяю порт (да ещё при помощи виртуальной перемычки) там чего-нибуть переворачивается

не контролёров, а контрОллеров (ударение на "о" и пишется с двумя "л")
Что касается соединений - это общее правило. Если Вам нужно, например, усилить сигнал с магнитофона, то Вы ведь с ВЫХОДА магнитофона подаете сигнал на ВХОД усилителя, так? Аналогично, если Вы соединяете два устройства для обмена данными между ними (а логически порт и сопрягаемый с ним контроллер являются разными устройствами), то выход (TxD_А) устройства А соединяется со входом (RxD_Б) устройства Б, а вход (RxD_A) устройства А соединяется с выходом (TxD_Б) устройства Б.

pokk писал(а):
в железе делать крест накрест ?

Вы же схему Э3 нарисовали - там все верно.
У COM-порта (на разъеме DB9) конт.2 - RxD, конт.3 - TxD, конт.5 - сигнальная "земля". В Вашей схеме нарисовано именно для разъема DB9, по ней и делайте.
(на всякий случай скажу, что для COM-порта с разъемом DB25 распиновка такая: конт.2 - TxD, конт.3 - RxD, конт.7 - сигнальная "земля".


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: USART+Proteus
СообщениеДобавлено: Вт июн 05, 2012 13:10:57 
Родился

Зарегистрирован: Вт июн 05, 2012 12:53:41
Сообщений: 1
Рейтинг сообщения: 0
Я тоже сначала мучился, но потом с помощью OSCILLOSCOPE проверил сигнал с VIRTUAL TERMINAL и микроконтроллера по отдельности. Оказывается ширина посылки сигнала отличается хотя все делал по формуле UBRR=4000000/(16*110)-1=2272
BAUD VIRTUAL TERMINAL=110. Но потом єксперементально с помощью OSCILLOSCOPE увеличил UBRR до 2335 и все заработало. Наверное єто очередной глюк Протеуса.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 18 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y