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

QQ登錄

只需一步,快速開始

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

基于51單片機(jī)的模擬交通燈仿真+代碼

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
基于51單片機(jī)的模擬交通燈程序以及原理圖


單片機(jī)源程序如下:
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit RED_A=P0^0; // 東西向燈
  5. sbit YELLOW_A=P0^1;
  6. sbit GREEN_A=P0^2;
  7. sbit RED_B=P0^3; // 南北向燈
  8. sbit YELLOW_B=P0^4;
  9. sbit GREEN_B=P0^5;
  10. uchar Flash_Count=0,Operation_Type=1; // 閃爍次數(shù),操作類型變量
  11.                   //延時(shí)
  12. void DelayMS(uint x)
  13. {
  14. uchar  i;
  15. while(x--)  for(i=0;i<120;i++);
  16. }
  17. //交通燈切換
  18. void Traffic_Light()
  19. {
  20. switch(Operation_Type)
  21. {
  22. case  1:  //東西向綠燈與南北向紅燈亮
  23. RED_A=1;YELLOW_A=1;GREEN_A=0;
  24. RED_B=0;YELLOW_B=1;GREEN_B=1;
  25. DelayMS(2000);
  26. Operation_Type=2;
  27. break;
  28. case  2:  //東西向黃燈閃爍,綠燈關(guān)閉
  29. DelayMS(300);
  30. YELLOW_A=~YELLOW_A;GREEN_A=1;
  31. if(++Flash_Count!=10)  return; //閃爍 5 次
  32. Flash_Count=0;
  33. Operation_Type=3;
  34. break;
  35. case  3:  //東西向紅燈,南北向綠燈亮
  36. RED_A=0;YELLOW_A=1;GREEN_A=1;
  37. RED_B=1;YELLOW_B=1;GREEN_B=0;
  38. DelayMS(2000);
  39. Operation_Type=4;
  40. break;
  41. case  4:  //南北向黃燈閃爍 5 次
  42. DelayMS(300);
  43. YELLOW_B=~YELLOW_B;GREEN_B=1;
  44. if(++Flash_Count!=10)  return;
  45. Flash_Count=0;
  46. Operation_Type=1;
  47. }
  48. }
  49. //主程序
  50. void main()
  51. {
  52. while(1)  Traffic_Light();
  53. }
復(fù)制代碼

所有資料51hei提供下載:
第五個(gè) 1.zip (35.69 KB, 下載次數(shù): 216)



評(píng)分

參與人數(shù) 1黑幣 +4 收起 理由
按實(shí)際回 + 4 贊一個(gè)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:543595 發(fā)表于 2019-5-21 11:10 | 只看該作者
可以        
回復(fù)

使用道具 舉報(bào)

板凳
ID:526182 發(fā)表于 2019-5-25 22:54 | 只看該作者
樓主,YELLOW_B=~YELLOW_B這段是什么作用啊?新手求教
回復(fù)

使用道具 舉報(bào)

地板
ID:549233 發(fā)表于 2019-5-29 10:50 | 只看該作者
可以的
回復(fù)

使用道具 舉報(bào)

5#
ID:550330 發(fā)表于 2019-5-29 17:01 | 只看該作者
贊一個(gè)
回復(fù)

使用道具 舉報(bào)

6#
ID:556405 發(fā)表于 2019-6-6 11:36 | 只看該作者
值得學(xué)習(xí)學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

7#
ID:531151 發(fā)表于 2019-6-8 15:28 | 只看該作者
值得學(xué)習(xí)  ,試了一下  可以的
回復(fù)

使用道具 舉報(bào)

8#
ID:559274 發(fā)表于 2019-6-10 19:12 | 只看該作者
這個(gè)程序設(shè)計(jì)的真好
回復(fù)

使用道具 舉報(bào)

9#
ID:559274 發(fā)表于 2019-6-10 19:13 | 只看該作者
nouman 發(fā)表于 2019-5-25 22:54
樓主,YELLOW_B=~YELLOW_B這段是什么作用啊?新手求教

取反
回復(fù)

使用道具 舉報(bào)

10#
ID:561726 發(fā)表于 2019-6-13 13:33 | 只看該作者
我覺得這個(gè)程序做的非常好
回復(fù)

使用道具 舉報(bào)

11#
ID:561435 發(fā)表于 2019-6-13 13:45 | 只看該作者
很不錯(cuò)欸
回復(fù)

使用道具 舉報(bào)

12#
ID:561726 發(fā)表于 2019-6-13 16:20 | 只看該作者
為什么我的led燈上面有電流經(jīng)過就是不亮
回復(fù)

使用道具 舉報(bào)

13#
ID:561726 發(fā)表于 2019-6-13 16:44 | 只看該作者
想麻煩問一下,為什么9個(gè)交通燈我就一個(gè)亮的
回復(fù)

使用道具 舉報(bào)

14#
ID:556149 發(fā)表于 2019-6-19 09:47 來自手機(jī) | 只看該作者
要怎么連線才會(huì)運(yùn)行?
回復(fù)

使用道具 舉報(bào)

15#
ID:475794 發(fā)表于 2019-6-22 22:19 | 只看該作者
nouman 發(fā)表于 2019-5-25 22:54
樓主,YELLOW_B=~YELLOW_B這段是什么作用啊?新手求教

~取反符號(hào)
回復(fù)

使用道具 舉報(bào)

16#
ID:570213 發(fā)表于 2019-6-23 19:18 | 只看該作者
不錯(cuò)不錯(cuò)
回復(fù)

使用道具 舉報(bào)

17#
ID:620969 發(fā)表于 2019-10-9 11:07 | 只看該作者
不錯(cuò)不錯(cuò),
回復(fù)

使用道具 舉報(bào)

18#
ID:625804 發(fā)表于 2019-10-17 19:12 | 只看該作者
這個(gè)真的好棒,感謝樓主
回復(fù)

使用道具 舉報(bào)

19#
ID:642377 發(fā)表于 2019-11-15 09:05 | 只看該作者
十分感謝樓主的分享!謝謝樓主
回復(fù)

使用道具 舉報(bào)

20#
ID:659389 發(fā)表于 2019-12-9 12:23 | 只看該作者
還行,奈斯
回復(fù)

使用道具 舉報(bào)

21#
ID:660376 發(fā)表于 2019-12-11 15:37 | 只看該作者
很好用,能不能請(qǐng)教一下咋加緊急按鈕呢
回復(fù)

使用道具 舉報(bào)

22#
ID:598743 發(fā)表于 2019-12-12 21:03 | 只看該作者
nouman 發(fā)表于 2019-5-25 22:54
樓主,YELLOW_B=~YELLOW_B這段是什么作用?新手求教

~ 是求反符號(hào) 懂了吧  就是如果它是0 求反就是1
回復(fù)

使用道具 舉報(bào)

23#
ID:707064 發(fā)表于 2020-3-12 15:28 | 只看該作者
為什么我仿真的時(shí)候燈不會(huì)亮,其他都正常的
回復(fù)

使用道具 舉報(bào)

24#
ID:707064 發(fā)表于 2020-3-12 15:29 | 只看該作者
燈不會(huì)亮,其他正常
回復(fù)

使用道具 舉報(bào)

25#
ID:708949 發(fā)表于 2020-3-15 17:59 | 只看該作者
我的沒有KEIL文件
回復(fù)

使用道具 舉報(bào)

26#
ID:726280 發(fā)表于 2020-4-10 15:26 | 只看該作者
樓主的仿真圖沒有數(shù)碼管顯示嗎
回復(fù)

使用道具 舉報(bào)

27#
ID:728994 發(fā)表于 2020-4-15 17:22 | 只看該作者
樓主,這個(gè)可以調(diào)時(shí)間嗎?
回復(fù)

使用道具 舉報(bào)

28#
ID:936726 發(fā)表于 2021-6-13 02:18 | 只看該作者
nouman 發(fā)表于 2019-5-25 22:54
樓主,YELLOW_B=~YELLOW_B這段是什么作用?新手求教

第二段黃燈
回復(fù)

使用道具 舉報(bào)

29#
ID:942007 發(fā)表于 2021-6-22 12:48 來自手機(jī) | 只看該作者
東西向的燈在仿真圖里面不亮,加一個(gè)南北向那樣的電源就可以了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表