nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 26 Apr 2024 02:42



Reply to topic  [ 147 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 10  Next
Расширяя горизонты возможностей ВГ75 
Author Message
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
А эти байты F1 и FF, о которых я говорил, никак не влияют на параметры развертки.

F1 - для контроллера обозначает конец строки. Контроллер прекращает опрашивать ПДП контроллер до начала следующей строки.

То есть, F1 это аналогичен 77 нулям, если его разместить во втором символе строки. То есть строка может занимать 2 байта, а не 78.

Так же, 9 невидимых байт справа видимых строк можно заменить на один символ F1.


Last edited by vinxru on 21 Apr 2013 03:50, edited 1 time in total.



20 Apr 2013 10:56
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
Я скину пример, как только доберусь до своего ноута.


20 Apr 2013 10:56
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
vinxru wrote:
Т.е. гасящие получаются 320-250 =70 линий

Почему 320? По стандарту - 312 строк в кадре...

_________________
iLavr


20 Apr 2013 11:25
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
Мог что то не так вспомнить. Значит 310 линий (31*10) и 312 линий (39*8)


20 Apr 2013 12:49
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Что-то я с этим их рисунком экрана туплю... :(

Image

Первая строка начинается с байта 36D0 и заканчивается байтом 371D,
371D - 36D0 = 4Dh - это действительно 77d.
Но сам байт 36D0 надо тоже прибавить - 78 символов в строке?

К примеру, с 10-го по 15-й элемент - их шесть... хотя 15-10=5.

В последней строке тоже получается 78 символов в строке:
3FF3 - 3FA6 = 4Dh +1 = 78...

Или я что-то не так считаю?

Настройка же ВГ75 осуществляется действительно на 4Dh - 77d символов:
Code:
LXI H,0D001H;
MVI М,00H;
LXI H,0D000H;
MVI M,4DH; - отображаются все знакоряды по 77 (4DH) знаков в каждом знакоряде
MVI M,1DH;
MVI М,99H;
MVI М,93H;

_________________
iLavr


20 Apr 2013 14:09
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
MVI M,4DH

В контроллер записывается число на единицу меньше, т.е. реально 78 столбцов (4Eh). А значение 0 это уже 1 строка.

MVI M, 1DH

И 30 строк (1Eh)


20 Apr 2013 14:38
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
vinxru wrote:
В контроллер записывается число на единицу меньше,
т.е. реально 78 столбцов (4Eh).

Да вот я и туплю на этот повод... в контроллере ПДП ВТ57 - там явно сказано,
"число циклов" - 1 (при настройке).

А вот у ВГ75 я такого что-то не помню... и у меня что-то расчет для "РК-86" не сходится:
сдвиговый регистр тактируется частотой 8МГц ~ 125 нс.

Размер стандартной строки 64 мкс. Делим: 64 мкс на 0.125 мкс = 512 точек в строке.
Как я говорил, в "РК-86" настраивается строчный синхроимпульс,
а не строчный гасящий, и ССИ, согласно настройке, - выбран равным
времени отображения восьми знаков.

Предположим, что знаков в строке 78, как мы и насчитали...
Вместе с ССИ в полной строке 78 + 8 = 86 символов.

Считаем число точек на 1 знакоместо: 512 точек / 86 знакомест = 5,95 точек -
округляем - это 6 точек.

Теперь проверяем... если в строке 78 знакомест, т.е. 86 знакомест вместе с
ССИ, то 86 знакомест * 6 точек = 516 точек в полной строке.
А если в строке 77 знакомест, т.е. 85 знакомест вместе с
ССИ, то 85 знакомест * 6 точек = 510 точек в полной строке.

Но при 8МГц в строке 512 точек...
В принципе и 510 точек в полной строке и 516 точек в полной строке в
параметры телевизионной развёртки влезут...
Но что из них верно?

_________________
iLavr


Last edited by Lavr on 20 Apr 2013 17:08, edited 1 time in total.



20 Apr 2013 15:25
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
Вот я демку подготовил для Апогея. Там RKA для загрузки в эмулятор, исходники, компилятор.

http://rghost.ru/45438127


20 Apr 2013 15:50
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
Lavr wrote:
А вот у ВГ75 я такого что-то не помню...


То же -1

http://www.emuverse.ru/wiki/Intel_8275/ ... 0%B8%D1%8F


20 Apr 2013 15:51
Profile
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
> Но при 8МГц в строке 512 точек...

Не, кол-во точек в строке привязано не к таковой частоте, а к ССИ формируемому контроллером.

Контроллер тактируется частотой 8/6 = 1,3(3) Мгц.

Что бы получить частоту строк 15625 Гц, надо что бы в строке было 85,3 символа.

8000000 / 6 / 15625 = 85,3(3)

То есть теоретически нельзя сделать правильно. Строку нельзя поделить на целое кол-во символов при такой частоте.

Вот и получается, что контроллер выдает нестандартную частоту строк.

8000000 / 6 / 86 = 15504 Гц


20 Apr 2013 16:02
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
vinxru wrote:
Не, кол-во точек в строке привязано не к таковой частоте, а к ССИ формируемому контроллером.
Контроллер тактируется частотой 8/6 = 1,3(3) Мгц.

Тоже не совсем так... сдвиг по строке идёт с частой 8 МГц, но единица измерения при настойке КЭЛТ -
знакоместо и знакоряд.
В матрице символа - 6 точек растра на знакоместо. Отсюда и вылезла тактовая CCLK = 8/6 = 1,3(3) МГц.

С числом символов - я вспомнил, что это не реальное "число", а фактически код из таблицы:

Image

и он действительно на 1 меньше реального числа знакомест в строке.

Поэтому все те, кто пишут, что настройка КЭЛТ - 77 знакомест в ряду, вводят народ в заблуждение.

4Dh - это 78 знакомест в ряду по таблице 11.


А расчет у меня всё-таки совершенно правильный. Первоначально отталкиваются от
тактовой частоты сдвига и количества точек на знакоместо по горизонтали.

Значит я насчитал: 86 знакомест в полной строке, что соответствует 516 точкам в ней.
При частоте сдвига 8 МГц, 1 точка сдвигается за 125 нс.
Значит 516 точек * 125 нс = 64,5 мкс - длительность полной строки.
Откуда частота строк при данной настройке: 1 / 64,5 мкс = 15503,87 Гц.
Что и есть твои: 8000000 / 6 / 86 = 15504 Гц :lol:
:kruto:

_________________
iLavr


20 Apr 2013 16:41
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Кстати говоря - из картинки стандарта видеосигнала строчный синхроимпульс
равен 4.7 мкс.

В настройке КЭЛТ ВГ75 ССИ выбрали равным 8 знакам...
Отсюда он тоже не совсем стандартный - 6 * 8 * 0.125 нс = 6 мкс.

Равным 7 знакам его выбрать нельзя, но был бы 5.2 мкс.

При выборе 6 знаков ССИ чуть коротковат и равен 4.5 мкс.

Но при этом частота строчной развертки будет составлять 15873 Гц.
А добавлять ещё 2 символа в каждую строку - это ОЗУ совсем уж не жалеть... :wink:



PS. Да, интересно, но по ссылке Intel 8275/Документация
приведена таблица, аналогичная приведенной мной таблице 11.
Я из документации на "Микрошу" её выдернул, а вот откуда по
той ссылке они её откопали?...
Видны "уши" от общего источника. В справочнике Шахнова такой таблицы нет.


И надо бы Вадиму Кудрявцеву сказать, что ошибочка у него:
CC0-CC6 Вход Chip Select (Выбор микросхемы) - это неправда. :oops:

Правильно будет:
/CS Вход Chip Select (Выбор микросхемы)
CC0-CC6 Выходы Character Code (Адрес кода символа (код символа)).


И передрали эту ошибочку "добросовестно, исключительно для образовательных
некоммерческих целей
" у Эдуарда Пройдакова. :lol:
Который раз эту ошибку у него передирают, и я когда-то давно купился... :wink:

_________________
iLavr


20 Apr 2013 17:26
Profile
Devil

Joined: 26 May 2003 06:57
Posts: 863
Reply with quote
Post 
vinxru wrote:
компилятор

Ты бы ещё msvcp100d.dll и msvcr100d.dll приложил, а то не у всех есть runtime от 10-той версии MS VC++, да ещё и debug версии :)

А ещё, если компилятор будет выдавать в .asm ";:" перед C-шной строкой (а не только ";" ) то она тоже будет видна в отладчике. Вообще-то эта фича только для меток, но её можно использовать и так.

Желательно также, там, где не метка, не два пробела перед строкой выдавать, а один символ табуляции.

_________________
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/


21 Apr 2013 01:43
Profile WWW
Retired

Joined: 27 Mar 2013 04:55
Posts: 587
Location: 62.192.229.16
Reply with quote
Post 
Косяк :) Я обычно отдаю Release, который работает без DDL-ки.


21 Apr 2013 03:49
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
b2m wrote:
Ты бы ещё msvcp100d.dll и msvcr100d.dll приложил, а то не у всех есть runtime
от 10-той версии MS VC++, да ещё и debug версии :)

Вот тут ты кардинально прав... :lol:
В связи с написанием библиотек под Proteus, у меня и вовсе сейчас
MSVC++ 5.0 установлен... :wink:

_________________
iLavr


21 Apr 2013 04:42
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 147 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 10  Next

Who is online

Users browsing this forum: No registered users and 52 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.