Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.07.2014, 17:19   #1
Berlioz
Изучающий C и ASM
Пользователь
 
Регистрация: 25.05.2012
Сообщений: 89
По умолчанию Прерывание 14h и MAX3232

Всех приветствую! Начал подключать контроллер Atmega328p-pu к компьютеру при помощи схемы MAX3232 для обмена данными. Скорость 9600.

К компьютеру на COM порту подключены только выводы RxD и TxD. Из-под Win 98 посредством Hyper Terminal соединение проходит нормально, обмен данными идет на ура.

Пытаюсь соединиться с девайсом из-под DOS
Код:
	push dx
	xor ah,ah
	mov al,11100011b
	xor dx,dx
	int 0x14

	@@:
	mov ah,3
	xor dx,dx
	int 0x14
	test ah,32d
	jnz @b

	xor dx,dx
	mov ah,1
	mov al,0x31
	int 0x14

	pop dx
Зависает на проверке готовности. Попытка передать символ без проверок не прокатывает.
Что я делаю не так?

P.S. Прямое программирование порта тоже не помогает
Berlioz вне форума Ответить с цитированием
Старый 24.07.2014, 17:38   #2
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,755
По умолчанию

А что, ассемблер разве воспринимет шестнадцатиричные константы в стиле Си?
Vapaamies вне форума Ответить с цитированием
Старый 24.07.2014, 18:35   #3
Berlioz
Изучающий C и ASM
Пользователь
 
Регистрация: 25.05.2012
Сообщений: 89
По умолчанию

Цитата:
Сообщение от Vapaamies Посмотреть сообщение
А что, ассемблер разве воспринимет шестнадцатиричные константы в стиле Си?
FASM воспринимает
Berlioz вне форума Ответить с цитированием
Старый 26.07.2014, 13:41   #4
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,603
По умолчанию

У вас DOS стоит на реальной или виртуальной машине? Входит ли COM в список первых двух портов? Что если строки xor dx,dx заменить на mov dx,1?
Попробуйте обратить внимание на статус порта связи http://www.codenet.ru/progr/dos/int_0013.php

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
прерывание Ирида Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 27.10.2011 04:36
прерывание в Си Misha_M. Помощь студентам 2 04.02.2010 20:11
6 прерывание ленусик Фриланс 1 03.06.2008 16:22
6 прерывание ленусик Помощь студентам 5 30.05.2008 16:57