⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fout.c

📁 包括ARM开发环境的使用和一些调试用的源程序
💻 C
📖 第 1 页 / 共 2 页
字号:

#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int
/*********************************************
存储器分配地址
********************************************/
#define  FF03   		0
#define  FF04   		3
#define  FF05  		6
#define  FF06        9
#define  FF07			12
#define  FF08			19
#define  FF09			26
#define	FF01			33
#define  FF02			34
#define	FF10			35
#define  FF11			36
#define	FF12			42
#define  FF13			46
#define	FF14			47
#define	FF15			48
#define	FF16			51
#define	FF17			54
#define	FF18			59
#define	FF20			65
#define	FF21			69
#define	FF22			72
#define	FF23			76
#define	FF24			80
#define	FF25			84
#define	FF26			88
#define	FF27			90
#define	FF30			91
#define	FF31			94
#define	FF33			96
#define	FF34			100
#define	FF35			103
#define	FF36			105
#define	FF40			106
#define	FF41			109
#define	FE01			112
#define	FE02			114
#define	FE03			116
#define	FE04			118
#define	FE05			120
#define	FE06			122
#define	FE07			124
#define	FE08			126
#define	FE09			128
#define	FE10			130
#define	FE11			137
#define	FE12			144
#define	FE13			151
#define	FE14			158
#define	FE15			165
#define	FE16			172
#define	FE17			175
#define	FE20			178
#define	FE21			180
#define	FE22			182
#define	FE23			184
#define  FE24			186
#define	FE25			188
#define	FE30			189
#define	FE31			193
#define	FE32			196
#define	FE33			200
#define	FE34			201
#define	FE35			207
#define	FE36			211
#define	FE37			214
#define	FC01			220
#define	FC02			223
#define	FC03			226
#define	FC04			229
#define	FC05			231
#define	FC06			236
#define	FC07			241
#define	FC08			246
#define	FC09			251
#define	FC10			256
#define	FC11			261
#define	FC12			266
#define	FC13			271
#define	FC14			276
#define	FC15			281
#define	FC16			286
#define	FC17			291
#define	FC18			296
#define	FC19			301
#define	FC20			306
#define	FC21			311
#define	FC22			312
#define	FC23			320
#define	FC24			328
#define	FC25			336
#define	FC26			344
#define	FC27			352
#define	FC28			360
#define	FC30			368
#define	FC31			370
#define	FC32			372
#define	FC33			375
#define	FP01			378
#define	FP02			379
#define	FP03			383
#define	FP04			389
#define	FP05			390
#define	FP06			391
#define	FP07			397
#define	FP08		   401
#define	FP09			405
#define	FH04			409
#define	FH05			411
#define	FH06			413
#define	FH07			414
#define	FH08			415
#define	FH09			416
#define	FH10			417
#define	FH11			418
#define  FH12			419
#define	FH13			420
#define	FH14			423
#define	FH15			428
#define	FH16			431
#define	FH18			434
#define	FH19			435
#define	FH20			436
#define	FH21			437
#define	FH22			438
#define	FH23			442
#define	FH24			447
#define	FH25			451
#define	FH26			455
#define	FH27			457
#define	FH28			461
#define	FH30			464
#define	FU01			470
#define	FU02			480
#define	FU03			483
#define	FU04			486
#define	FU05			489
#define	FU08			493
#define	FU09			499
#define	FU10			505
#define	FU11			511
#define	FU13			519
#define	FU15			528
#define	FU23			538
#define	FU24			548
#define	FU48			550
#define	FU49			552
#define	FU56			559
#define	FU57			563
#define	FU58			569
#define	FU59			574
#define	FU60			579
#define	FU61			580
#define  FF00			585
bit dotflag=0;		//数码管显示小数点标记,0为小数点后2位,1为小数点后1位

extern uchar dispnum[4];		//数码管数字显示单元
extern bit 	WRITE_256_SUB(uchar ADDR_CS,uchar ADDR_HI,uchar ADDR_LO,unsigned char *SP,unsigned int NO);
extern bit 	READ_256_SUB(uchar ADDR_CS,uchar ADDR_HI,uchar ADDR_LO,unsigned char *SP,unsigned int NO);
void fout(uint frc)
{
	if(frc>9999)	{dotflag=1;frc=frc/10;}
	else dotflag=0;

	dispnum[0]=frc/1000;
	dispnum[1]=frc/100-dispnum[0]*10;
	dispnum[2]=frc/10-dispnum[0]*100-dispnum[1]*10;
	dispnum[3]=frc%10;
}

/****************************
delay time
****************************/
void delay(uchar timedata )
{
	uchar i,j;
	for(i=0;i<timedata;i++)
	{	
		j=timedata ;
		while(j--);
	}
}
	
/**********************
   HEX码至ASCII码转换
 **********************/
void hex_asc(uchar *dst, uchar *src, uchar len)
{
	uchar j,temp;
	uchar code ascii[]={"0123456789ABCDEF"};  /*ascii 字符表*/
	for (j=0;j<len;j++)
    {
	    temp=*(src+j);
	    *(dst+j*2)=ascii[_cror_(temp&0xf0,4)];
	    *(dst+j*2+1)=ascii[temp&0x0f];
    }
}

/*********************************8
取地址高低字节
**********************************/

void readwrite256(uint add,uchar *bytesbuf,uchar lengh,bit  wr,bit ffale)
{
		idata union
		{
			unsigned int ADDRESS;
			unsigned char ADDR[2];
		}X;
	   X.ADDRESS=add;
		if(wr==0)
      WRITE_256_SUB(0XA0,X.ADDR[0],X.ADDR[1],bytesbuf,lengh);
		else 
		READ_256_SUB(0XA1,X.ADDR[0],X.ADDR[1],bytesbuf,lengh);
		if(ffale)
		delay(100);
}

/***************************************
放置数据
***************************************/
uchar code ascii[]={"0123456789ABCDEF"};
void fetchdata(uchar a,uchar b,uchar d,uchar f,uchar e,uchar h)
{
	
	factorysbuf[0]=ascii[a];
	factorysbuf[1]=ascii[b];
	factorysbuf[2]=ascii[d];
	factorysbuf[3]=ascii[f];
	factorysbuf[4]=ascii[e];
	factorysbuf[5]=ascii[h];
}
	
/************************************************
出厂值设定
*************************************************/
uchar idata factorysbuf[6];
void factory(void)
{
	fetchdata(0,0,0,0,0,0);
	readwrite256(FF00,factorysbuf,1,0,1);
	fetchdata(0,0,0,0,0,0);
	readwrite256(FF01,factorysbuf,2,0,1);
	fetchdata(0,0,0,0,0,0);
	readwrite256(FF02,factorysbuf,1,0,1);
	fetchdata(0,6,0,0,0,0);
	readwrite256(FF03,factorysbuf,3,0,1);
	fetchdata(0,5,0,0,0,0);
	readwrite256(FF04,factorysbuf,3,0,1);
	fetchdata(3,8,0,0,0,0);
	readwrite256(FF05,factorysbuf,3,0,1);
	fetchdata(3,8,0,0,0,0);
	readwrite256(FF06,factorysbuf,3,0,1);
	fetchdata(0,0,0,6,0,0);
	readwrite256(FF07,factorysbuf,6,0,1);
	fetchdata(0,0,0,6,0,0);
	readwrite256(FF08,factorysbuf,6,0,1);
	fetchdata(0,0,0,0,0,0);
	readwrite256(FF09,factorysbuf,3,0,1);
	fetchdata(1,0,0,0,0,0);
	readwrite256(FF10,factorysbuf,1,0,1);
	fetchdata(0,0,0,0,1,0);
	readwrite256(FF11,factorysbuf,5,0,1);
	fetchdata(0,5,0,0,0,0);
	readwrite256(FF12,factorysbuf,3,0,1);
	fetchdata(1,0,0,0,0,0);
	readwrite256(FF13,factorysbuf,1,0,1);
	fetchdata(1,0,0,0,0,0);
	readwrite256(FF14,factorysbuf,1,0,1);
	fetchdata(0,7,0,0,0,0);
	readwrite256(FF15,factorysbuf,3,0,1);
	fetchdata(0,0,0,0,0,0);
	readwrite256(FF16,factorysbuf,3,0,1);
	fetchdata(0,0,0,1,0,0);
	readwrite256(FF17,factorysbuf,4,0,1);
	fetchdata(1,0,0,0,0,0);
	readwrite256(FF18,factorysbuf,5,0,1);
	fetchdata(0,0,0,0,0,0);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -