Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
04.06.2005, 03:26
|
#1
|
Прохожий
Регистрация: 04.06.2005
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
At89C2051+ВВ55
Вот есть сабжевая схема. МК запусается, ВВ5ха сбрасывается выходит из выского импеданса, но чёто не программируется, те даю управляющее слово, затем данные а её пофигу ![Улыбка](images/smilies/icon_smile.gif) , исходники прилагаются,
Код:
|
ORG 0
START: ACALL CLR_ALL
ACALL WW_RESET
ACALL CONF_55
ACALL TEST_55
LOOP:
LJMP LOOP
CLR_ALL:
MOV P1,#0FFH
MOV P3,#0FFH
RET
WW_RESET:
SETB RES
NOP
NOP
NOP
NOP
NOP
NOP
NOP
CLR RES
RET
CONF_55:
MOV P3,#10000010B
SETB A0
SETB A1
SETB RDC
CLR WRC
CLR CS
NOP
NOP
NOP
NOP
SETB WRC
SETB CS
RET
TEST_55:
MOV P3,#10101010B
CLR A0
CLR A1
CLR WRC
CLR CS
NOP
NOP
NOP
NOP
NOP
NOP
SETB WRC
SETB CS
RET
CS BIT P3.5
RDC BIT P3.6
WRC BIT P3.4
RES BIT P3.1
A0 BIT P3.2
A1 BIT P3.3
END |
-- Прилагается рисунок: --
|
|
|
|
06.06.2005, 14:55
|
#2
|
Прохожий
Регистрация: 03.06.2005
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Как мне кажется Ты не очень внимателен. Порт данных у Тебя по схеме Р1, а Ты по чемуто данные пишешь на Р3, туда где у Тебя управление. А так с виду все ГУД. РУС Я не проверял, почитай доку на ВВ55. Привет!
|
|
|
|
06.06.2005, 15:18
|
#3
|
Прохожий
Регистрация: 03.06.2005
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Поправка на ВЕТЕР.
В проге есть косяки.
Немного убрал.
И еще, сигналы чтения и записи у Тебя инвертные.
И сначала данные Р1, выбор чипа CS=0, подождал и потом WR=0 или RD=0 в зависимости от того куда, если чтение то порт настроить на чтение. Не скажу как сам не знаю. Ну как бы все. Остальную часть схемы Я не рассматривал, неудобно, слишком большая. Привет!
CS BIT P3.5
RDC BIT P3.6
WRC BIT P3.4
RES BIT P3.1
A0 BIT P3.2
A1 BIT P3.3
ORG 0
START: ACALL CLR_ALL
ACALL WW_RESET
ACALL CONF_55
ACALL TEST_55
LOOP:
LJMP LOOP
CLR_ALL:
MOV P1,#0FFH
MOV P3,#0FFH
RET
WW_RESET:
SETB RDC
SETB WRC
SETB RES
NOP
NOP
NOP ;Может быть нужно ждать дольше, но должно работать
NOP
NOP
NOP
NOP
CLR RES
RET
CONF_55:
MOV P1,#10000010B
SETB A0
SETB A1
SETB RDC
SETB WRC
CLR CS
NOP
NOP
NOP
NOP
CLR WRC
NOP
NOP
NOP
SETB CS
RET
TEST_55:
MOV P1,#10101010B
CLR A0
CLR A1
CLR CS
NOP
NOP
NOP
NOP
NOP
NOP
CLR WRC
NOP
NOP
NOP
SETB WRC
SETB CS
RET
END
|
|
|
|
08.06.2005, 03:08
|
#4
|
Прохожий
Регистрация: 04.06.2005
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
В сехе ошибка не было пулаопов на портах компоратора. Вот правльная прошивка:
Код:
|
;
;P1 DATA 90h ;Port 1
;P3 DATA 0B0h ;Port 3
;
CS bit P3.5
RDC bit P3.6
WRC bit P3.4
RES bit P3.1
A0 bit P3.2
A1 bit P3.3
;
ORG 0
;
START: acall CLR_ALL
acall WW_RESET
acall CONF_55
;/----- TEST CIKL
LOOP: mov P1,#11101100B ;PA5=1
acall TEST_
;MOV P1,#11001100B ;PA5=0
;ACALL TEST_
;MOV P1,#11101100B ;PA5=1
;ACALL TEST_
ljmp LOOP
;------------------------------------
CLR_ALL:
mov P1,#0FFH
mov P3,#0FFH
ret
;
WW_RESET:
setb RES
nop
nop
nop
nop
nop
nop
nop
clr RES
ret
;
CONF_55:
mov P1,#10000010B ;
setb A0
setb A1
setb RDC
clr CS
clr WRC
nop
nop
nop
nop
setb WRC
setb CS
ret
;
TEST_:
clr A0
clr A1
clr CS
clr WRC
nop
nop
nop
nop
nop
nop
setb WRC
setb CS
ret
END |
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:43.
|
|