📄 96x16oled.lst
字号:
//初始化I2C E:\2420\LAB\JXY\96x16\oled.c
//-------------------------------------------------------------------------- E:\2420\LAB\JXY\96x16\oled.c
E:\2420\LAB\JXY\96x16\oled.c
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^IIC程序start^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E:\2420\LAB\JXY\96x16\oled.c
void IICINIT(void) E:\2420\LAB\JXY\96x16\oled.c
{ E:\2420\LAB\JXY\96x16\oled.c
00068a 9495 BCF 0x95,0x2,0x0 TRISDbits.TRISD2=0; E:\2420\LAB\JXY\96x16\oled.c
00068c 9695 BCF 0x95,0x3,0x0 TRISDbits.TRISD3=0; E:\2420\LAB\JXY\96x16\oled.c
00068e 9895 BCF 0x95,0x4,0x0 TRISDbits.TRISD4=0; E:\2420\LAB\JXY\96x16\oled.c
000690 968c BCF 0x8c,0x3,0x0 SCL_L; E:\2420\LAB\JXY\96x16\oled.c
000692 988c BCF 0x8c,0x4,0x0 SDA_L; E:\2420\LAB\JXY\96x16\oled.c
000694 dff1 RCALL 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
000696 968c BCF 0x8c,0x3,0x0 SCL_L; E:\2420\LAB\JXY\96x16\oled.c
000698 dfef RCALL 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
00069a 888c BSF 0x8c,0x4,0x0 SDA_H; E:\2420\LAB\JXY\96x16\oled.c
00069c dfed RCALL 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
00069e 868c BSF 0x8c,0x3,0x0 SCL_H; E:\2420\LAB\JXY\96x16\oled.c
0006a0 0012 RETURN 0x0 } E:\2420\LAB\JXY\96x16\oled.c
//命令 E:\2420\LAB\JXY\96x16\oled.c
0006a2 cfd9 MOVFF 0xfd9,0xfe6 void WriteCommand(INT8U com) E:\2420\LAB\JXY\96x16\oled.c
0006a4 ffe6
0006a6 cfe1 MOVFF 0xfe1,0xfd9
0006a8 ffd9
{ E:\2420\LAB\JXY\96x16\oled.c
0006aa 6ae6 CLRF 0xe6,0x0 while(IICSend(0x00)==0); E:\2420\LAB\JXY\96x16\oled.c
0006ac d82a RCALL 0x702
0006ae 52e5 MOVF 0xe5,0x1,0x0
0006b0 0900 IORLW 0x0
0006b2 e101 BNZ 0x6b6
0006b4 d7fa BRA 0x6aa
0006b6 0efe MOVLW 0xfe while(IICSend(com)==0); E:\2420\LAB\JXY\96x16\oled.c
0006b8 cfdb MOVFF 0xfdb,0xfe6
0006ba ffe6
0006bc d822 RCALL 0x702
0006be 52e5 MOVF 0xe5,0x1,0x0
0006c0 0900 IORLW 0x0
0006c2 e101 BNZ 0x6c6
0006c4 d7f8 BRA 0x6b6
0006c6 52e5 MOVF 0xe5,0x1,0x0 } E:\2420\LAB\JXY\96x16\oled.c
0006c8 cfe7 MOVFF 0xfe7,0xfd9
0006ca ffd9
0006cc 0012 RETURN 0x0
//数据 E:\2420\LAB\JXY\96x16\oled.c
0006ce cfd9 MOVFF 0xfd9,0xfe6 void WriteData(INT8U dat) E:\2420\LAB\JXY\96x16\oled.c
0006d0 ffe6
0006d2 cfe1 MOVFF 0xfe1,0xfd9
0006d4 ffd9
{ E:\2420\LAB\JXY\96x16\oled.c
0006d6 0e40 MOVLW 0x40 IICSend(0x40); E:\2420\LAB\JXY\96x16\oled.c
0006d8 6ee6 MOVWF 0xe6,0x0
0006da d813 RCALL 0x702
0006dc 52e5 MOVF 0xe5,0x1,0x0
0006de 0efe MOVLW 0xfe IICSend(dat); E:\2420\LAB\JXY\96x16\oled.c
0006e0 cfdb MOVFF 0xfdb,0xfe6
0006e2 ffe6
0006e4 d80e RCALL 0x702
0006e6 52e5 MOVF 0xe5,0x1,0x0
0006e8 52e5 MOVF 0xe5,0x1,0x0 } E:\2420\LAB\JXY\96x16\oled.c
0006ea cfe7 MOVFF 0xfe7,0xfd9
0006ec ffd9
0006ee 0012 RETURN 0x0
E:\2420\LAB\JXY\96x16\oled.c
//启始信号 E:\2420\LAB\JXY\96x16\oled.c
E:\2420\LAB\JXY\96x16\oled.c
void IICStart(void) E:\2420\LAB\JXY\96x16\oled.c
{ E:\2420\LAB\JXY\96x16\oled.c
0006f0 888c BSF 0x8c,0x4,0x0 SDA_H; E:\2420\LAB\JXY\96x16\oled.c
0006f2 868c BSF 0x8c,0x3,0x0 SCL_H; E:\2420\LAB\JXY\96x16\oled.c
0006f4 dfc1 RCALL 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
0006f6 988c BCF 0x8c,0x4,0x0 SDA_L; E:\2420\LAB\JXY\96x16\oled.c
0006f8 dfbf RCALL 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
0006fa 968c BCF 0x8c,0x3,0x0 SCL_L; E:\2420\LAB\JXY\96x16\oled.c
0006fc 888c BSF 0x8c,0x4,0x0 SDA_H; E:\2420\LAB\JXY\96x16\oled.c
0006fe ef3c GOTO 0x678 IICDelay(); E:\2420\LAB\JXY\96x16\oled.c
000700 f003
} E:\2420\LAB\JXY\96x16\oled.c
/********************************************************************************************************* E:\2420\LAB\JXY\96x16\oled.c
** 函数名称: IICSend E:\2420\LAB\JXY\96x16\oled.c
** 功能描述: 发送一个字节 E:\2420\LAB\JXY\96x16\oled.c
** 输 入: IIC_data:数据 E:\2420\LAB\JXY\96x16\oled.c
E:\2420\LAB\JXY\96x16\oled.c
** 全局变量: 无 E:\2420\LAB\JXY\96x16\oled.c
** 调用模块: 无 E:\2420\LAB\JXY\96x16\oled.c
********************************************************************************************************/ E:\2420\LAB\JXY\96x16\oled.c
000702 cfd9 MOVFF 0xfd9,0xfe6 INT8U IICSend(INT8U IIC_data) E:\2420\LAB\JXY\96x16\oled.c
000704 ffe6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -