Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Ассемблер? Это просто! Учимся программировать


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Коцюрбенко Алексей aka Жерар
Статус: Профессор
Рейтинг: 3295
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 2583
∙ повысить рейтинг »
Абаянцев Юрий Леонидович aka Ayl
Статус: Профессионал
Рейтинг: 2060
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Assembler (Ассемблер)

Номер выпуска:1499
Дата выхода:22.12.2011, 15:00
Администратор рассылки:Лысков Игорь Витальевич (Старший модератор)
Подписчиков / экспертов:182 / 63
Вопросов / ответов:1 / 1

Консультация # 184824: Здравствуйте! Прошу помощи в следующем вопросе::Нужно написать программу для учебного лабораторного комплекса SDK-1.1. Необходимо написать программу, которая управляет процессами, с заданной периодичностью. Основной процесс моделируется включением и выключением линейки светодиодов по заданному алгоритму Управление производится цикл...


Консультация # 184824:

Здравствуйте! Прошу помощи в следующем вопросе::Нужно написать программу для учебного лабораторного комплекса SDK-1.1. Необходимо написать программу, которая управляет процессами, с заданной
периодичностью. Основной процесс моделируется включением и выключением линейки светодиодов по заданному алгоритму
Управление производится циклически от внутреннего таймера МК и асинхронно с помощью двух внешних сигналов. Для решения задачи необходимо задействовать три источника прерывания.
Процессор 8051.Буду очень вам благодарен,если вы сумеете мне помочь.

Дата отправки: 17.12.2011, 14:27
Вопрос задал: Дмитрий (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Лысков Игорь Витальевич (Старший модератор):

Здравствуйте, Дмитрий!
Вот Вам программа, решающая Вашу задача.
Комментарии не писал, Вы их можете посмотреть в руководстве, там все расписано от и до...
Отличия:
1) Точка входа
2) Yx = 135 для доступа к светодиодам
3) Используем страницу 1fh
4) На индикацию отправляется байт 10011011b
5) Чтобы timer2 срабатывал каждые 40 мсек, загружаем регистры числом 36864 = 921600/25 (25Гц ~ 40мс)
6) Чтобы изменения были каждые 2 сек, загружаем в регистр t2OF = R0 число 50 (50 * 40мс = 2сек)
Все остальное целиком и полностью взято из руководства.

Код :
#include	"aduc812.h"

Wr_byte			equ	R1
Tochka_Vhoda	equ	44e0h
t2OF			equ	R0
Reg1			equ	1

Write		MACRO	Wr_byte,reg_addr,page_num
	mov		DPP,#page_num
	mov		DPTR,#reg_addr
	mov		a,Wr_byte
	movx	@DPTR,a
	mov		DPP,#0
	ENDM

	CSEG	at	0
	jmp		Tochka_Vhoda

	ORG		2003h
	jmp		Ext0_int

	ORG		2013h
	jmp		Ext1_int

	ORG		202bh
	jmp		T2_int

	ORG		Tochka_Vhoda
main:
	call	Init_Timer2
	mov		Wr_byte,#10011011b
_8:
	jmp		_8

Init_Timer2:
	mov		t2OF,#100	;50*40ms = 2 sec
	mov		RCAP2H,#HIGH((not 36864)+1)	;36864 = 921600/25 (25Гц ~ 40мс)
	mov		RCAP2L,#LOW((not 36864)+1)
	mov		TH2,#HIGH((not 36864)+1)
	mov		TL2,#LOW((not 36864)+1)
	setb	ET2
	setb	TR2
	setb	ET1
	setb	IT1
	SETb	ET0
	setb	IT0
	setb	EA
	ret

T2_int:
	clr		TF2
	djnz	t2OF,vyhod
	mov		t2OF,#100
	Write	Wr_byte,135,1fh
	xrl		Reg1,#0ffh
vyhod:
	reti

Ext0_int:
	mov		Wr_byte,#0aah
	reti

Ext1_int:
	clr		TR2
	reti

	END

Консультировал: Лысков Игорь Витальевич (Старший модератор)
Дата отправки: 21.12.2011, 17:23
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное