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

📄 flash.c

📁 本程序能实现温度的实时采集与显示
💻 C
字号:
#include <stdio.h>
#include <reg1210.h>
#include "rom1210.h"
//#include <msc1210.h>

#define PAGE_START 0x0400
#define PAGE_SIZE 0x80

extern void autobaud(void);

char xdata *pFlashPage;

unsigned int xdata buffer[PAGE_SIZE];

//读flash存储器子程序
//page为页数取值范围0-7,byte_num为字节数,取值范围为0-127
int flash_read(int page,int byte_num)
{
		unsigned int m,read_add;
		read_add=0x400+0x80*page+byte_num;    //实际地址

		pFlashPage=(char xdata*)read_add;
		buffer[0]=*pFlashPage;
		if(buffer[0]>128)
			buffer[0]+=256;
		printf("buffer[0]=%d\n",buffer[0]);
		return buffer[0];
}
//写flash存储器子程序
//page为页数取值范围0-7,byte_num为字节数,取值范围为0-127,write_data为要写入的数据
void flash_write(int page,int byte_num,int write_data)
{
		unsigned int m,lead_add;
		lead_add=0x400+0x80*page;				//页首地址

		pFlashPage=(char xdata*)lead_add;
		for(m=0;m<128;m++)
			buffer[m]=*pFlashPage++;

		page_erase(lead_add,0x0ff,DATA_FLASH);

		buffer[byte_num]=write_data;
		for(m=0;m<128;m++)
			write_flash_byte(lead_add+m,buffer[m],DATA_FLASH);

}

main()
{
		char result;
		unsigned int i,add,dat;
		autobaud();
		FTCON=0x64;
		USEC=11-1;
		MSEC=11059-1;

		dat=flash_read(0,0);
		printf("dat=%d\n",dat);

		flash_write(0,0,0x0A);

		dat=flash_read(0,0);
		printf("dat=%d\n",dat);

		while(RI=0);
		RI=0;
}


⌨️ 快捷键说明

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