电路设计,软件开发,专业项目团队承接电子产品开发!


ISPRO下载型编程器
火爆销售中

RS232/TTL转换器
全IC串口窃电

RS232/TTL转换线
全IC串口窃电

ByteBlasterMV Cable
CPLD/FPGA并口下载线

ByteBlaster II Cable ISPRO下载型编程器
支持S51/AVR/PIC
超级51开发板套件
前卫实用超值

PC/MCU/CPLD
三合一学习套件

全新万年历方案
AVR单片机开发板
 

Min51单片机仿真机
迷你型

ARM7开发板
仅售260元!
 

RS-232/RS-485双向接口电平转换器  

51单片机升级STM32
火爆销售中
MPLAB-ICD2
火爆销售中
LED51开发板
玩具又名图文显示棒

面板模块/开发板
经济危机明智决择

       

GSM MODEM GSM猫

SMS短信模块 工业级/全自动
火爆销售中

大功率数传电台

高速数传电台

您当前位置:电子技术资料 -> 外围驱动 -> 看门狗 ->

祝您阅读愉快!

ISPRO下载型编程器

RS232 TO TTL转换器
↑↑本文相关产品介绍↑↑

X25045用法完全公开


类别:技术文章
来源:未知
作者:未知
关键字:X25045
加入日期:2010-8-7

X25045用法完全公开
/******************************************************************************
向 X25045 写1个字节
void Cwrite_EEPROM( uint addr, uchar n )
输入: addr 地址范围 0x000-0x1FF [512B]
n 数据(uchar,char)
******************************************************************************/
/*中国电子网www.ec66.com*/
void Cwrite_EEPROM( uint addr, uchar n )
{
uchar i;

/* 访问看门狗 */
SCS = 0; /* 清看门狗 */
SCS = 1; /* 恢复看门狗 */

if ( Cread_EEPROM( addr ) == n ) return;

i = 0x02; /* 0000 (A8)010 WRITE */
if ( ( addr & 0x0100 ) != 0 ) i = ( i | 0x08 );

wren_X25045();

SCLK = 0;
SCS = 0;
sent_X25045( i ); /* WRITE => X25045 */
sent_X25045( (uchar)(addr) ); /* addr => X25045 */
sent_X25045( n ); /* n => X25045 */
SCLK = 0;
SCS = 1;
wrok_X25045();
wrdi_X25045();
}

/******************************************************************************
向 X25045写数据 整型数(2B)
void Iwrite_EEPROM( uint addr, uint n )
输入: addr 地址范围0x000-0x1FF [512B]
n = 写入数值(uint, int)
******************************************************************************/
void Iwrite_EEPROM( uint addr, uint n )
{
Cwrite_EEPROM( addr, (uchar)(n>>8) );
Cwrite_EEPROM( addr+1, (uchar)(n & 0x00FF) );
}

/******************************************************************************
从 X25645 读1个字节
uchar Cread_EEPROM( uint addr )
输入: addr 地址范围 0x000-0x1FF [512B]
输出: 数据 (uchar,char)
******************************************************************************/
uchar Cread_EEPROM( uint addr )
{
uchar n;
/* 访问看门狗 */
SCS = 0; /* 清看门狗 */
SCS = 1; /* 恢复看门狗 */

n = 0x03; /* 0000 (A8)011 READ */
if ( ( addr & 0x0100 ) != 0 ) n = ( n | 0x08 );

SCLK = 0;
SCS = 0;
sent_X25045( n ); /* READ => X25045 */
sent_X25045( (uchar)(addr) ); /* addr => X25045 */
n = get_X25045( ); /* X25045 => n */
SCLK = 0;
SCS = 1;

return( n );
}

/******************************************************************************
从 X25045 读数据 整型(2B)
uint Iread_EEPROM( uint addr )
输入: addr 地址范围0x000-0x1FF [512B]
输出: 数值(uint,int)
******************************************************************************/
uint Iread_EEPROM( uint addr )
{
return( ( (uint)( Cread_EEPROM( addr ) )<<8 ) | Cread_EEPROM( addr+1 ) );
}

您可能还会关注的相关技术资料:

中国电子网
www.EC66.com
QQ:34740080 EMAIL:iloveaoe@163.com
最佳浏览:1024*768
Copyright (C) 2001-2010 EC66.COM All Rights Reserved
Aoe/帝国 制作维护
粤ICP备18061901号