i2c.asm

来自「51开发板的源程序」· 汇编 代码 · 共 28 行

ASM
28
字号
/**************************************************************************

此模块替换了C语言的 MOVX 库,使用这个库,配合CLIB.ASM,执行行下列操作时有效:
char *ptr;
*ptr
ptr[i]
ptr是任意的指针。
使用这个指针,可以实现结构的拷贝等。

**************************************************************************

公开变量:
. bit epm_err
  如果读写EPROM失败,则此变量值1, 如果此标志位为1,则读写时只写一次 ControlCode
  而不是反复检查EPROM的ACK,如果读取到ACK,则将此标志位复位。
. bit EPM_SDA, EPM_SCL, EPM_WP
   定义了引脚。主程序中这样定义:

	bdata unsigned char b_P0 _at_ 0x30;//sfr at 0x80
	bdata unsigned char b_P1 _at_ 0X32;//sfr at 0x90
	bdata unsigned char b_P2 _at_ 0x34;//sfr at 0xa0
	bdata unsigned char b_P3 _at_ 0x36;//sfr at 0xb0
	
	sbit EPM_SDA = b_P2^1;
	sbit EPM_SCL = b_P2^2;
	sbit EPM_WP  = b_P2^3;
   +---------------------------------+
   |每次写EPROM,程序都会把EPM_WP清除|

⌨️ 快捷键说明

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