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

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

QQ登錄

只需一步,快速開始

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

單片機(jī)尋跡小車PROTEUS仿真及代碼

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:687441 發(fā)表于 2020-3-28 01:07 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
四路尋跡小車仿真,液晶顯示小車行駛狀態(tài)
包括直行,小右轉(zhuǎn),大右轉(zhuǎn),小左轉(zhuǎn),大左轉(zhuǎn)
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:
  1. #include <reg52.h>//52頭文件
  2. #include <lcd.h>//液晶顯示配置文件
  3. unsigned char pwm_left_val; //左電機(jī)占空比值 取值范圍0-170,0最快
  4. unsigned char pwm_right_val; //右電機(jī)占空比值取值范圍0-170 ,0最快
  5. unsigned char pwm_t;//周期

  6. void delay(unsigned int z)//毫秒級(jí)延時(shí)
  7. {
  8.         unsigned int x,y;
  9.         for(x = z; x > 0; x--)
  10.                 for(y = 114; y > 0 ; y--);
  11. }       
  12. /*小車前進(jìn)*/
  13. int forward()
  14. {
  15.         pwm_left_val=100;
  16.         pwm_right_val=100;
  17.         left_motor_go; //左電機(jī)前進(jìn)
  18.         right_motor_go; //右電機(jī)前進(jìn)
  19. }
  20. /*小車小左轉(zhuǎn)*/
  21. int xiaoleft_run()
  22. {
  23.         pwm_left_val=170;
  24.         pwm_right_val=100;
  25.         left_motor_go; //左電機(jī)前進(jìn)
  26.         right_motor_go; //右電機(jī)前進(jìn)
  27. }
  28. /*小車大左轉(zhuǎn)*/
  29. void daleft_run()
  30. {
  31.         left_motor_stops; //左電機(jī)停止
  32.         right_motor_go; //右電機(jī)前進(jìn)
  33. }
  34. /*小車小右轉(zhuǎn)*/
  35. int xiaoright_run()
  36. {
  37.         pwm_left_val=100;
  38.         pwm_right_val=170;
  39.         left_motor_go; //左電機(jī)前進(jìn)
  40.         right_motor_go; //右電機(jī)前進(jìn)
  41. }
  42. /*小車大右轉(zhuǎn)*/
  43. void daright_run()
  44. {
  45.         right_motor_stops;//右電機(jī)停止
  46.         left_motor_go;    //左電機(jī)前進(jìn)
  47. }
  48. //定時(shí)器0中斷
  49. void timer0() interrupt 1
  50. {
  51.         pwm_t++;//周期計(jì)時(shí)加
  52.         if(pwm_t == 255)
  53.                 pwm_t = EN1 = EN2 = 0;
  54.         if(pwm_left_val == pwm_t)//左電機(jī)占空比       
  55.                 EN1 = 1;               
  56.         if(pwm_right_val == pwm_t)//右電機(jī)占空比
  57.                 EN2 = 1;                         
  58. }
  59. void main()
  60. {
  61.         for(;;)        //死循環(huán)
  62.         {
  63.                 if(key == 0)// 實(shí)時(shí)檢測(cè)S2按鍵是否被按下
  64.                 {
  65.                         delay(5); //軟件消抖
  66.                         LCDInit();
  67.               DisplayString(0x0,0,"Left's Go");
  68.                   break;                //退出FOR死循環(huán)
  69.                 }
  70.         }
  71.         delay(1000);//延時(shí)1秒
  72.         TMOD |= 0x02;//8位自動(dòng)重裝模塊
  73.         TH0 = 220;
  74.         TL0 = 220;//11.0592M晶振下占空比最大比值是256,輸出100HZ
  75.         TR0 = 1;//啟動(dòng)定時(shí)器0
  76.         ET0 = 1;//允許定時(shí)器0中斷
  77.         EA        = 1;//總中斷允許
  78.         while(1)
  79.         {
  80.                 //為0 沒有識(shí)別到黑線 為1識(shí)別到黑線
  81.                 if(left2_led == right1_led)
  82.                 {
  83.                         forward();//前進(jìn)
  84.                         WriteCmd(LCD_CLS);
  85.                         DisplayString(0x0,0,"forward");
  86.                         delay(200);
  87.                 }
  88.                 else if(left1_led == 0 && left2_led == 1 && right1_led== 0 && right2_led== 0 )//左邊觸線,小左轉(zhuǎn)修正
  89.                         {
  90.                                 xiaoleft_run();
  91.                                 WriteCmd(LCD_CLS);
  92.                             DisplayString(0x0,0,"Turn Left small");
  93.                             delay(200);
  94.                         }
  95.                 else if(left1_led == 1 && left2_led == 1 && right1_led== 0 && right2_led== 0 )//最左邊觸線,大左轉(zhuǎn)修正
  96.                         {
  97.                             daleft_run();
  98.                                 WriteCmd(LCD_CLS);
  99.                             DisplayString(0x0,0,"Turn Left big");
  100.                             delay(200);
  101.                         }
  102.                 else if(left1_led == 0 && left2_led == 0 && right1_led== 1 && right2_led== 0 )//右邊觸線,小右轉(zhuǎn)修正
  103.                         {
  104.                             xiaoright_run();
  105.                                 WriteCmd(LCD_CLS);
  106.                             DisplayString(0x0,0,"Turn Right small");
  107.                             delay(200);
  108.                         }       
  109.            else if(left1_led == 0 && left2_led == 0 && right1_led== 1 && right2_led== 1 ) //最右邊觸線,大右轉(zhuǎn)修正
  110.                     {
  111.                             daright_run();
  112.                                 WriteCmd(LCD_CLS);
  113.                             DisplayString(0x0,0,"Turn Right big");
  114.                             delay(200);
  115.                     }       
  116.                 }               
  117.         }
復(fù)制代碼

所有資料51hei提供下載:
尋跡小車.rar (132 KB, 下載次數(shù): 195)

評(píng)分

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

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:721016 發(fā)表于 2020-4-15 15:26 | 只看該作者
我想問一下proteus仿真的時(shí)候怎么判斷是不是在執(zhí)行循跡啊。顯示屏上一直顯示直行按開關(guān)也沒反應(yīng)。還是說proteus看不到這樣的效果
回復(fù)

使用道具 舉報(bào)

板凳
ID:728133 發(fā)表于 2020-5-1 23:08 | 只看該作者
搞好了,沒有問題
回復(fù)

使用道具 舉報(bào)

地板
ID:753887 發(fā)表于 2020-5-22 09:31 來自手機(jī) | 只看該作者
沒有電路圖啊
回復(fù)

使用道具 舉報(bào)

5#
ID:772902 發(fā)表于 2021-4-25 15:51 | 只看該作者
這個(gè)尋跡是采用光電還是紅外傳感器啊
回復(fù)

使用道具 舉報(bào)

6#
ID:912376 發(fā)表于 2021-4-28 17:38 | 只看該作者
這個(gè)仿真圖里沒有尋跡模塊,只是在用開關(guān)控制小車前進(jìn)、左轉(zhuǎn)、右轉(zhuǎn)
回復(fù)

使用道具 舉報(bào)

7#
ID:940368 發(fā)表于 2021-6-19 12:11 | 只看該作者
請(qǐng)問這個(gè)頭文件和液晶顯示配置文件在壓縮包有嗎
回復(fù)

使用道具 舉報(bào)

8#
ID:938892 發(fā)表于 2021-6-19 13:25 | 只看該作者

搞好了,沒有問題
回復(fù)

使用道具 舉報(bào)

9#
ID:945628 發(fā)表于 2021-6-28 21:14 | 只看該作者
能兩個(gè)輪子一起動(dòng)嗎?好多程序都是只能一個(gè)輪子動(dòng)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品美女www爽爽爽视频 | 日韩av福利在线观看 | 成人在线日韩 | 国产精品国产三级国产aⅴ无密码 | 色视频成人在线观看免 | 91免费视频观看 | 一区二区三区日 | 久久久久久久久久久久亚洲 | 99热国产精品 | 国产美女自拍视频 | 国产日韩欧美综合 | 国产精品色 | 欧美日韩不卡合集视频 | 欧洲一区二区视频 | 国产精品一码二码三码在线 | 欧美日韩精品一区二区三区视频 | 婷婷五月色综合香五月 | 日韩成人精品视频 | 国产精品免费视频一区 | 欧美性影院 | 中文字幕第90页 | 国产乱人伦 | 婷婷综合 | 日韩视频在线播放 | 91免费在线 | 不卡的av电影| 四虎成人免费电影 | 精品一区二区久久久久久久网站 | 精品中文字幕一区二区三区 | 日韩在线观看视频一区 | 黄色毛片免费看 | 日韩欧美国产精品一区二区 | 婷婷免费在线 | 国产91久久精品一区二区 | 国产区在线观看 | 波多野结衣一二三区 | 一区二区视频 | 午夜三级网站 | 午夜精品一区二区三区在线 | 日韩欧美在线播放 | 成人av电影在线观看 |