當前位置:編程學習大全網 - 源碼破解 - if10010com

if10010com

同學妳好,我來幫妳,妳可以使用串口啊,比如:1:給妳壹個從PC發給單片機數據後,單片機再原樣發給PC的參考代碼:2:將51某壹個(引腳)按鍵0,1狀態,發給PC;

1::::::::::::::

#include <REG52.H>

bit Flag;

unsigned int R_D,S_D;

unsigned char i;

void usart_init(void); ///串口初始化

void main (void) {

usart_init(void); ///串口初始化

while(1)

{

if (Flag==1)

{

SBUF = S_D; //SUBF接受/發送緩沖器(又叫串行通信特殊功能寄存器)

while(!TI);// 等特數據傳送(TI發送中斷標誌)

TI = 0;// 清除數據傳送標誌

Flag=0;

}

}

}

}

void ser_int (void) interrupt 4 using 1

{

if(RI == 1) //RI接受中斷標誌

{

RI = 0; //清除RI接受中斷標誌

R_D = SBUF; //SUBF接受/發送緩沖器

S_D=R_D;///////返回PC發送

Flag=1;

}

}

void usart_init(void)///串口初始化

{

SCON = 0x50; //REN=1允許串行接受狀態,串口工作模式1

TMOD|= 0x20; //定時器工作方式2

PCON|= 0x80;

TH1 = 0xF3;// //baud*2 /* 波特率4800、數據位8、停止位1。效驗位無 (12M)

TL1 = 0xF3;

TR1 = 1;

ES = 1; //開串口中斷

EA = 1; // 開總中斷

}

2:::::::::::::

#include <REG52.H>

sbit p34=P3^4;////////定義壹個按鍵

bit Flag=1;

unsigned int S_D;

unsigned char i;

void usart_init(void); ///串口初始化

void delay (unsigned int Z) ; //延時程序 Z倍 MS

void key_p34(void) ; /////按鍵檢

void main (void) {

usart_init(void); ///串口初始化

key_p34(void) ; ////上電後檢測壹次按鍵的狀態

if (Flag==1)//上電後發送壹次按鍵的狀態

{

SBUF =1; //SUBF接受/發送緩沖器(又叫串行通信特殊功能寄存器)

while(!TI);// 等特數據傳送(TI發送中斷標誌)

TI = 0;// 清除數據傳送標誌

}

else

{

SBUF =0; //SUBF接受/發送緩沖器(又叫串行通信特殊功能寄存器)

while(!TI);// 等特數據傳送(TI發送中斷標誌)

TI = 0;// 清除數據傳送標誌

}

while(1)

{

key_p34(void) ;

if (Flag==1)

{

SBUF =1; //SUBF接受/發送緩沖器(又叫串行通信特殊功能寄存器)

while(!TI);// 等特數據傳送(TI發送中斷標誌)

TI = 0;// 清除數據傳送標誌

}

else

{

SBUF =0; //SUBF接受/發送緩沖器(又叫串行通信特殊功能寄存器)

while(!TI);// 等特數據傳送(TI發送中斷標誌)

TI = 0;// 清除數據傳送標誌

}

}

}

void usart_init(void)///串口初始化

{

SCON = 0x50; //REN=1允許串行接受狀態,串口工作模式1

TMOD|= 0x20; //定時器工作方式2

PCON|= 0x80;

TH1 = 0xF3;// //baud*2 /* 波特率4800、數據位8、停止位1。效驗位無 (12M)

TL1 = 0xF3;

TR1 = 1;

ES = 1; //開串口中斷

EA = 1; // 開總中斷

}

void delay (unsigned int Z)//延時程序 Z倍 MS

{

unsigned int x,y;

for(x=Z;x>0;x--)

for(y=110;y>0;y--) ;

}

void key_p34(void) /////按鍵檢測

{

if(p34==0)

{ delay(10);

if(p34==0)

{

while(!p34) ;/////等待按鍵松手

Flag=0;

}

}

}

不懂得歡迎交流

  • 上一篇:琴行招生電話營銷的技巧
  • 下一篇:為壹人守壹生的網名
  • copyright 2024編程學習大全網