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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5816|回復: 9
收起左側

15f2k60s2單片機和stc89c51的使用及頭文件區別

[復制鏈接]
ID:405091 發表于 2018-10-3 16:00 | 顯示全部樓層 |閱讀模式
51單片機的頭文件可以直接在15單片機上使用嗎?例如15使用“reg51.h”頭文件時需要注意哪些事項。  


我寫了一個智能車的紅外跟隨程序 大神幫忙看看哪里出錯了
#include <REGX52.H>

sbit LeftIR=P0^0;                         //定義前方左側紅外探頭端口
sbit RightIR=P0^1;                        //定義前方右側紅外探頭端口
sbit ZhongIR=P0^2;                        //定義中間紅外探頭端口
sbit xiao=P0^3;                          //根據此紅外信號有無,判斷跟隨距離是否過近

sbit M1A=P1^0;                              //電機左右引腳口
sbit M1B=P1^1;
sbit M2A=P1^2;
sbit M2B=P1^3;
sbit ENA0=P1^4;                                   //電機控制使能端
sbit ENA1=P1^5;

unsigned char Xinhao;

/**********毫秒延時**********/
void delay_nms(unsigned int t)                   //毫秒延時
{
unsigned int i,j;
for(i=0;i<t;i++)
  for(j=0;j<120;j++);
}

/**********信號處理**********/
void Xhao(Xinhao)
{
if(xiao==0)
{
  Xinhao=0;
}
if( LeftIR ==1 && ZhongIR==1 && RightIR ==1 )
{
  Xinhao=1;
}
if( LeftIR ==0 && ZhongIR==0 && RightIR ==0 )
{
  Xinhao=2;
}
if( LeftIR ==0 && ZhongIR==1 && RightIR ==1 )
{
  Xinhao=3;
}
if( LeftIR ==1 && ZhongIR==0 && RightIR ==1 )
{
  Xinhao=4;
}
if( LeftIR ==1 && ZhongIR==1 && RightIR ==0 )
{
  Xinhao=5;
}
if( LeftIR ==0 && ZhongIR==0 && RightIR ==1 )
{
  Xinhao=6;
}
if( LeftIR ==0 && ZhongIR==1 && RightIR ==0 )
{
  Xinhao=7;
}
if( LeftIR ==1 && ZhongIR==0 && RightIR ==0 )
{
  Xinhao=8;
}
}

/**********電機運行方式**********/
void tingzhi()
{
   M1A=0;                                   //將M1電機A端初始化為0
   M1B=0;                                   //將M1電機B端初始化為0
   M2A=0;                                   //將M2電機A端初始化為0
   M2B=0;
}
void qianjin()
{
   M1A=1;         
   M1B=0;                                   
   M2A=1;                                   
   M2B=0;
}
void houtui()
{
   delay_nms(30);
   M1A=0;                                   
   M1B=1;                                   
   M2A=0;                                   
   M2B=1;
}

void zuozhuan()
{
   M1A=1;                                   
   M1B=0;                                   
   M2A=0;                                   
   M2B=0;
}
void youzhuan()
{
   M1A=0;                                   
   M1B=0;                                   
   M2A=1;                                   
   M2B=0;
}

/**********信號電機綜合方式**********/
void Yunxing(unsigned char Yxing)
{
switch(Yxing)
{
case 0:
{
  tingzhi();
  break;
}
case 1:
{
  tingzhi();
  break;
}
case 2:
{
  qianjin();
  break;
}
case 3:
{
  zuozhuan();
  break;
}
case 4:
{
  qianjin();
  break;
}
case 5:
{
  youzhuan();
  break;
}
case 6:
{
  zuozhuan();
  break;
}
case 7:
{
  qianjin();
  break;
}
case 8:
{
  youzhuan();
  break;
}  
}
}

/**********主程序**********/
void main()         
{
Yunxing(0);
while(1)
{
switch(Xinhao)                          
{
  case 0:
  {
   Yunxing(0);
   break;
  }
  case 1:                        
  {
    Yunxing(1);
    break;
  }
  case 2:                        
  {
    Yunxing(2);                              
    break;
  }
  case 3:                       
  {
    Yunxing(3);                           
        break;
  }
  case 4:                  
  {
    Yunxing(4);                                                                       
        break;
  }
  case 5:                        
  {
    Yunxing(5);
        break;                              
  }
  case 6:                  
  {
    Yunxing(6);                                                                       
        break;
  }
  case 7:                  
  {
    Yunxing(7);                                                                       
        break;
  }
  case 8:                        
  {
    Yunxing(8);
        break;                              
  }
}
}
}

回復

使用道具 舉報

ID:405091 發表于 2018-10-3 16:01 | 顯示全部樓層
希望快點回復
回復

使用道具 舉報

ID:213173 發表于 2018-10-3 17:17 | 顯示全部樓層
15系列頭文件
STC15xxxx.zip (2.33 KB, 下載次數: 35)
回復

使用道具 舉報

ID:97554 發表于 2018-10-3 19:34 | 顯示全部樓層
除了頭文件不通用,延時函數等都要改
回復

使用道具 舉報

ID:313481 發表于 2018-10-3 20:48 | 顯示全部樓層
不通用,沒有用過15系列單片機,
1、注意看看晶振頻率確定延時時間
2、頭文件引用
3、具體寄存器有無區別
4、端口使用是否需要定義方向

評分

參與人數 1黑幣 +15 收起 理由
yousunny + 15 贊一個!

查看全部評分

回復

使用道具 舉報

ID:308437 發表于 2018-10-3 20:54 | 顯示全部樓層
主要是延時函數,再看下定時器等。官方有范例程序的
回復

使用道具 舉報

ID:277550 發表于 2018-10-3 21:52 | 顯示全部樓層
不完全相同的。。。。。。STC下載工具中,有相應的頭文件可以獲取到。


~~~~~~~~~~~~~~~~
回復

使用道具 舉報

ID:387733 發表于 2018-10-4 07:31 | 顯示全部樓層
15的頭文件兼容經典51單片機,但是擴展增加的很多功能,使用了更多的特殊功能寄存器,這些寄存器定義是傳統頭文件中沒有的。所以說如果只使用基本功能,傳統的頭文件也是可以使用的。
回復

使用道具 舉報

ID:386381 發表于 2018-10-4 09:08 來自手機 | 顯示全部樓層
頭文件需要改,延時的那部分也是不一樣的,也需要變動的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲 中文 欧美 日韩 在线观看 | 久久国产精品91 | 亚洲激情在线观看 | 91精品国产综合久久精品图片 | 国产精品久久久久久久久久免费 | 中文字幕电影在线观看 | av中文字幕在线 | 中文字幕精品一区二区三区精品 | 日韩久久久一区二区 | 日韩网站在线观看 | 午夜久久久久 | 久久精品久久久久久 | 欧美国产日韩一区二区三区 | 精品二区视频 | 欧美精品日韩 | 国产精品久久久乱弄 | 亚洲国产一区二区三区 | 国产欧美一区二区精品久导航 | 成人激情视频 | 精品欧美乱码久久久久久 | 国产激情一区二区三区 | 日韩av高清在线 | 久久国产精品一区二区三区 | 欧美不卡视频 | 亚洲成人久久久 | 欧美性大战久久久久久久蜜臀 | 国产成人精品亚洲日本在线观看 | 黄色一级大片在线免费看产 | 黄色一级大片在线免费看产 | jlzzxxxx18hd护士| 欧美一级大片 | 精品一区二区三区四区 | 国产精品不卡视频 | 国产激情一区二区三区 | 国产综合网站 | 国产精品视频免费播放 | 欧美专区日韩 | 男人电影天堂 | 一级黄色绿像片 | 日本不卡一区二区三区在线观看 | 四季久久免费一区二区三区四区 |