Читать реферат по информатике, вычислительной технике, телекоммуникациям: "Контроллеры" Страница 21

назад (Назад)скачать (Cкачать работу)

Функция "чтения" служит для ознакомления с работой. Разметка, таблицы и картинки документа могут отображаться неверно или не в полном объёме!

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

Вход: тестовое значение.

Выход: индикация. Процедура подсчета и записи бита четности 32х-разрядного рабочего слова. void CalcChetSl(void){

SlRab_bit31=1;

SlRab_bit31=SlRab_bit31SlRab_bit0SlRab_bit1SlRab_bit2;

SlRab_bit31=SlRab_bit31SlRab_bit3SlRab_bit4SlRab_bit5;

SlRab_bit31=SlRab_bit31SlRab_bit6SlRab_bit7SlRab_bit8;

SlRab_bit31=SlRab_bit31SlRab_bit9SlRab_bit10SlRab_bit11;

SlRab_bit31=SlRab_bit31SlRab_bit12SlRab_bit13SlRab_bit14;

SlRab_bit31=SlRab_bit31SlRab_bit15SlRab_bit16SlRab_bit17;

SlRab_bit31=SlRab_bit31SlRab_bit18SlRab_bit19SlRab_bit20;

SlRab_bit31=SlRab_bit31SlRab_bit21SlRab_bit22SlRab_bit23;

SlRab_bit31=SlRab_bit31SlRab_bit24SlRab_bit25SlRab_bit26;

SlRab_bit31=SlRab_bit31SlRab_bit27SlRab_bit28SlRab_bit29;

SlRab_bit31=SlRab_bit31SlRab_bit30;

} Назначение: подсчет четности слова и выставления знака четности в 31 разряде подсчет четности производиться по модулю 2.

Вход: нет.

Выход: SlRab_bit31- знак четности. Процедура перевода из кодов грея в двоичный код максимально допустимую скорость. void Perevod_Md(void){

Vmdd=0;

Vmdd_bit9=Vmdg_bit9;

Vmdd_bit8=Vmdg_bit8Vmdd_bit9;

Vmdd_bit7=Vmdg_bit7Vmdd_bit8;

Vmdd_bit6=Vmdg_bit6Vmdd_bit7;

Vmdd_bit5=Vmdg_bit5Vmdd_bit6;

Vmdd_bit4=Vmdg_bit4Vmdd_bit5;

Vmdd_bit3=Vmdg_bit3Vmdd_bit4;

Vmdd_bit2=Vmdg_bit2Vmdd_bit3;

Vmdd_bit1=Vmdg_bit1Vmdd_bit2;

Vmdd_bit0=Vmdg_bit0Vmdd_bit1;

}Назначение: перевод кодов грея в двоичный код.

Вход: Коды грея.

Выход: двоичный код.

Процедура перевода из кодов грея в двоичный код приборную скорость. void Perevod_Pr(void){

Vprd=0;

Vprd_bit9=Vprg_bit9;

Vprd_bit8=Vprg_bit8Vprd_bit9;

Vprd_bit7=Vprg_bit7Vprd_bit8;

Vprd_bit6=Vprg_bit6Vprd_bit7;

Vprd_bit5=Vprg_bit5Vprd_bit6;

Vprd_bit4=Vprg_bit4Vprd_bit5;

Vprd_bit3=Vprg_bit3Vprd_bit4;

Vprd_bit2=Vprg_bit2Vprd_bit3;

Vprd_bit1=Vprg_bit1Vprd_bit2;

Vprd_bit0=Vprg_bit0Vprd_bit1;

} Назначение: перевод кодов грея в двоичный код.

Вход: Коды грея.

Выход: двоичный код. Процедура проверки на отказ маски максимальной скорости. void Cikl_Otkaz_Vmd(void){

int c=3,St;

Vmd_Ok=0;

T1=0;

do

{

vvodvmd();

Perevod_Md();/* перевод из грея в двоичную */

St=StecVmdd;

if ((St+test_speed>Vmdd)&&(St-test_speed(-1));

} Назначение: проверка маски максимальной скорости путем проверки предыдущих значений с полученными значениями и допуск не должен превышать тестовой единицы. Если превышение возникло, то проверка проходит еще 3 раза, но если после этого превышение не исчезло. Выдается световая сигнализация на борт панель пилоту и записывается в ячейку служебного слова (271).

Вход: нет.

Выход: нет.

Процедура проверки на отказ маски приборной скорости. void Cikl_Otkaz_Vpr(void){

int b=3,St;

Vpr_Ok=0;

RXD=0;

do

{

vvodvpr();

Perevod_Pr();/* перевод из грея в двоичную */

St=StecVprd;

if ((St+test_speed>Vprd)&&(St-test_speed(-1));

} Назначение: проверка маски приборной скорости путем проверки предыдущих значений с полученными значениями и допуск не должен превышать тестовой единицы. Если превышение возникло, то проверка проходит еще 3 раза, но если после этого превышение не исчезло. Выдается световая сигнализация на борт панель пилоту и записывается в ячейку служебного слова (271).

Вход: нет.

Выход: нет.

Процедура масштабирование для вывода на ЦАП. void Machtab(unsigned int V1){

double rab1;

rab1=(double)V1;

rab1*=0.63;

CapSlowo=0;

CapSlowo=(unsigned int)rab1;

CapSlowo0


Интересная статья: Быстрое написание курсовой работы