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

📄 fun.h

📁 从零开始学51单片机源代码
💻 H
字号:
#include "intrins.h"

void ms_delay(unsigned int t)
{
	unsigned  int  i;
	for (t; t > 0; t--)	//外层循环t次	 
		for (i = 110;i > 0; i--)	//内层循环110次		   
		;
}

sfr IAP_DATA = 0xe2;
sfr IAP_ADDRH = 0xe3;
sfr IAP_ADDRL = 0xe4;
sfr IAP_CMD = 0xe5;
sfr IAP_TRIG = 0xe6;
sfr IAP_CONTR = 0xe7;

unsigned char IAP_read (unsigned char addrh, unsigned char addrl)
{
	unsigned char edata;
	IAP_ADDRH = addrh; //送地址
	IAP_ADDRL = addrl;
	IAP_CMD = 0x01;  //读指令
	IAP_CONTR = 0x81; //允许操作,设置等待时间为01,20MHz以内
	IAP_TRIG = 0x46;  //触发指令
	IAP_TRIG = 0xb9;
	_nop_();
	edata = IAP_DATA;  //取数据
	return edata;
}

void  IAP_erase  (unsigned char addrh, unsigned char addrl)
{
	IAP_ADDRH = addrh; //送地址
	IAP_ADDRL = addrl;
	IAP_CMD = 0x03;  //扇区擦除指令
	IAP_CONTR = 0x81; //允许操作,设置等待时间为01,20MHz以内
	IAP_TRIG = 0x46;  //触发指令
	IAP_TRIG = 0xb9;
	_nop_();
}

void  IAP_write  (unsigned char addrh, unsigned char addrl, unsigned char edata)
{
	IAP_ADDRH = addrh; //送地址
	IAP_ADDRL = addrl;
	IAP_DATA = edata; //送数据
	IAP_CMD = 0x02;  //写指令
	IAP_CONTR = 0x81; //允许操作,设置等待时间为01,20MHz以内
	IAP_TRIG = 0x46;  //触发指令
	IAP_TRIG = 0xb9;
	_nop_();
}

⌨️ 快捷键说明

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