nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 29 Mar 2024 06:02



Reply to topic  [ 89 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next
РВЕ035 (aka КР1816ВЕ35 aka i8035) 
Author Message
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Да там не маленькая прошивка-то. Весь килобайт кодом занят..... Наверное лучше самому разобраться, как с этим индикатором работать.


28 Feb 2014 09:39
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Tronix wrote:
Наверное лучше самому разобраться, как с этим индикатором работать.

Как хочешь... но замучаешься больше, чем прочитать оригинальное ПЗУ.
Раньше у всех этих старых недо-компов типа РК-86 и Микроши ПЗУ читали как нефиг делать!
А там - по 2Кбайт минимум было... :wink:

Кстати, ПЗУ-ху слей куда-нибуть, чтобы булО...

_________________
iLavr


28 Feb 2014 09:51
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Слил сюда: http://zx.pk.ru/showpost.php?p=680408&postcount=588

Как я понял нужно "бежать" по С2 - С5 (выставлять ноль), затем писать в PORT1 маску символа и тд...


28 Feb 2014 10:03
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Да принцип-то - да, несложный... просто неприятное занятие подбор временнЫх интервалов,
чтобы оно нормально было видно.

Я так думаю - в оригинале там всё сделано по прерыванию, чтобы периодически индикатор
сканировать, ну и на этом фоне заниматься прочими делами.
Ну и все интервалы нужные уже подобраны.

За ПЗУ-ху спасибо! :lol: У меня у самогО дома такая печка и что-то уже с год как не работает...

_________________
iLavr


28 Feb 2014 10:19
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Ну да, в интервале весь замес идет. Для меня просто ассемблер этот непривычен, поэтому читать на лету не получается. Но разбираюсь...

Image


Last edited by Tronix on 28 Feb 2014 12:04, edited 1 time in total.



28 Feb 2014 11:50
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Tronix wrote:
Для меня просто ассемблер этот непривычен, поэтому читать на лету не получается...

Привыкнешь быстро. Там просто адресация и банки несколько непривычны.

А так-то это по сути урезанный-обрезанный i8080, которому на кристалл добавили
порты и память программ.
А блок регистров общего назначения сделали 8-битным сугубо, удлиннили до 64 ячеек,
и назвали памятью данных.

Только будь осторожен - если я правильно помню, у этих микро-ЭВМ нет инструкции вычитания.
Это несколько озадачивает по первому разу... 8)

_________________
iLavr


28 Feb 2014 12:03
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Lavr wrote:
Только будь осторожен - если я правильно помню, у этих микро-ЭВМ нет инструкции вычитания.
Это несколько озадачивает по первому разу... 8)


Испугали ежа иголкой :) Уж чего чего, а вычитание то я могу запилить через сложение с NOT. Да и вообще, при наличии стольких свободных килобайт можно вообще полную таблицу значений держать.
Но оно мне пока все не нужно.

Решил значит делать отрисовку в таймере. Нужно ему задать вектор прерывания (по адресу 0x007), потом задать интервал (mov a,#??; mov t,a) и запустить таймер STRT T

Немного не вкуриваю с RAM памятью. Мне нужен массив из 4 байт (ну для 4 символов). Че, какие адреса, почему такие... Вот смотрю в дизасм основной прошивки, там так:
Code:
   mov   r1,#02DH
   mov   a,@r1


Что за 02dh? Почему? И дальше по тексту уже так:
Code:
   mov   r0,#03CH
   mov   a,@r0

Тут уже на ~100h больше адрес. Странно..


28 Feb 2014 21:51
Profile
God
User avatar

Joined: 13 Nov 2010 04:06
Posts: 1345
Reply with quote
Post 
У меня какое-то дежавю в этой теме... :)

Сташин, Урусов, Мологонцева. Проектирование цифровых устройств на однокристальных микроконтроллерах. Отличная книга по 1816, со схемами, алгоритмами и готовыми кусочками кода.


02 Mar 2014 00:25
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
С памятью более-менее разобрался вроде. Первые 8 байт отображаются на регистры R0-R7, следующие 8 байт вроде для стека (для запоминания адреса возврата CALL), остальные 16 байт можно юзать по усмотрению. Ну и второй банк SEL RB1 - так же. Ну мне 16 байт хватит за глаза.


02 Mar 2014 01:03
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Сделал вывод через таймер. Тайминги подсмотрел в оригинальной прошивке, как и советовал Lavr. Все работает :)
Image

Говнокодес:
Code:
;DATA
   .equ disp_buf, 030h         ; 4 bytes buffer


;;;  reset vector
   .org   0
   dis    i         ; disable interrupts
   jmp   main

;;;  external interrupt vector--trap
   .org   3
   jmp   $         ; nop

;;;  timer interrupt vector
   .org   7
   sel    rb1
   mov a,#0d5h
   mov t,a
   mov   a,#00FH
   orld   p5,a

   mov   a,disp_buf-1
   add   a,r5
   mov   r0,a
   mov    a,@r0

   outl    p1,a

   mov   a,r4
   movd   p5,a
   rl   a
   mov   r4,a

   djnz   r5,exit_tmr
   mov   r4,#0feh
   mov   r5,4

exit_tmr:
   sel    rb0
   mov a,#0d8h
   mov t,a
;   strt    t
   retr

;MAIN
main:
   ;initialize

   dis    tcnti         ; turn off counter

   mov    r0,disp_buf      ; Fill disp_buf
   mov    a,#0c0h         ; O
   mov    @r0,a
   inc    r0
   mov    a,#0c7h         ; L
   mov    @r0,a
   inc    r0
   mov    a,#086h         ; E
   mov    @r0,a
   inc    r0
   mov    a,#089h         ; H
   mov    @r0,a

   sel    rb1         ; timer variables
   mov   r4,#0feh      ; 1110h - CT position
   mov   r5,4         ; R5 = buf offset
   sel   rb0

   mov    a,#0e5h
   mov    t,a
   strt    t
   en   tcnti

main_loop:
   jmp main_loop


02 Mar 2014 03:41
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Кокой пеар! :lol:

Программируем микроволновку или контроллер 40-летней давности :rotate:

_________________
iLavr


02 Mar 2014 13:15
Profile
Doomed

Joined: 10 Mar 2012 16:21
Posts: 598
Location: РФ
Reply with quote
Post 
Lavr wrote:
...
А так-то это по сути урезанный-обрезанный i8080, которому на кристалл добавили
порты и память программ..
Не совсем так - скорее это "урезанный-обрезанный i8085" ибо забыли упомянуть генератор, и ещё всяко разно. Да и питание одно, что тоже как у 8085 а не как у 8080 ..


02 Mar 2014 13:42
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
petrenko wrote:
Не совсем так - скорее это "урезанный-обрезанный i8085"...

Ага... щаззз... а 8085 - это кто? Это продвинутый 8080.
И раз ты сам говоришь, "урезанный-обрезанный i8085" - это как раз и будет "обрезанный 8080". :wink:

Но весь этот словесный бредятник никак не влияет на основную подчеркнутую мной мысль:
Lavr wrote:
...на кристалл добавили порты и память программ.
А блок регистров общего назначения сделали 8-битным сугубо,
удлиннили до 64 ячеек, и назвали памятью данных.

_________________
iLavr


02 Mar 2014 14:12
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Радует другое, что у сабжа есть шина BUS. Это почти как Parallel slave port у некоторых PIC. Правда конкретно у 8035 она занята ПЗУ, а у какого-нить 8048 можно юзать по своему усмотрению. Плюс ко всему очень просто подключить динамическую память типа РУ7, можно тестер сделать для РУ5, РУ7.... Да и камни стоят копейки.


02 Mar 2014 21:45
Profile
Doomed

Joined: 25 Aug 2009 07:02
Posts: 459
Location: Москва
Reply with quote
Post 


...Теперь только остается сыграть на девайсе «в лесу родилась елочка»...
А "Мурку" смогёшь?


03 Mar 2014 01:51
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 89 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next

Who is online

Users browsing this forum: No registered users and 15 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.