Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
21.12.2020
Размер:
3.77 Кб
Скачать
/*дг­ЄжЁп ўлў®¤  §­ зҐ­Ёп ¬®й­®бвЁ,­ Їа殮­Ёп,в®Є  ­  Ё­¤ЁЄ в®а –ќ7004M
      Copyright (C) ЃҐ«Ё«м­ЁЄ®ў ‚.„. 30.12.2003, 03.2006*/

         /*Ї®¤Є«о祭ЁҐ § Ј®«®ўЄ®ў ў­гв७­Ёе ॣЁбва®ў 80‘32*/
#include <io51.h>

extern unsigned long bin_bcd1(unsigned long);

extern float size;
unsigned long buf_long;
extern unsigned char counts1;
extern unsigned char counts2;
unsigned char dot_place;
unsigned char i;

void out_size(float size)
{
  if(counts1==1)           /*Ё§¬ҐаҐ­ЁҐ ¬®й­®бвЁ*/
  {
	if(size>=10000.0)
	{
		buf_long=(unsigned long)size;
		dot_place=0;
	}
	if(size<10000.0&&size>=1000.0)
	{
		buf_long=(unsigned long)(size*10.0);
		dot_place=1;
	}
	if(size<1000.0&&size>=100.0)
	{
		buf_long=(unsigned long)(size*100.0);
		dot_place=2;
	}
	if(size<100.0&&size>=10.0)
	{
		buf_long=(unsigned long)(size*1000.0);
		dot_place=3;
	}
	if(size<10.0)
	{
		buf_long=(unsigned long)(size*10000.0);
		dot_place=4;
	}
   }

  if(counts1==2)           /*Ё§¬ҐаҐ­ЁҐ ­ Їа殮­Ёп*/
  {
	if(size<1000.0&&size>=100.0)
	{
		buf_long=(unsigned long)(size*100.0);
		dot_place=2;
	}
	if(size<100.0&&size>=10.0)
	{
		buf_long=(unsigned long)(size*1000.0);
		dot_place=3;
	}
	if(size<10.0)
	{
		buf_long=(unsigned long)(size*10000.0);
		dot_place=4;
	}
  }

  if(counts1==3)           /*Ё§¬ҐаҐ­ЁҐ в®Є */
  {
	if(size<10.0)
	{
		buf_long=(unsigned long)(size*10000.0);
		dot_place=4;
	}
	else
	{
		buf_long=(unsigned long)(size*1000.0);
		dot_place=3;
	}
  }
	buf_long=bin_bcd1(buf_long);

	i=(unsigned char)buf_long&0x0f;
	switch(i){
		case 0 : ind4=0xc0;
		break;
		case 1 : ind4=0xf9;
		break;
		case 2 : ind4=0xa4;
		break;
		case 3 : ind4=0xb0;
		break;
		case 4 : ind4=0x99;
		break;
		case 5 : ind4=0x92;
		break;
		case 6 : ind4=0x82;
		break;
		case 7 : ind4=0xf8;
		break;
		case 8 : ind4=0x80;
		break;
		case 9 : ind4=0x90;
		break;
	}
	buf_long=buf_long>>4;
	i=(unsigned char)buf_long&0x0f;
	switch(i){
		case 0 : ind3=0xc0;
		break;
		case 1 : ind3=0xf9;
		break;
		case 2 : ind3=0xa4;
		break;
		case 3 : ind3=0xb0;
		break;
		case 4 : ind3=0x99;
		break;
		case 5 : ind3=0x92;
		break;
		case 6 : ind3=0x82;
		break;
		case 7 : ind3=0xf8;
		break;
		case 8 : ind3=0x80;
		break;
		case 9 : ind3=0x90;
		break;
	}
	buf_long=buf_long>>4;
	i=(unsigned char)buf_long&0x0f;
	switch(i){
		case 0 : ind2=0xc0;
		break;
		case 1 : ind2=0xf9;
		break;
		case 2 : ind2=0xa4;
		break;
		case 3 : ind2=0xb0;
		break;
		case 4 : ind2=0x99;
		break;
		case 5 : ind2=0x92;
		break;
		case 6 : ind2=0x82;
		break;
		case 7 : ind2=0xf8;
		break;
		case 8 : ind2=0x80;
		break;
		case 9 : ind2=0x90;
		break;
	}
	buf_long=buf_long>>4;
	i=(unsigned char)buf_long&0x0f;
	switch(i){
		case 0 : ind1=0xc0;
		break;
		case 1 : ind1=0xf9;
		break;
		case 2 : ind1=0xa4;
		break;
		case 3 : ind1=0xb0;
		break;
		case 4 : ind1=0x99;
		break;
		case 5 : ind1=0x92;
		break;
		case 6 : ind1=0x82;
		break;
		case 7 : ind1=0xf8;
		break;
		case 8 : ind1=0x80;
		break;
		case 9 : ind1=0x90;
		break;
	}
	buf_long=buf_long>>4;
	i=(unsigned char)buf_long&0x0f;
	switch(i){
		case 0 : ind0=0xc0;
		break;
		case 1 : ind0=0xf9;
		break;
		case 2 : ind0=0xa4;
		break;
		case 3 : ind0=0xb0;
		break;
		case 4 : ind0=0x99;
		break;
		case 5 : ind0=0x92;
		break;
		case 6 : ind0=0x82;
		break;
		case 7 : ind0=0xf8;
		break;
		case 8 : ind0=0x80;
		break;
		case 9 : ind0=0x90;
		break;
	}
	switch(dot_place){
		case 0 : ind4=ind4&0x7f;
		break;
		case 1 : ind3=ind3&0x7f;
		break;
		case 2 : ind2=ind2&0x7f;
		break;
		case 3 : ind1=ind1&0x7f;
		break;
		case 4 : ind0=ind0&0x7f;
		break;
	}
}
Соседние файлы в папке ce4_10_5