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

📄 _ds.c

📁 用于开发Linux的Bootloader源代码
💻 C
字号:
/*
//==Program Name:_ds.c================================
//--Program Description:-------- 
//--Author:Yanyou Song---E-mail:syyo@163.com-----------------
//--Some Program&Fuction May Have BUG------------------------
//--The Code Is Strictly In public,Forbiding Updata On Net---
//--Use This Code Caused All The Problem Is Irrespective The 
Programmer,Aftermath By Yourself!!---------------------------
//--Copyright Yanyou Song,All rights reserved.---------------
//--Design Data:2006-09-11 ----------------------------------
//===========================================================

//===========程序名称:_ds.c======================= 
//--程序目的:-----------------------------
//-----设计&编写者 :宋彦佑--电子邮件:syyo@163.com---------
//------------程序&函数有存在BUG的可能--------------------
//------此原码不公开!!不允许公布在因特网上!!------------
//--使用此代码引起的一切问题与设计&编写者无关,后果自负---
//------------作者保留此代码的所有权力--------------------
//----设计日期:-2006-now---------------------------------
//========================================================

//--------最后更改日期---------
//---the last revision time----
//2006-10-30  
*/
//define iic eeprom system history information 
#define 	iic_sys_use_h1    0x7fff
#define 	iic_sys_use_h2    0x7ffe	
#define 	iic_sys_use_h3    0x7ffd
#define 	iic_sys_use_h4    0x7ffc	
#define 	iic_sys_use_u1    0x7ffa
#define 	iic_sys_use_u2    0x7ff9
#define 	iic_sys_use_u3    0x7ff8
#define 	iic_sys_use_u4    0x7ff7	
#define 	iic_sys_use_f1    0x7ff5
#define 	iic_sys_use_f2    0x7ff4
#define 	iic_sys_use_f3    0x7ff3
#define 	iic_sys_use_f4    0x7ff2
#define 	iic_ip_addr_use9    0x7fe8        //always     0xaa
#define 	iic_ip_addr_use8    0x7fe7        //ip 1
#define 	iic_ip_addr_use7    0x7fe6        //always      '.'
#define 	iic_ip_addr_use6    0x7fe5        //ip 2
#define 	iic_ip_addr_use5    0x7fe4        //always      '.'
#define 	iic_ip_addr_use4    0x7fe3        //ip 3
#define 	iic_ip_addr_use3    0x7fe2        //always      '.'
#define 	iic_ip_addr_use2    0x7fe1        //ip 4
#define 	iic_ip_addr_use1    0x7fe0        //always     0xaa
#define 	iic_finish_time     0x7fc0        //always ~~ use 16byte
#define 	iic_infor_user     0x7f21        //always ~~ use 64byte
#include "_Debug.h"
void inc_os_use(void)    
   {
	 //i_printf("jumper is set Running user programm");
	 unsigned char data_eep_char;
	 int data_eep_int,error=0;
	 unsigned long data_eep_long=0;
	 data_eep_int=iicread(iic_sys_use_h1);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_h2);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_h3);
     data_eep_long|=data_eep_int;
	 data_eep_long+=1;
	 error+=iicwrite(iic_sys_use_h1,data_eep_long>>16);
	 error+=iicwrite(iic_sys_use_h2,data_eep_long>>8);
	 error+=iicwrite(iic_sys_use_h3,data_eep_long);
   }
int inc_os_use_earse(void)    
   {
	 int error=0;
	 iicwrite(iic_sys_use_h1,0);
	 iicwrite(iic_sys_use_h2,0);
	 iicwrite(iic_sys_use_h3,0);
	 iicwrite(iic_sys_use_h4,0xaa);
	 return error;
   } 

 void inc_boot_use(void)
   {
	 unsigned char data_eep_char;
	 int data_eep_int,error=0;
	 unsigned long data_eep_long=0;
	 data_eep_int=iicread(iic_sys_use_u1);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_u2);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_u3);
     data_eep_long|=data_eep_int;
	 data_eep_long+=1;
	 iicwrite(iic_sys_use_u1,data_eep_long>>16);
	 iicwrite(iic_sys_use_u2,data_eep_long>>8);
	 iicwrite(iic_sys_use_u3,data_eep_long);
   }  
int inc_boot_use_erase(void)
   {
	 int error=0;
     iicwrite(iic_sys_use_u1,0);
     iicwrite(iic_sys_use_u2,0);
     iicwrite(iic_sys_use_u3,0);
     iicwrite(iic_sys_use_u4,0xaa);
	 return error;
   }  
 void inc_flash_use(void)
   {
	 unsigned char data_eep_char;
	 int data_eep_int,error=0;
	 unsigned long data_eep_long=0;
	 data_eep_int=iicread(iic_sys_use_f1);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_f2);
     data_eep_long|=data_eep_int;
	 data_eep_long=data_eep_long<<8;
	 data_eep_int=iicread(iic_sys_use_f3);
     data_eep_long|=data_eep_int;
	 data_eep_long+=1;
	 iicwrite(iic_sys_use_f1,data_eep_long>>16);
	 iicwrite(iic_sys_use_f2,data_eep_long>>8);
	 iicwrite(iic_sys_use_f3,data_eep_long);
   }   
int inc_flash_use_earse(void)
    {
	 int error=0;
	 iicwrite(iic_sys_use_f1,0);
	 iicwrite(iic_sys_use_f2,0);
	 iicwrite(iic_sys_use_f3,0);
	 iicwrite(iic_sys_use_f4,0xaa);
	 return error;
    } 

⌨️ 快捷键说明

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