欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機和上位機串口通信控制電機和顯示溫度
[打印本頁]
作者:
yongbuyanqi
時間:
2018-2-7 09:47
標題:
51單片機和上位機串口通信控制電機和顯示溫度
51和上位機(C#編寫)串口通信
0.png
(45.57 KB, 下載次數: 31)
下載附件
2018-2-7 23:08 上傳
0.png
(5.58 KB, 下載次數: 47)
下載附件
2018-2-7 23:08 上傳
全部資料51hei下載地址:
控制臺.zip
(464.24 KB, 下載次數: 79)
2018-2-7 09:46 上傳
點擊文件名下載附件
51和上位機(C#編寫)串口通信
下載積分: 黑幣 -5
單片機源程序如下:
#include<reg52.h>
#include"bstv51.h"
#include"delay.h"
sbit LED1=P1^0;
sbit LED2=P1^1;
sbit EN1=P1^4; //使能端
sbit EN2=P1^5;
sbit IN1=P1^2; //電機1
sbit IN2=P1^3;
sbit IN3=P1^6; //電機2
sbit IN4=P1^7;
void run(void) //前進函數
{
EN1=1;
IN1=0;
IN2=1; //左電機的正轉
EN2=1;
IN3=1;
IN4=0;//右電機的正轉
}
void back(void) //后退函數
{
EN1=1;
IN1=1;
IN2=0; //左電機的反轉
EN2=1;
IN3=0;
IN4=1;//右電機的反轉
}
void stop(void) //停止函數
{
EN1=0;
EN2=0;//電機使能
}
void UartConfiguration(); //串口配置函數申明
void main()
{
uchar date1,date2;
uint s;
bstv51_init(); //開發板初始化
UartConfiguration();
while(1)
{
if(RI==1)
{
date1=SBUF;
RI=0;
s=0;
while(s<2000&&date1==0xDB)
{
s++;
if(RI==1)
{
date2=SBUF;
RI=0;
switch(date2)
{
case 66:LED1=0;LED2=1;FM=1;
break;
case 255:LED1=1;LED2=0;FM=1;
break;
case 'S':LED1=1;LED2=1;FM=0;
break;
case 0xAA:run();
break;
case 0xBB:back();
break;
case 'P':stop();
break;
}
}
}
}
}
}
///////////串口配置函數/////////////////////
void UartConfiguration()
{
TMOD=0x20; //設置計數器1的工作方式2
TH1=0xfd; //設置計數器1的初值,決定波特率(0xfd表示9600的波特率)
TL1=0xfd; //設置計數器1的初值,決定波特率
PCON=0x00; // 波特率倍增0x00不加倍 0x80加倍
SCON=0x50; //設置工作方式1 開啟接受允許
EA=1; //開啟總中斷
ES=1; //開啟串口接受中斷
TR1=1; //計數器1開始運行
}
///////////////串口中斷服務函數///////////////////(不需要申明)
//void itrpt_svice() interrupt 4 //串口中斷服務函數
//{
// date=SBUF; //取出接受到的數據(手機把數據發給單片機的SBUF寄存器,date從寄存器中取值)
// RI=0; //清除接受中斷標志位
// SBUF=date; //單片機把數據date放到總線上(發給電腦或者手機)
// while(!TI); //等待發送數據完成
// TI=0; //清除發送中斷標志位
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
作者:
zb12138
時間:
2019-4-28 16:28
打不開
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1