久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 8324|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

串口通信_(tái)遙控小車(有線)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:69304 發(fā)表于 2014-11-23 19:25 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
串口通信_(tái)遙控小車(有線),,蠻不錯(cuò)的

帶仿真文件,主機(jī)程序 和從機(jī)程序

串口通信_(tái)遙控小車(有線).zip

146.77 KB, 下載次數(shù): 67, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的積分獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2014-11-23 22:02 | 只看該作者
主機(jī)程序:
#include "reg51.h"
#include "intrins.h"
#include<stdlib.h>
#define uchar unsigned char
#define uint unsigned int

sbit P10=P1^0; //前進(jìn)
sbit P11=P1^1; //后退
sbit P12=P1^2; //左轉(zhuǎn)
sbit P13=P1^3; //右轉(zhuǎn)

uchar Temp[8]={1,2,3,4,5,6};         //運(yùn)動(dòng)編碼。數(shù)字型

/********************************************************************
函數(shù)功能:定時(shí)器及串口初始化函數(shù)
入口參數(shù):
出口參數(shù):
********************************************************************/
void Timer_init() {
        TMOD = 0x20;            //定時(shí)器1工作方式2(8位自動(dòng)重裝定時(shí)器)
        TH1  = 0xf4;            //波特率2400b/s。
        TL1  = 0xf4;                //定時(shí)器初值必須同時(shí)裝入TH0和TL0
        PCON = 0;                        //波特率不加倍
        SCON = 0X50;                //串口方式1(10位幀,其中8位數(shù)據(jù),異步)。TI和RI清零,允許接收
        TR1  = 1;                        //啟動(dòng)T1
}

/********************************************************************
函數(shù)功能:發(fā)送一個(gè)字節(jié)
入口參數(shù):  dat
出口參數(shù):
********************************************************************/
void Send(uchar dat)
{
  SBUF=dat;
  while(TI==0);
  TI=0;
}

/********************************************************************
函數(shù)功能:主函數(shù)
入口參數(shù):
出口參數(shù):
********************************************************************/
void main()
{
        Timer_init();
        while(1)
        {
                                                    /*P13  P12  P11  P10*/
          if(P1==0xfe) Send(Temp[0]);           //前進(jìn)直行           1        1         1          0
          if(P1==0xfd) Send(Temp[1]);           //后退直行           1        1         0          1
          if(P1==0xfa) Send(Temp[2]);           //前進(jìn)左轉(zhuǎn)           1        0         1          0
          if(P1==0xf6) Send(Temp[3]);           //前進(jìn)右轉(zhuǎn)           0        1         1          0
          if(P1==0xf9) Send(Temp[4]);           //后退左轉(zhuǎn)           1        0         0          1
          if(P1==0xf5) Send(Temp[5]);           //后退右轉(zhuǎn)           0        1         0          1
    }
}
回復(fù)

使用道具 舉報(bào)

板凳
ID:1 發(fā)表于 2014-11-23 22:03 | 只看該作者
從機(jī)程序:

#include<reg51.h>
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
#define MotorData P2                    //步進(jìn)電機(jī)控制接口定義

sbit P10=P1^0;          //前進(jìn)顯示
sbit P11=P1^1;          //后退顯示
sbit P12=P1^2;          //左轉(zhuǎn)顯示
sbit P13=P1^3;          //右轉(zhuǎn)顯示
sbit P24=P2^4;    //
sbit P25=P2^5;    //
sbit P26=P2^6;    //
sbit P27=P2^7;          //

uchar code turn[]={0x10,0x30,0x20,0x60,0x40,0xc0,0x80,0x90};   //旋轉(zhuǎn)編碼

/********************************************************************
函數(shù)功能:延時(shí)x毫秒函數(shù)
入口參數(shù): x
出口參數(shù):
********************************************************************/
void delay(uchar x)                //設(shè)晶體振蕩器的頻率為12MHz
{
   uchar k;
   while(x--)                      //延時(shí)大約x毫秒      
   for(k=0;k<125;k++){}
}

/********************************************************************
函數(shù)功能:定時(shí)器及串口初始化函數(shù)
入口參數(shù):
出口參數(shù):
********************************************************************/
void Timer_init() {
        TMOD = 0x20;            //定時(shí)器1工作方式2(8位自動(dòng)重裝定時(shí)器);定時(shí)器0工作方式1(16位計(jì)數(shù)器)
        TH1  = 0xf4;            //波特率2400b/s。
        TL1  = 0xf4;                //定時(shí)器初值必須同時(shí)裝入TH0和TL0
        PCON = 0;                        //波特率不加倍
        SCON = 0X50;                //串口方式1(10位幀,其中8位數(shù)據(jù),異步)。TI和RI清零,允許接收
        TR1  = 1;                        //啟動(dòng)T1
}

/********************************************************************
函數(shù)功能:接收一個(gè)字節(jié)
入口參數(shù):
出口參數(shù): dat
********************************************************************/
uchar Get(void)
{
  uchar dat;
  while(RI==0);
  RI=0;
  dat=SBUF;
  return dat;
}

/********************************************************************
函數(shù)功能:順時(shí)針轉(zhuǎn)動(dòng)(前進(jìn))
入口參數(shù):
出口參數(shù):
********************************************************************/
void MotorCW(void)
{
uchar i;
for(i=0;i<8;i++)
  {
   MotorData=turn[i];   
   delay(30);    //轉(zhuǎn)速調(diào)節(jié)
  }
}

/********************************************************************
函數(shù)功能:逆時(shí)針轉(zhuǎn)動(dòng)(后退)
入口參數(shù):
出口參數(shù):
********************************************************************/
void MotorCCW(void)
{
uchar i;
for(i=0;i<8;i++)
  {
   MotorData=turn[8-i];
   delay(30);   //轉(zhuǎn)速調(diào)節(jié)
  }
}


/********************************************************************
函數(shù)功能:主函數(shù)
入口參數(shù):
出口參數(shù):
********************************************************************/
void main(void)
{
        uchar Temp;
        Timer_init();
        while(1)
        {
          P1=0xff;
          Temp=Get();
     
         switch(Temp)
         {
          case 1: {P10=0; MotorCW();}         break;   //前進(jìn)直行
          case 2: {P11=0; MotorCCW();}        break;   //后退直行
          case 3: {P10=0; P12=0; MotorCW();}  break;   //前進(jìn)左轉(zhuǎn)
          case 4: {P10=0; P13=0; MotorCW();}  break;   //前進(jìn)右轉(zhuǎn)
          case 5: {P11=0; P12=0; MotorCCW();} break;   //后退左轉(zhuǎn)
          case 6: {P11=0; P13=0; MotorCCW();} break;   //后退右轉(zhuǎn)
         }
        }                 
}
回復(fù)

使用道具 舉報(bào)

地板
ID:79544 發(fā)表于 2015-8-6 17:36 | 只看該作者
很好的雙機(jī)通信程序謝謝分享!贊!!!!
回復(fù)

使用道具 舉報(bào)

5#
ID:79544 發(fā)表于 2015-8-6 17:41 | 只看該作者
這個(gè)程序沒有中斷服務(wù)函數(shù)不知道好用不好用。
回復(fù)

使用道具 舉報(bào)

6#
ID:101305 發(fā)表于 2016-1-18 13:55 | 只看該作者
不錯(cuò)學(xué)習(xí)下,呵呵
回復(fù)

使用道具 舉報(bào)

7#
ID:646809 發(fā)表于 2023-11-9 01:25 | 只看該作者
有沒有電路圖,控制通道能不能加多一些
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久精品一 | 欧美精品一区二区在线观看 | 午夜av电影院 | 美日韩一区二区 | 在线看亚洲 | 日韩国产欧美一区 | 看av网 | 毛片的网址 | 久久久噜噜噜久久中文字幕色伊伊 | 欧美一级黄色片在线观看 | 亚洲精品99| 欧美成人一级视频 | 欧美一区二区三区在线免费观看 | 亚洲天堂成人在线视频 | 国产色视频网站 | 一级片网站视频 | 久久久久久久一区 | 国产精品99久久久久久久久 | 亚洲 91| 美女黄网| 精品久久久久一区二区国产 | 久久久www成人免费无遮挡大片 | av 一区二区三区 | 久久久久免费精品国产小说色大师 | 日本三级日产三级国产三级 | 精品久久久久久 | 国产区一区 | 综合视频在线 | 99久久婷婷国产精品综合 | 一区日韩 | 亚洲成人免费视频在线 | 欧美国产精品一区二区三区 | 99精品国自产在线 | 亚洲精品9999| 97免费视频在线观看 | 色综合视频 | 欧美一级黄色免费看 | 中文字幕日韩一区二区 | 国产精品久久久亚洲 | 特级黄一级播放 | 日韩2020狼一二三 |