Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
21.12.2020
Размер:
6.6 Кб
Скачать
/*ў®ббв ­®ў«Ґ­ЁҐ ¤ ­­ле ­  Ё­¤ЁЄ в®а е Ї®б«Ґ ¤Ё «®Ј  б Ї®«м§®ў вҐ«Ґ¬*/
/*ЊЉ7007Ѓ 2009Ј.*/
         /*Ї®¤Є«о祭ЁҐ § Ј®«®ўЄ®ў ў­гв७­Ёе ॣЁбва®ў 80‘31*/
#include <io51.h>
         /*Ї®¤Є«о祭ЁҐ § Ј®«®ўЄ®ў ЎЁЎ«Ё®вҐз­ле дг­ЄжЁ©*/
#include <stdlib.h>

extern void mov_read(char);       /*зЁв вм б Ї®§ЁжЁЁ Єгаб®а */
extern void mov_write(char,char); /*§ ЇЁб вм бЁ¬ў®« ў Ї®§ЁжЁо Єгаб®а */
extern void move_dir(char);       /*гбв ­®ўЁвм Єгаб®а ­  Ї®§ЁжЁо*/

unsigned int voltage;
float current;
float frequency;
unsigned int fi;
extern unsigned char i;
unsigned char j;
unsigned char k;
unsigned char m_volt[4];
unsigned char m_curr[7];
unsigned char m_freq[6];
unsigned char m_fi[4];
unsigned char sw_u;
unsigned char sw_i;
unsigned char err;

unsigned char rest_ind(void)
{
		 mov_write(0x80,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0x81,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
             mov_write(0x82,0x41);   /*§ ЇЁбм бЁ¬ў®«  "A"*/
             mov_write(0x83,0xb3);   /*§ ЇЁбм бЁ¬ў®«  "ў"*/
             mov_write(0x84,0xbf);   /*§ ЇЁбм бЁ¬ў®«  "в"*/
             mov_write(0x85,0x6f);   /*§ ЇЁбм бЁ¬ў®«  "®"*/
             mov_write(0x86,0xbd);   /*§ ЇЁбм бЁ¬ў®«  "­"*/
		 mov_write(0x87,0x6f);   /*§ ЇЁбм бЁ¬ў®«  "®"*/
		 mov_write(0x88,0xbc);   /*§ ЇЁбм бЁ¬ў®«  "¬"*/
		 mov_write(0x89,0xbd);   /*§ ЇЁбм бЁ¬ў®«  "­"*/
		 mov_write(0x8a,0xc3);   /*§ ЇЁбм бЁ¬ў®«  "л"*/
		 mov_write(0x8b,0xa6);   /*§ ЇЁбм бЁ¬ў®«  "©"*/
		 mov_write(0x8c,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
             mov_write(0x8d,0x70);   /*§ ЇЁбм бЁ¬ў®«  "а"*/
             mov_write(0x8e,0x65);   /*§ ЇЁбм бЁ¬ў®«  "Ґ"*/
             mov_write(0x8f,0xb6);   /*§ ЇЁбм бЁ¬ў®«  "¦"*/
             mov_write(0x90,0xb8);   /*§ ЇЁбм бЁ¬ў®«  "Ё"*/
             mov_write(0x91,0xbc);   /*§ ЇЁбм бЁ¬ў®«  "¬"*/
             mov_write(0x92,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0x93,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
/*--------------------------------------------------------------------------*/
		 mov_write(0xc0,0x55);   /*§ ЇЁбм бЁ¬ў®«  "U"*/
		 mov_write(0xc1,0x3d);   /*§ ЇЁбм бЁ¬ў®«  "="*/
		 mov_write(0xc5,0x42);   /*§ ЇЁбм бЁ¬ў®«  "B"*/
		 mov_write(0xc6,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0xc7,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
	       mov_write(0xc8,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
	       mov_write(0xc9,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0xca,0x49);   /*§ ЇЁбм бЁ¬ў®«  "I"*/
		 mov_write(0xcb,0x3d);   /*§ ЇЁбм бЁ¬ў®«  "="*/
		 mov_write(0xd2,0x41);   /*§ ЇЁбм бЁ¬ў®«  "A"*/
		 mov_write(0xd3,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
/*--------------------------------------------------------------------------*/
		 mov_write(0x94,0x46);   /*§ ЇЁбм бЁ¬ў®«  "F"*/
		 mov_write(0x95,0x3d);   /*§ ЇЁбм бЁ¬ў®«  "="*/
		 mov_write(0x9b,0xa1);   /*§ ЇЁбм бЁ¬ў®«  "ѓ"*/
		 mov_write(0x9c,0xe5);   /*§ ЇЁбм бЁ¬ў®«  "ж"*/
		 mov_write(0x9d,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0x9e,0xaa);   /*§ ЇЁбм бЁ¬ў®«  "”"*/
		 mov_write(0x9f,0x3d);   /*§ ЇЁбм бЁ¬ў®«  "="*/
		 mov_write(0xa3,0xb4);   /*§ ЇЁбм бЁ¬ў®«  "Ј"*/
		 mov_write(0xa4,0x70);   /*§ ЇЁбм бЁ¬ў®«  "а"*/
		 mov_write(0xa5,0x61);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0xa6,0xe3);   /*§ ЇЁбм бЁ¬ў®«  "¤"*/
		 mov_write(0xa7,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
/*--------------------------------------------------------------------------*/
             mov_write(0xd4,0x42);   /*§ ЇЁбм бЁ¬ў®«  "‚"*/
		 mov_write(0xd5,0xba);   /*§ ЇЁбм бЁ¬ў®«  "Є"*/
		 mov_write(0xd6,0xbb);   /*§ ЇЁбм бЁ¬ў®«  "«"*/
		 mov_write(0xd7,0xc6);   /*§ ЇЁбм бЁ¬ў®«  "о"*/
		 mov_write(0xd8,0xc0);   /*§ ЇЁбм бЁ¬ў®«  "з"*/
		 mov_write(0xd9,0x65);   /*§ ЇЁбм бЁ¬ў®«  "Ґ"*/
		 mov_write(0xda,0xbd);   /*§ ЇЁбм бЁ¬ў®«  "­"*/
		 mov_write(0xdb,0xb8);   /*§ ЇЁбм бЁ¬ў®«  "Ё"*/
		 mov_write(0xdc,0x65);   /*§ ЇЁбм бЁ¬ў®«  "Ґ"*/
		 mov_write(0xdd,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
		 mov_write(0xde,0x55);   /*§ ЇЁбм бЁ¬ў®«  "U"*/
		 mov_write(0xdf,0x3a);   /*§ ЇЁбм бЁ¬ў®«  ":"*/
             mov_write(0xe1,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
             mov_write(0xe2,0x49);   /*§ ЇЁбм бЁ¬ў®«  "I"*/
             mov_write(0xe3,0x3a);   /*§ ЇЁбм бЁ¬ў®«  ":"*/
             mov_write(0xe5,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
             mov_write(0xe6,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
             mov_write(0xe7,0x20);   /*§ ЇЁбм бЁ¬ў®«  " "*/
/*--------------------------------------------------------------------------*/
test_volt:				/*Їа®ўҐаЄ  ¤®ЇгбвЁ¬®бвЁ ­ Їа殮­Ёп*/
           	 for(k=0xc2,j=0;j<=2;k++,j++)
		 {
			mov_read(k);
                  m_volt[j]=i;
		 }
		 m_volt[3]=0x2f;
		 voltage=atoi(m_volt);
             if(voltage>264)goto err_volt;
	       goto test_switch_volt;
err_volt:
		 move_dir(0xc0);
		 return err=1;
/*--------------------------------------------------------------------------*/
test_switch_volt:
		 mov_read(0xe0);
		 if(i!=0x30)
            {
               mov_write(0xe0,0x31);   /*§ ЇЁбм бЁ¬ў®«  "1"*/
               sw_u=1;
            }

		 else sw_u=0;
/*--------------------------------------------------------------------------*/
test_current:				/*Їа®ўҐаЄ  ¤®ЇгбвЁ¬®бвЁ в®Є */
           	 for(k=0xcc,j=0;j<=5;k++,j++)
		 {
		     mov_read(k);
                 if(i==0x2c)i=0x2e;
                  m_curr[j]=i;
		 }
		 m_curr[6]=0x2f;
		 current=atof(m_curr);
             if(current>=60.001)goto err_current;
	       goto test_switch_current;
err_current:
		 move_dir(0xca);
		 return err=1;
/*--------------------------------------------------------------------------*/
test_switch_current:
		 mov_read(0xe4);
		 if(i!=0x30)
            {
               mov_write(0xe4,0x31);   /*§ ЇЁбм бЁ¬ў®«  "1"*/
               sw_i=1;
            }

		 else sw_i=0;
/*--------------------------------------------------------------------------*/
test_frequency:				/*Їа®ўҐаЄ  ¤®ЇгбвЁ¬®бвЁ з бв®вл*/
           	 for(k=0x96,j=0;j<=4;k++,j++)
		 {
		     mov_read(k);
                 if(i==0x2c)i=0x2e;
                  m_freq[j]=i;
		 }
		 m_freq[5]=0x2f;
		 frequency=atof(m_freq);
             if(frequency<45.0||frequency>65.0)goto err_freq;
	       goto test_fi;
err_freq:
		 move_dir(0x94);
		 return err=1;
/*--------------------------------------------------------------------------*/
test_fi:				/*Їа®ўҐаЄ  ¤®ЇгбвЁ¬®бвЁ гЈ«  б¤ўЁЈ  д §*/
           	 for(k=0xa0,j=0;j<=2;k++,j++)
		 {
			mov_read(k);
                  m_fi[j]=i;
		 }
		 m_fi[3]=0x2f;
		 fi=atoi(m_fi);
             if(fi>359)goto err_fi;
	       return err=0;
err_fi:
		 move_dir(0x9e);
		 return err=1;
}
Соседние файлы в папке МК7007БМ