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

 
 
> вопрос по ADuC, help
Viktor_
сообщение Apr 17 2006, 03:52
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 73
Регистрация: 13-01-06
Из: Томск
Пользователь №: 13 123



Вопрос очень прост. Записываю программу, всё работает пока не нажму Reset, либо не отключу питание.
Почему не переходит на программу? В чём дело? после Reset, как я думаю контроллер переходит на 0000 адресс в котором должен хранится jmp на точьку входа. Но почему на работает то?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Viktor_
сообщение Apr 18 2006, 02:58
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 73
Регистрация: 13-01-06
Из: Томск
Пользователь №: 13 123



вообщем вроде понял в чём дело. Reset вроде ничё пашет. Проблемма с точкой входа. не могу понять как првильно использовать org.????
Go to the top of the page
 
+Quote Post
ipc
сообщение Apr 18 2006, 05:00
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 553
Регистрация: 30-03-05
Из: Санкт Петербург
Пользователь №: 3 793



Цитата(Viktor_ @ Apr 18 2006, 06:58) *
вообщем вроде понял в чём дело. Reset вроде ничё пашет. Проблемма с точкой входа. не могу понять как првильно использовать org.????

Нужно бы конечно про директивы почитать а то врятли что путное получится.Вот небольшой пример использования директив(надергал из одного своего проекта).

$INCLUDE (MOD52)
VERSION EQU 5700
;***************************************************************
;Описание сегментов программы
;***************************************************************
PROG SEGMENT CODE
CONST SEGMENT CODE
STACK SEGMENT IDATA
VAR SEGMENT DATA
;****************************************************************
;Область обьявлений и присваиваний
;*****************************************************************
HLD1 BIT P1.2
HLD2 BIT P1.3
system EQU R6
;******************************************************************
; Область изменяемых параметров
;******************************************************************
QUARZ EQU 16
IF VERSION=5600
ChanON EQU 21
TimeON EQU 900
ENDIF
IF VERSION=5700
ChanON EQU 28
TimeON EQU 001
ENDIF
PWR EQU 0dfh
FRQ EQU 0fah


;***************************************************************
;Область констант
;***************************************************************
RSEG CONST

Mas1Address: DB 01 ,03 ,04 ,05 ,10 ,12 ,12 ,13 ,13 ,14 ,12 ,14 ,14 ,15 ,15 ,16 ,16 ,17
Mas2Address: DB 01 ,03 ,04 ,05 ,11 ,14 ,15 ,14 ,15 ,15 ,13 ,16 ,17 ,16 ,17 ,18 ,19 ,18


;******************************************************************
;Область переменных
;******************************************************************
RSEG VAR
BitArray: DS 4
RollToggle: DS 1


;******************************************************************
;Область стека
;******************************************************************
RSEG STACK ;Сегмент стека
DS 20H ;
RSEG PROG
;******************************************************************
;Область векторов прерываний
;*******************************************************************
ORG 00h ;Вектор ресета
JMP START ;Переход на начало программы
ORG 01BH ;Вектор таймера
JMP T1_INTERRUPT ;Переход на обработчик переполнения таймера
;********************************************************************
;Главный цикл программы
;********************************************************************
START: MOV SP, #STACK-1 ;Определить стек
итд

Особое внимание рекомендую обратить на определение сегментов разных типов(RSEG) и присвоение стека.А также на возможность использования препроцессора IF EQU DS DB итд.В зависимости от компилятора директивы могут менятся но суть одна.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Viktor_   вопрос по ADuC   Apr 17 2006, 03:52
- - ipc   Цитата(Viktor_ @ Apr 17 2006, 07:52) Вопр...   Apr 17 2006, 04:46
- - Viktor_   Как не работат переход на точку входа я могу понят...   Apr 17 2006, 05:01
|- - ipc   Цитата(Viktor_ @ Apr 17 2006, 09:01) Как ...   Apr 17 2006, 05:03
- - KRS   А может у вас просто бутлоадер все время активируе...   Apr 17 2006, 08:33
- - volkanaft   Если работаете в Keil-e, запустите симулятор и уви...   Apr 17 2006, 13:35
- - Viktor_   Большое спасибо за советы. Я даже начал что-то по...   Apr 18 2006, 01:05
- - *SERG   Посмотри осцилографом что творитьбся на ножке сбро...   Apr 18 2006, 02:33
- - Viktor_   .ORG 0000h lJMP MAIN ; jump to main pr...   Apr 18 2006, 03:37
- - Viktor_   блиииин. Чёта сильно уж мутно.... Нее, я понимаю...   Apr 18 2006, 05:17
|- - ipc   Цитата(Viktor_ @ Apr 18 2006, 09:17) блии...   Apr 18 2006, 05:20
- - Viktor_   всё. Буду читать, читать, читать.   Apr 18 2006, 05:46
- - Stas   Судя по тому, что прога исполняется после загрузки...   Apr 18 2006, 12:33


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

 


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


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