📄 mune.#2
字号:
#include<c8051f350.h>
sbit SRCLK=P0^0;
sbit SER=P0^2;
sbit SDA=P0^6;
sbit SCL=P0^7;
sbit RCK0=P1^1;
sbit RCK1=P1^2;
sbit RCK2=P1^3;
sbit RCK3=P1^4;
sbit RCK4=P1^5;
void wait()
{
unsigned int j;
for(j=0;j<1;j++);
}
/*bit crol(unsigned char a,unsigned char b)
{
return 0;
}*/
void WriteSIOByte(unsigned char val)
{
unsigned char i;
ACC = val;
for (i = 16; i > 0; i --)
{
SRCLK = 0;//拉低74HC595时钟
SER = 1;//crol();//crol(ACC,1);// CY;//发送74HC595一位串行数据
wait();
SRCLK = 1;//拉高74HC595时钟
wait();//延时
}
SRCLK=0;
wait();
SER=1;
RCK0=0;
wait();//延时
RCK0=1;
wait();
RCK0=0;
RCK1=0;
wait();
RCK1=1;
wait();
RCK1=0;
}
void WriteRelayByte()
{
unsigned char i;
//ACC = val;
for (i = 8; i > 0; i --)
{
SRCLK = 0;//拉低74HC595时钟
SER = 0;//crol(ACC,1);// CY;//发送74HC595一位串行数据
wait();
SRCLK = 1;//拉高74HC595时钟
wait();//延时
}
SRCLK=0;
wait();
SER = 1;
RCK2 = 0;
wait();//延时
RCK2 = 1;
wait();
RCK2=0;
}
void main()
{
//系统时钟设置
CLKSEL =0;//选择内部时钟
OSCICN =0x80;//内部时钟使能,8分频
PCA0MD =0;//禁止看门狗
//端口初始化
XBR0 =0;
XBR1 =0x40;
P0MDIN =0xff;
P0MDOUT =0;
P0SKIP =0;
P1MDIN =0xff;
P1MDOUT =0;
P1SKIP =0;
RCK0=0;
RCK1=0;
RCK2=0;
RCK3=0;
RCK4=0;
SER=1;
SRCLK=1;
WriteRelayByte();
WriteSIOByte(55);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -