Проектирование семиканального программно-аппаратного комплекса для платы ЛА-70М4

Рассмотрение технических параметров и особенностей платы ЛА-70М4. Описание установки базового адреса, выбора коэффициента усиления. Графический, текстовый редактор Screen 9. Программное обеспечение по обработке сигналов с датчиков первичной информации.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык русский
Дата добавления 28.12.2014
Размер файла 899,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Введение

Плата адаптера ЛА-70 предназначена для сбора данных и рассчитана на использование с компьютерами IBM PC/XT/AT или совместимых с ними. Она содержит три функциональных устройства: аналогово-цифровой канал (АЦК) с 12 разрядным аналогово-цифровым преобразователем (АЦП) (время преобразования 70 мкс), 16 разрядный цифровой порт (ЦП) и схему обработки прерываний. Адаптер обеспечивает ввод и вывод 16 цифровых и ввод в компьютер 16 аналоговых сигналов, преобразованных в цифровую форму.

Аналогово-цифровой канал (АЦК) включает в себя входной мультиплексор, полный инструментальный усилитель, устройство выборки-хранения и АЦП. Это позволяет задать либо 16 однополюсных каналов, либо 8 дифференциальных каналов (переключатель SA2).

Инструментальный усилитель имеет переключаемые (SA6) коэффициенты усиления: 1; 2; 5; 10 или пользовательский. Последний коэффициент усиления позволяет пользователю при установке соответствующего резистора на предусмотренное место получить любой коэффициент усиления инструментального усилителя в диапазоне 2-100.

Устройство выборки-хранения (УВХ) позволяет расширить полосу АЦК до 13 кГц (время выборки 6 мкс). УВХ находится в режиме выборки сигнала до начала цикла преобразования. По старту преобразования переходит в режим хранения. По импульсу конца преобразования (ИКП) УВХ опять переходит в режим выборки. Время выборки - 6 мкс всегда дано УВХ после старта преобразования для устойчивой работы АЦП на максимальной скорости преобразования. Это позволяет использовать АЦК с укороченным циклом преобразования, то есть старт АЦП можно задавать чаще, чем 13 кГц, при этом будет происходить уменьшение разрядности. Численные зависимости приведены в описании технических характеристик. Режим укорочения цикла преобразования с уменьшением разрядности достижим также из-за применения АЦП последовательного приближения КР572ПВ1. Вообще, возможно использовать АЦК ЛА-70 как компаратор. При этом максимальная скорость при одноразрядном преобразовании составит около 11 мкс, для двух разрядов около 16 мкс и так далее. Описанные особенности платы ЛА-70 позволяют использовать ее для разных применений с максимальной пользой. АЦП совместно со специализированным программным пакетом может работать как цифровой осциллограф или спектроанализатор в реальном масштабе времени (для этого служит программа VM, входящая в комплект поставки). АЦП может быть использован в промышленных и лабораторных условиях для:

· сбора данных с целью управления различными процессами и автоматического контроля,

· измерения параметров аналоговых сигналов в полосе до 7 кГц по каждому каналу (при увеличении числа каналов, входная полоса по каждому из них уменьшается пропорционально числу каналов).

· применима для медленноменяющихся сигналов, как много канальный вольтметр для мониторинга (используется на крупнейших металлургических комбинатах в качестве приемника сигналов с термопар, которые измеряют разность температур в котлах, домнах и т.п. Для повышения точности измерений необходимо использовать усреднение по нескольким измерениям).

Цифровой порт ввода/вывода выполнен на микросхеме КР580ВВ55, имеющей три независимых восьмиразрядных порта, которые могут быть запрограммированы как на ввод, так и на вывод. Два из трех - РА и РВ использованы как цифровой порт. Сигналы этих портов выведены на внешний разъем ХР1. Третий порт PC применяется в качестве статусного регистра (используются два бита РСО и РСI во внутренней структуре платы). На внешний разъем цифрового порта, кроме битов портов РА и РВ, выведены еще два сигнала - EXT_INT внешнее прерывание и EN_INT разрешение прерывания. С помощью этих сигналов можно управлять контроллером прерывания IBM PC.

С помощью схемы выбора режима (переключатель SA5) вместо EN_INT на схему прерываний платы ЛА-70 со статусного регистра можно подать сигнал РСО и разрешать или запрещать программно прерывание EXT_INT с внешнего разъема. При этом младший полубайт порта PC (статусный регистр) должен быть запрограммирован на вывод. Для этого служит контрольный регистр цифрового порта.

Цифровой порт может быть использован для:

· подключения плоттера к IBM PC,

· подключения цифрового магнитофона,

· чтения состояния цифровой шины периферийного устройства.

Плата ЛА-70 - это высококачественная низкостоимостная плата для мониторинга в различных областях науки, техники и производства.

Области применения:

· автоматизированные системы управления производством;

· экология и санитария;

· обучающие системы (тренажеры и лабораторное оборудование);

· мониторинг медленноменяющихся процессов;

· техническая диагностика и контроль действующих механизмов на производстве;

· полевые и стендовые испытания;

· контроль качества;

· в качестве аналогового и цифрового самописца.

1. Функциональная схема платы ЛА70

Плата ЛА70 предназначена для сбора данных и рассчитана на использование с компьютерами IBM PC/XT/AT или совместимыми с ними. Она содержит три функциональных устройства: аналогово-цифровой канал (АЦК) с 12-разрядным аналогово-цифровым преобразователем (АЦП) - время преобразования 70 мкс, 16-разрядный цифровой порт (ЦП) и схему обработку прерываний. Плата обеспечивает ввод и вывод 16 цифровых и ввод в компьютер 16 аналоговых сигналов, преобразованных в цифровую форму.

Аналогово-цифровой канал (АЦК) включает в себя входной мультиплексор, полный инструментальный усилитель, устройство выборки-хранения и АЦП. Это позволяет задать ли 16 однополюсных каналов, либо 8 дифференциальных каналов.

FU1 - предохранитель, через который может быть подано напряжение +5В с шины IBM PC на 1 контакт разъема ХР1. Предохранитель должен быть рассчитан на ток 500 мА;

SA2 - переключатель, выбирает режим работы инструментального усилителя - однополюсный или дифференциальный;

SA3 - переключатель, выбирает сигнал прерывания IRQ IBM PC;

SA4 - переключатель, выбирает базовый адрес платы (используется шестнадцатеричная система для номера);

SA5 - переключатель, выбирает режим работы драйвера прерывания - от внешнего источника или от АЦП;

SA6 - переключатель, выбирает коэффициент усиления инструментального усилителя (равен единице при разомкнутых перемычках);

R28 - балансировка нуля аналогово-цифрового канала;

R41 - одновременная регулировка для всех диапазонов масштаба усиления;

R63 - регулировка коэффициента подавления синфазной помехи для дифференциального режима.

2. Технические параметры платы ЛА-70М4

2.1 Отличительные особенности

12 разрядов АЦП; время преобразования - 70 мкс; 16 однополюсных или 8 дифференциальных каналов; входные диапазоны напряжений: ±5В, ±2,5В, ±1В, ±0,5В, пользовательский; (выбираются переключателем на плате); запуск АЦП: программный, внешний; число эффективных разрядов - 11,2 при частоте входного сигнала 1 кГц; 16 цифровых линии ввода/вывода, программируются как два 8 разрядных порта; генерация прерывания с внешнего разъёма.

Применяется для решения научных, ученых и производственных задач:

автоматизированные системы управления производством; экология и санитария; обучающие системы (тренажеры и лабораторное оборудование); мониторинг медленноменяющихся процессов; техническая диагностика и контроль действующих механизмов на производстве; полевые и стендовые испытания; контроль качества; в качестве аналогового и цифрового самописца.

Технические параметры

АЦП

Количество аналоговых входов

16 однополюсных или 8 дифференциальных

Входное сопротивление (импеданс)

более 100 МОм

Тип АЦП

последовательного приближения

Количество бит в выходном регистре АЦП

12

Максимальная частота выборки

13 кГц

Время преобразования (с учетом УВХ)

70 мкс

Диапазоны входного сигнала однополюсный:

±5В; ±2,5В; ±1В; ±0,5В

дифференциальный:

±2,5В; ±1В; ±0,5В; ±0,25В

Защита по напряжению входных цепей

±15В

Передача данных

по прерыванию, программный обмен

Цифровой порт

Количество линий

16 цифровых линий ввода или вывода, организованных в два восьмибитных порта

Уровни и пороговые значения

ТТЛ совместимые

Общие данные

Шина интерфейса с ПЭВМ

ISA-8

Потребляемая мощность

+5В, 350 мА +12В, 40 мА -12В, 45 мА

Габариты

100 x 155 мм

2.2 Установка базового адреса

Плата ЛА70 имеет восемь базовых адресов (для управления от компьютера), которые выбираются переключателем SA4 и принимают следующие значения, приведенные в таблице:

Базовый адрес

А4

А5

А8

200 (200-205)

..0

..0

..0

210 (210-215)

..1

..0

..0

220 (220-225)

..0

..1

..0

230 (230-235)

..1

..1

..0

300 (300-305)

..0

..0

..1

310 (310-315)

..1

..0

..1

320 (320-325)

..0

..1

..1

330 (330-335)

..1

..1

..1

Перемычка замкнута - соответствующая ей адресная линия имеет уровень логического "0", при разомкнутой перемычке - уровень логической "1".

Для базового адреса 220 перемычки устанавливают следующим образом:

2.3 Выбор коэффициента усиления

Коэффициент усиления может принимать следующие значения:

В приведенной ниже таблице указано соответствие между коэффициентом усиления и входным напряжением платы:

Коэффициент усиления

1

2

5

10

Однополюсный

±5В

±2,5В

±1В

±0,5В

Увеличение коэффициента усиления приводит к ухудшению отношения сигнал/шум и, как следствие, числа эффективных разрядов. Ниже приведена зависимость этих параметров от коэффициента усиления.

Режим инструментального усилителя - однополюсный; частота запуска АЦП - 10 кГц; входная частота - 1 кГц.

Коэффициент усиления

1

2

5

10

Число эффективных разрядов

11

10,5

10

9,6

Соотношение С/Ш (дБ)

70

66

63

60

Режим инструментального усилителя - дифференциальный; частота запуска АЦП - 10 кГц; входная частота - 1 кГц.

Коэффициент усиления

1

2

5

10

Число эффективных разрядов

11

10,8

10,4

10

Соотношение С/Ш (дБ)

70

68

65

62

В техническом задании установлен коэффициент усиления k=1.

Смотрим таблицу и видим, что перемычку устанавливать не требуется:

2.4 Описание регистров платы

Управление платой ЛА-70М4 производится посредством чтения-записи внутренних регистров платы.

Все регистры платы имеют 8-разрядный интерфейс.

В первой колонке указано смещение выбираемого регистра относительно базового адреса (В=220):

Чтение

Запись

В+0

Цифровой порт ввода РА

Цифровой порт вывода РА

В+1

Цифровой порт ввода РВ

Цифровой порт вывода РВ

В+2

Статусный регистр

Статусный регистр

В+3

Не используется

Контрольный регистр

В+4

Младший байт данных АЦП

Запуск (старт) АЦП (записывается любое число)

В+5

Номер канала и данные АЦП

Номер канала запуска АЦП

Регистры цифрового порта

Цифровой порт использует 4 входных/выходных адреса пространства адресов IBM PC.

Их распределение выглядит следующим образом:

220+0 порт РА чтение/запись

220+1 порт РВ чтение/запись

220+2 порт РС чтение/запись (на внешний разъем не выведен)

220+3 контрольный регистр только запись

Программирование может быть осуществлено на любом языке, имеющем компиляторы на IBM PC, и осуществляется записью необходимой информации в контрольный регистр 220+3.

В таблице приведены значения управляющего слова для различных вариантов работы:

Управляющее слово (шестнадцатеричное)

Режимы работы

порт А

порт В

порт С старшая

порт С младшая

88

вывод

вывод

ввод

вывод

вывод

ввод

ввод

вывод

98

ввод

вывод

ввод

вывод

ввод

ввод

ввод

вывод

Установленная конфигурация сохраняется до следующей записи в контрольный регистр, но при записи значения данных в портах обнуляются.

Следовательно, если нужно иметь повторяющиеся изменения в конфигурации, то после каждой записи в контрольный регистр необходимо в программе обновлять данные в портах.

Статусный регистр (доступен для записи и чтения)

220+2 Чтение

РС7

РС6

РС5

РС4

РС3

РС2

РС1

РС0

Биты статусного регистра

ИКП

х

х

х

х

х

х

х

состояние

Размещено на http://www.allbest.ru/

импульс конца преобразования АЦП

Размещено на http://www.allbest.ru/

При ИКП равным логической единицы - преобразование окончено.

220+2 Запись

РС7

РС6

РС5

РС4

РС3

РС2

РС1

РС0

Биты статусного регистра

х

Х

х

х

х

х

х

РС0

состояние

При РС0=0 - прерывание разрешено,

РС0=1 - прерывание запрещено.

Если используются режимы переключения SA5, то РС0=0 - разрешает прерывание от выбранного переключателем SA5 источника, а РС0=1 запрещает прерывание.

Регистр данных и программного запуска АЦП (доступен для чтения, при записи запуск АЦП)

220+4 Чтение

D7

D6

D5

D4

D3

D2

D1

D0

Биты шины IBM PC

D7

D6

D5

D4

D3

D2

D1

D0

биты младшего байта АЦП

220+4 Запись

При записи любого числа по команде записи начинается преобразование АЦП.

Если старший полубайт цифрового порта РС (статусный регистр) запрограммирован на ввод (220+3 записать шестнадцатеричное число 88; 8А; 98 или 9А), то в регистре 220+2 бит РС7, приняв значение логической единицы сигнализирует об окончании цикла преобразования АЦП.

Время преобразования составляет 65-80 мкс в зависимости от образца платы ЛА-70М4.

Регистр данных АЦП и номера канала (доступен для чтения и записи)

220+5 Чтение

D7

D6

D5

D4

D3

D2

D1

D0

Биты шины IBM PC

СН3

СН2

СН1

СН0

D11

D10

D9

D8

биты номера канала и данных АЦП

D8..D11 - старшие биты АЦП;

CH0..CH3 - биты номера канала мультиплексора, которому соответствуют данные с АЦП.

220+5 Запись

D7

D6

D5

D4

D3

D2

D1

D0

Биты шины IBM PC

х

х

х

х

СН3

СН2

СН1

СН0

биты номера канала

Соответствие битов номера канала, по которому будет производиться преобразование, самому каналу мультиплексора приведено в таблице:

СН3

СН2

СН1

СН0

номер канала при однополюсном режиме ЛА-70М4

номер канала при дифференциальном* режиме ЛА-70М4

0

0

0

0

0

0

0

0

0

1

1

1

0

0

1

0

2

2

0

0

1

1

3

3

0

1

0

0

4

4

0

1

0

1

5

5

0

0

1

0

6

6

0

0

1

1

7

7

1

0

0

0

8

0

1

0

0

1

9

1

1

0

1

0

10 (А16)

2

1

0

1

1

11 (В16)

3

1

1

0

0

12 (С16)

4

1

1

0

1

13 (D16)

5

1

1

1

0

14 (E16)

6

1

1

1

1

15 (F16)

7

* - в дифференциальном режиме каждый канал ЛА-70-М4 имеет два входа - инвертирующий и неинвертирующий, поэтому чисто каналов в два раза меньше чем у однополюсного режима.

В таблице ниже приведены регистры для программирование режимов АЦП:

чтение

запись

220+4

младший байт данных АЦП

запуск АЦП (записывается любое число)

220+5

старший полубайт

младший полубайт

переключение канала (записывается число, соответствующее необходимому каналу)

D7D6D5D4

D3D2D1D0

Номер канала, по которому запускалось АЦП

Размещено на http://www.allbest.ru/

4 старших разряда АЦП

Пример программирования:

low_byte DB (?)

high_byte DB (?)

channel EQU 1

baseaddress EQU 220h

MOV AL,channel ; выбор канала

OUT baseaddress+5,AL

MOV AL,1 ; запуск

OUT baseaddress+4,AL

… ; пауза

IN baseaddress+4,AL ; младший байт

MOV low_byte,AL

IN baseaddress+5,AL ; старший байт

MOV high_byte,AL

3. Графический, текстовый редактор Screen 9

Screen 9 - это графический редактор, позволяющий зажечь любую точку на экране.

В техническом задании установлено количество окошек: 10.

Координаты точек опишем в соответствии с рисунком.

Программа построения окошек будет выглядеть следующим образом:

CLS

SCREEN 9

LINE (10,10)-(195,80), 2, BF точки 1 и 2

LINE (15,75)-(190,75), 0 точки 3 и 4

LINE (15,75,)-(15,15), 0 точки 3 и 5

LINE (215,10)-(405,80), 2, BF точки 6 и 7

LINE (220,75)-(400,75), 0 точки 8 и 9

LINE (220,45)-(220,15), 0 точки 8 и 10

LINE (425,10)-(630,80), 2, BF точки 11 и 12

LINE (430,75)-(625,75), 0 точки 13 и 14

LINE (430,75)-(430,15), 0 точки 13 и 15

LINE (120,90)-(300,170), 2, BF точки 16 и 17

LINE (125,165)-(395,165), 0 точки 18 и 19

LINE (125,165)-(125,95), 0 точки 18 и 20

LINE (340,95)-(520,170), 2, BF точки 21 и 22

LINE (345,165)-(515,165), 0 точки 23 и 24

LINE (345,165)-(345,95), 0 точки 23 и 25

LINE (10,180)-(195,245), 2, BF точки 26 и 27

LINE (15,245)-(190,245), 0 точки 28 и 29

LINE (15,245)-(15,185), 0 точки 28 и 30

LINE (215,180)-(405,240), 2, BF точки 31 и 32

LINE (220,235)-(400,235), 0 точки 33 и 34

LINE (220,235)-(220,185), 0 точки 33 и 35

LINE (425,180)-(630,250), 2, BF точки 36 и 37

LINE (430,245)-(625,245), 0 точки 38 и 39

LINE (430,245)-(430,185), 0 точки 38 и 40

LINE (120,260)-(300,350), 2, BF точки 41 и 42

LINE (125,335)-(295,335), 0 точки 43 и 44

LINE (125,335)-(125,265), 0 точки 43 и 45

LINE (340,260)-(520,340), 2, BF точки 46 и 47

LINE (345,335)-(515,335), 0 точки 48 и 49

LINE (345,335)-(345,265), 0 точки 48 и 50

LOCATE 2, 12

PRINT "D1"

LOCATE 2, 38

PRINT "D2"

LOCATE 2, 66

PRINT "D3"

LOCATE 8, 24

PRINT "D4"

LOCATE 8, 52

PRINT "D5"

LOCATE 14, 12

PRINT "D6"

LOCATE 14, 38

PRINT "D7"

LOCATE 14, 66

PRINT "D8"

LOCATE 20, 24

PRINT "D9"

LOCATE 20, 52

PRINT "D10"

3.1 Программное обеспечение по обработке сигналов с датчиков первичной информации

В техническом задании установлено количество датчиков: 10, коэффициент передачи - 6, а базовый адрес - 220, поэтому программа будет выглядеть следующим образом:

CLS

SCREEN 9

OPEN "D.DAT" FOR OUTPUT AS # 1

B=&H220

FOR I=0 TO 9

FOR J=1 TO 100

OUT (&H220+5), I

OUT (&H220+4), 1

5. a=INP (&H220+2)

b=а AND 128

IF B=128 THEN GOTO 10 ELSE 5

10. c=INP (&H220+4)

c1=INP (&H220+4)

c2=(c1 AND 15)* 2 ^ 8

c3=c + c2

Kпер=6

X=(c3*10*Kпер)/4095

PRINT #1, X

NEXT J

NEXT I

OPEN "D.DAT" FOR INPUT AS # 1

FOR D=1 TO 100

INPUT 1, E

PSET (15+K, 75-E), 1

NEXT D

FOR F=101 TO 200

INPUT 1, G

PSET (220+F, 75-G), 1

NEXT F

FOR H=201 TO 300

INPUT 1, K

PSET (430+H, 75-K), 1

NEXT H

FOR L=301 TO 400

INPUT 1, M

PSET (125+L, 165-M), 1

NEXT L

FOR N=401 TO 500

INPUT 1, O

PSET (345+N, 165-O), 1

NEXT N

FOR P=501 TO 600

INPUT 1, Q

PSET (15+P, 245-Q), 1

NEXT P

FOR R=601 TO 700

INPUT 1, S

PSET (220+R, 245-S), 1

NEXT R

FOR T=701 TO 800

INPUT 1, U

PSET (430+T, 245-U), 1

NEXT T

FOR V=801 TO 900

INPUT 1, W

PSET (125+V, 335-W), 1

NEXT V

FOR X=901 TO 1000

INPUT 1, Y

PSET (345+X, 335-Y), 1

NEXT X

CLOSE

Заключение

Компьютеры в настоящее время становятся не только вычислительными средствами, они превращаются в универсальные виртуальные измерительные приборы. Устройства на основе персонального компьютера (ПК) - заменяют стандартные измерительные приборы: вольтметры, самописцы, осциллографы, магнитографы, спектроанализаторы и другие на систему виртуальных приборов. Такая система состоит из компьютера, наличие которого сегодня является необходимым условием качественных и быстрых измерений, и одной-двух плат сбора данных (ПСД), причём, программная часть виртуального прибора может эмулировать переднюю управляющую панель стационарного измерительного устройства.

Разработанные платы позволяют превратить компьютер в универсальную измерительную лабораторию. Характеристики такого прибора: динамический и частотный диапазоны, чувствительность, разрешение и другие характеристики определяются выбранными устройствами (ПСД).

Данные устройства можно разбить на несколько групп: измерительные платы АЦП и ЦАП, цифровые ТТЛ-совместимые платы и дополнительные согласующие устройства. Большой спектр функционально совместимых устройств позволяет создавать комплексы обработки сигналов на базе персонального компьютера IBM, промышленных и портативных компьютеров.

В результате проделанной контрольно-курсовой работы мною был разработан семиканальный программно-аппаратный комплекс для платы ЛА-70М4. Данный комплекс позволяет значительно облегчить примитивный труд человека, свести к нулю физические затраты на производстве и в других областях науки и техники, а также тем самым ускорить рабочий процесс.

Этот комплекс предназначен для сбора данных с целью управления различными процессами и автоматического контроля, измерения параметров аналоговых сигналов, применяется в качестве измерительных приборов и аналогового и цифрового самописцев.

Список литературы

1. А.В. Белов "Самоучитель по микропроцессорной технике"

2. Ю.М. Келим "Типовые элементы систем автоматического управления"

3. Р. Такхейм "Основы цифровой электроники"

4. Дж. Смит "Сопряжение компьютеров с внешними устройствами"

Приложение 1

Установка и подготовка к работе с платой ЛА 70

1. Проверить комплект поставки

2. Дотронуться до любого заземленного предмета для снятия заряда статического электричества

3. Вынуть плату из упаковки, как показано на рисунке.

4. Протереть разъем интерфейса платы слегка увлажненной спиртом тканью или ватой.

5. Выключить компьютер и периферийные устройства из электрической сети.

6. Отвинтить крепежные винты крышки системного блока и снять ее.

7. Найти на системной плате компьютера свободный разъем шины.

8. Удалить из корпуса компьютера соответствующую заглушку гнезда заземления.

9. Поместить плату над разъемом расширения и вставить в разъем сначала один ее конец, затем другой. Осторожно надавить на верхнее ребро платы, чтобы она вошла в разъем целиком.

10. Закрепить винтом металлический кронштейн платы

11. Установить на место крышку системного блока

12. Подключить периферийные устройства

13. Вставить шнур питания компьютера в электрическую розетку. Включить питание

14. Установить программное обеспечение

Приложение 2

Описание операторов, применяемых в программном обеспечении

Cls

CLS - оператор очистки экрана дисплея.

CLS [0 | 1 | 2]

Если все аргументы опущены, очищаются и графический и текстовый экраны.

0 - очищается и текстовый и графический экраны.

1 - очищается только графический экран, если он активен.

2 - очищается только текстовый экран, исключая нижнюю строку

Screen 9 (функция)

SCREEN - графическая функция, читающая ASCII-код символа или его цвет в указанном месте экрана.

SCREEN [строка, столбец [, флаг_цвета]]

Стока - номер строки экрана, целое выражение без знака.

Столбец - номер столбца, целое выражение без знака.

Флаг_цвета - целое числовое выражение. Если флаг_цвета не равен 0, SCREEN возвращает значение цвета. Если он равен 0 или отсутствует, возвращается ASCII-код символа, находящегося в указанном месте.

Значение цвета в текстовом режиме экране кодируется следующим образом: основной + фоновый * 16.

Screen 9 (оператор)

SCREEN - графический оператор, устанавливающий спецификацию экрана.

SCREEN [режим]

[,[цвет]][,[стр_вывода]][,[стр_экрана]]

Режим - целое выражение, указывающее режим экрана.цвет - определяет, будет ли информация выдаваться в цвете. Числовое выражение в пределах 0-255.

Если цвет не равен нулю, информация выдается только в черно-белом виде. Если цвет равен нулю, цвет сохраняется. Значение аргумента цвет инвертируется в режиме 0. в режимах 2 и выше аргумент игнорируется.

Стр_вывода - числовое выражение, номер активной экранной страницы, на которой выводится текст или графика.

Стр_экрана - числовое выражение, номер текущей экранной страницы.

Screen 9

В этом режиме цвет рамки не задается. Фоновый цвет определяется значением соответствующего параметра, тогда как основной цвет зависит от содержания текущей палитры и определяется по номеру атрибута в данной палитре.

SCREEN - это графический режим с разрешением 640Ч350. для него требуется адаптер EGA или VGA.

Текстовый формат - 80Ч25, 8Ч8 - размер символа.

64К - размер страницы.

16 цветов для 4 атрибутов.

64 цвета для 16 атрибутов.

For…Next

При разработке программ часто приходится изменять порядок следования операторов. Только в очень простых программах операторы выполняются один за другим - управление передается последовательно, от оператора к оператору. На практике же, необходимые средства для изменения порядка следования операторов передачи управления - обеспечивают операторы цикла и условные операторы.

Циклы используются в том случае, когда вам необходимо несколько раз выполнить один и тот же фрагмент исходного текста.

Цикл For…Next - это цикл с заранее заданным количеством повторений. Можно выйти из цикла не дожидаясь выполнения всех повторений, воспользовавшись альтернативным выходом Exit for. Управлениебудет передано на оператор, стоящий после NEXT.

FOR счетчик = начало TO конец [STEP шаг]

[операторы_цикла]

[EXIT FOR]

NEXT [счетчик [, счетчик…]]

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

Начало - начальное значение счетчика.

Конец - конечное значение счетчика.

Шаг - шаг изменения значения счетчика, по умолчанию - 1.

Цикл For…Next выполняется только в том случае, если начало плюс шаг меньше или равно конечному значению счетчика. Если конец меньше начала, то шаг должен быть отрицательным.

Цикл выполняется до тех пор, пока текущее значение счетчика не выйдет за рамки его конечного значения. Допускается вкладывать циклы, то есть помещать цикл For…Next внутри другого цикла For…Next. Счетчикам вложенных циклов необходимо давать разные имена.

Оператор Next для внутреннего цикла должен предшествовать оператору Next для внешнего цикла.

If…Then…Else

Условные операторы помогают осуществить "ветвление" программы, то есть передать управление по условию, на ту или иную "ветку".

If…Then…Else обычно используется, когда проверяется одно или два условия в программе.

If…Then…Else - управляющий оператор, осуществляющий условное ветвление операций, основанное на оценке логического выражения, Выражение может быть истинным и ложным.

If…Then…Else можно записать в блочной или линейной форме.

Блочная форма

Линейная форма

If логическое_выражение_1 Then [операторы_1] [Else логическое_выражение_2]

If логическое_выражение_1 Then [операторы_1 [Else операторы_2]

Логическое_выражение_1 - выражение, возрастающее ненулевое значение (истина) или ноль (ложь).

Операторы_1 - любое количество операторов, выполняющихся при условии: логическое!выражение_1 - "истина".

Логическое_выражение_2 - выражение, возрастающее ненулевое значение (истина) или ноль (ложь).

Операторы_2 - операторы, выполняющиеся при значении "ложь".

Input

Input - оператор ввода/вывода, считывающий данные с клавиатуры во время выполнения программы и размещающий их в списке переменных.

INPUT [;] [вопрос* [ ;| , ]] переменные

; - точка с запятой сразу после Input оставляет курсор на той же линии экрана после нажатия клавиши "ENTER".

"Вопрос" - символьная константа. Приглашение к вводу данных.

; - печатает знак вопроса после символьной строки.

, - печатает строку без знака вопроса.

Переменные - список переменных, разделенных запятыми, принимающих введенное значения.

Оператор Input останавливает программу и ждет ввода данных. Количество вводимых данных должно соответствовать количеству переменных в списке.

Переменные могут быть числовыми и символьными, элементами массивов, записей. Типы данных в списке и вводимых с клавиатуры должны совпадать.

Open

Open - оператор ввода/вывода, включающий ввод/вывод в файл или устройство.

OPEN файл [FOR тип] [ACCESS доступ] [блок]

AS [#] номер [LEN=длина]

Файл - символьное выражение, определяющее имя устройства или файла, включая путь.

Тип - одно из описанный ниже ключевых слов.

Номер - целое выражение от 1 до 255, номер файла.

Длина - длина записи (по умолчанию равна 128 байт для файлов прямого доступа и 512 для файлов последовательного доступа; для двоичных файлов длину указывать не требуется).

Необходимо открыть файл перед любыми операциями ввода/выводы, производимыми с ним. OPEN размещает буфер для ввода/вывода и устанавливает тип доступа к файлу.

Тип

Описание

OUTPUT

Определяет последовательный вывод

INPUT

Определяет последовательный ввод

APPEND

Определяет последовательный вывод с добавлением, то есть устанавливает указатель записи к концу файла

RANDOM

Определяет прямой ввод/вывод (умалчиваемый тип). Если нет условия ACCESS, доступ выполняется в следующем порядке: 1. Чтение/запись; 2. Только запись; 3. Только чтение.

BINARY

Определяет двоичный ввод/вывод.

Если тип опущен, то по умолчанию присваивается тип RANDOM.

Выражение "доступ" определяет разрешенные операции с открытым файлом.

Условие ACCESS работает с оператором OPEN только в версии DOS.

Close

Close - оператор ввода/вывода, закрывающий файл или устройство.

CLOSE [[#] номер_файла [, [#] номер_файла]…]

Номер_файла - логический номер открытого файла.

Если все аргументы опущены, закрываются все файлы и устройства.

Close очищает весь буфер для закрываемого файла или устройства.

Out

Out - оператор ввода/вывода, посылающий байт в порт ввода/вывода.

Out порт, данные

Порт - целое числовое выражение от 0 до 65535, определяющее требуемый порт ввода/вывода.

Данные - целое числовое выражение от 0 до 255, данные, посылаемые в порт.

Line

LINE - графический оператор, рисующий линию или прямоугольник.

LINE [[STEP] (X1,Y1)]-[STEP] (X2,Y2)

[,[цвет][,[B[F]] [,стиль]])

(X1,Y1) - координаты начала линии.

(X2,Y2) - координаты конца линии.

STEP - указывает на относительные координаты, то есть координаты вычисляются как смещения относительно последней точки.

Цвет - номер цвета линии. Если заданы опции B или BF, прямоугольник рисуется этим цветом.

B - опция, рисующая прямоугольник с координатами верхнего левого угла (X1,Y1) и нижнего правого угла (X2,Y2).

BF - опция, рисующая закрашенный указанным цветом прямоугольник.

Стиль - 16-битная маска, задающая тип линии. Оператор LINE читает биты маски слева направо. Если бит = 0, точка не рисуется, если бит = 1, рисуется точка данного цвета.

Стиль не влияет на закрашенные прямоугольники.

Если указанные координаты выходят за текущий экран вывода, "лишняя" линия обрезается у границы экрана вывода.

Pset

Pset - графический оператор, рисующий точку на экране.

PSET [STEP] (X,Y) [,цвет]

(X,Y) - координаты точки на экране.

STEP - указывает, что координаты берутся как смешение относительно текущего положения графического курсора.

Если цвет опущен, используется текущий основной цвет.

Если координаты точки находятся вне экрана, то никаких действий не производится и сообщений об ошибке не выдается.

Locate

Для того, чтобы красиво разместить текст на экране, в языке BASIC есть оператор LOCATE. В текстовом режиме экран разбивается на 25 строк и 80 столбцов, что позволяет вывести символ в любом месте экрана.

LOCATE [строка][,[столбец][,[начало, конец]]]]

Строка - номер строки на экране. Если параметр не указан, то номер строки не меняется.

Столбец - номер столбца на экране. Если параметр не указан, то номер столбца не меняется. плата графический сигнал датчик

Курсор - логический параметр, указывающий видимость курсора. Если равен 0, то курсор не виден, если равен 1 - виден.

Начало - начальная скан-линия курсора.

Конец - конечная скан-линия курсора.

Можно опустить любой параметр в операторе. Если опустить строку и столбец, LOCATE оставит курсор на позиции, установленной предыдущим оператором LOCATE или предыдущим оператором ввода/вывода. Для других аргументов сохраняются предыдущие значения.

Начало и конец определяются скан-линиями экрана, которые зависят от его разрешения. Эти аргументы описывают форму курсора. Если начало меньше конца, то курсор будет двойным.

Print

Для вывода значений на экран дисплея используется оператор Print. Он позволяет вывести несколько значений, при этом разделителями могут служить запятая "," или точка с запятой ";". Оператор Print без параметров выводит на экран пустую строку. Если необходимо вывести на экран строку, содержащие запятые, необходимо указать код запятой из таблицы ASCII в списке параметров вызова оператора Print.

PRINT {список_выражений}

Список_выражений - выражение любого типа, кроме пользовательского. Символьные константы в списке выражения выводятся на экран по порядку.

Положительные числа выводятся с пробелом перед значением, отрицательное выводится со знаком "минус".

Существует два формата вывода чисел обычной и двойной точности: с фиксированной и плавающей точкой. Если выводится значение обычной точности с семью или менее значащими числами после запятой или число двойной точности с пятнадцатью или менее значащими цифрами после запятой без потери точности, они выводятся в формате с фиксированной точкой. Иначе - с плавающей.

Позиция каждого выводимого элемента списка выражений определяется знаками-разделителями списка. BASIC делит строку экрана на зоны по 14 символов каждая. В списке выражений запятая перед элементом указывает на то, что он будет выведен с начала следующей зоны. Точка с запятой обозначает, что этот элемент будет выведен сразу после предыдущего. Пробелы или знаку табуляции имеют такой же эффект, как и точка с запятой.

Если запятая или точка с запятой завершают список выражений, то следующий оператор Print начнет вывод с той же строки. Если список не завершается разделителем, то следующий оператор начнет вывод со следующей строки. Когда печатаемая строка длиннее, чем ширина экрана, то вывод продолжается со следующей строки.

Номера экранных цветов

0

Черный

8

Серый

1

Голубой

9

Ярко-голубой

2

Зеленый

10

Ярко-зеленый

3

Бирюзовый

11

Ярко-бирюзовый

4

красный

12

Ярко-красный

5

Розовый

13

Ярко-розовый

6

Коричневый

14

Желтый

7

Белый

15

Ярко-белый

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.