📄 初始化.c
字号:
#include <reg51.h>
#include "mtv230m.h"
#include <intrins.h>
unsigned int xdata bojina;//近距离报警区
unsigned int xdata bojinb;//中距离报警
unsigned int xdata bojinc;//远距离
char xdata video;//视频切换
unsigned char xdata englishchina;//中英切换
unsigned char xdata bright;//亮度
unsigned char xdata contrast;//对比度
unsigned char xdata color;//彩色
unsigned char xdata blue;//兰屏
unsigned char xdata power;//电源自动光机
char xdata p_n;//P/N
unsigned char xdata x;//x
unsigned char xdata y;//y
unsigned char xdata vol;//音量
/************************************************************/
//芯片配置
unsigned char bdata padmoda;
unsigned char bdata padmodb;
unsigned char bdata padmodc;
unsigned char bdata padmodd;
unsigned char bdata optiona;
sbit HIICE=padmoda^7;
sbit IIICE=padmoda^6;
sbit HVE=padmoda^5;
sbit HclpE=padmoda^4;
sbit FclkE=padmoda^1;
sbit P62E=padmoda^0;
sbit DA3E=padmodb^7;
sbit DA2E=padmodb^6;
sbit DA1E=padmodb^5;
sbit DA0E=padmodb^4;
sbit AD3E=padmodb^3;
sbit AD2E=padmodb^2;
sbit AD1E=padmodb^1;
sbit AD0E=padmodb^0;
sbit P47oe=padmodc^7;
sbit P46oe=padmodc^6;
sbit P45oe=padmodc^5;
sbit P44oe=padmodc^4;
sbit P43oe=padmodc^3;
sbit P42oe=padmodc^2;
sbit P41oe=padmodc^1;
sbit P40oe=padmodc^0;
sbit P57oe=padmodd^7;
sbit P56oe=padmodd^6;
sbit P55oe=padmodd^5;
sbit P54oe=padmodd^4;
sbit P53oe=padmodd^3;
sbit P52oe=padmodd^2;
sbit P51oe=padmodd^1;
sbit P50oe=padmodd^0;
sbit PWMF=optiona^7;
sbit DIV253=optiona^6;
sbit SivAbs1=optiona^5;
sbit SivAbs0=optiona^4;
sbit ENSCL=optiona^3;
sbit Msel=optiona^2;
sbit MIICF1=optiona^1;
sbit MIICF0=optiona^0;
/****************************************************/
sbit clk1=P1^7;
sbit clk2=P3^5;
//I2c地址
#define bojin_a 0x12//近距离报警区
#define bojin_b 0x15//中距离
#define bojin_c 0x1a//远距离
#define video_1 0x1e//视频切换
#define english_china 0x20//中英切换
#define bright_04 0x22//亮度
#define contrast_04 0x24//对比度
#define color_04 0x26//彩色
#define blue_04 0x28//兰屏ON-OFF
#define power_04 0x2a//电源自动开关
#define color_p_n 0x2c//P/N
#define x_04 0x2e//X旋转
#define y_04 0x30//Y旋转
#define vol_04 0x32//音量
void osd_pz();
void time_asd();
void read_24c02();
void datey(unsigned int p);
extern unsigned int i2c_read(unsigned char address);
/*************/
//配置芯片
void osd_pz()
{
HIICE=0;
IIICE=0;
HVE=0;
HclpE=0;
FclkE=1;
P62E=0;
DA3E=1;
DA2E=1;
DA1E=1;
DA0E=1;
AD3E=1;
AD2E=1;
AD1E=1;
AD0E=1;
P47oe=1;
P46oe=1;
P45oe=1;
P44oe=0;
P43oe=1;
P42oe=1;
P41oe=0;
P40oe=0;
P57oe=1;
P56oe=1;
P55oe=1;
P54oe=1;
P53oe=0;
P52oe=0;
P51oe=0;
P50oe=0;
PWMF=0;
DIV253=0;
SivAbs1=0;
SivAbs0=0;
ENSCL=0;
Msel=0;
MIICF1=0;
MIICF0=0;
PADMOD1=padmoda;
PADMOD2=padmodb;
PADMOD3=padmodc;
PADMOD4=padmodd;
OPTION=optiona;
}
void time_asd()
{
P43=1;P44=1;
SCON=0;
clk1=0;clk2=0;
WDT=0x47;
TMOD=0x26;//T1计时,T0计数,T0作遥控
TH0=0x00;
TL0=0x00;
ET0=1;
EA=1;
IT0=1;
TR0=1;//启动遥控
}
void read_24c02()
{
bojina=i2c_read(bojin_a);
bojinb=i2c_read(bojin_b);
bojinc=i2c_read(bojin_c);
video=i2c_read(video_1);
englishchina=i2c_read(english_china);
bright=i2c_read(bright_04);
contrast=i2c_read(contrast_04);
color=i2c_read(color_04);
blue=i2c_read(blue_04);
power=i2c_read(power_04);
p_n=i2c_read(color_p_n);
x=i2c_read(x_04);
y=i2c_read(y_04);
vol=i2c_read(vol_04);
}
void datey(unsigned int p)
{
unsigned int i;
for(i=0;i<=p;i++)
_nop_();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -