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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)流水燈的子程序調(diào)用問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:301728 發(fā)表于 2018-4-10 15:18 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
編好了一個控制流水燈的程序,思路是在沒有開關(guān)閉合的時候P1的燈是流水燈狀態(tài),如果開關(guān)閉合,控制P1處的燈以兩種不同的模式交替點亮,
這個程序在keil的編譯中沒有錯誤,但是在Proteus仿真中,我發(fā)現(xiàn)P1的燈并不會對按鍵有反應(yīng),始終保持流水燈的狀態(tài),就算是長時間保持開關(guān)閉合,也并不會發(fā)生P1口的燈改變閃爍模式的情況,這個問題困擾了我很長時間,我認(rèn)為既然開關(guān)按下,在if中就可以根據(jù)P3.3,P3.2口的狀態(tài)進(jìn)行相應(yīng)的函數(shù)調(diào)用,但是在仿真中這沒有發(fā)生,誰知道是為什么嗎?


單片機(jī)源程序如下:
  1. #include<reg51.h>//頭文件
  2. #include<intrins.h>
  3. #define uchar unsigned char
  4. void delay(unsigned int i)//控制燈亮?xí)r間的延時函數(shù)
  5. {
  6. uchar t;
  7. while(i--)
  8. {
  9.   for(t=0;t<120;t++);
  10. }
  11. }
  12. void light_0()//控制燈亮的第一種模式
  13. {
  14. uchar m;
  15. for(m=0;m<5;m++)
  16. {
  17.   P1=0x0f;//P1口高四位燈亮
  18.   delay(500);
  19.   P1=0xf0;//p1口第四位燈亮
  20.   delay(500);
  21. }
  22. }
  23. void light_1()//燈亮的第二種模式
  24. {
  25. uchar n;
  26. for(n=0;n<5;n++)
  27. {
  28.   P1=0xff;//P1口全為高電平,燈滅
  29.   delay(500);
  30.   P1=0x00;//P1口全為低電平,燈亮
  31.   delay(500);
  32. }
  33. }
  34. void main()//主程序
  35. {
  36. uchar temp_0,temp_1;
  37. P1=0xfe;
  38. while(1)
  39. {
  40.   temp_0=P3&0x40;//將P3.2口的電位值賦給temp_0
  41.   temp_1=P3&0x80;//將P3.3口的電位值賦給temp_1
  42.   P1=_crol_(P1,1);循環(huán)左移
  43.   delay(500);//保持燈亮
  44.   if(temp_0==0)//判斷P3.2口的電位大小
  45.   light_0();//如果是低電平,執(zhí)行燈亮模式一的函數(shù)
  46.   if(temp_1==0)//檢查P3.3口的電平
  47.   light_1();//如果P3.3口是低電平,執(zhí)行燈亮模式二的函數(shù)
  48.   
  49. }
  50. }  
復(fù)制代碼


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

使用道具 舉報

沙發(fā)
ID:213173 發(fā)表于 2018-4-10 20:44 | 只看該作者
你把賦值寫錯了,不過這個程序還有問題,切換顯示模式后恢復(fù)不了原來流水燈模式,因為P1狀態(tài)變化了。
temp_0=P3&0x04;//將P3.2口的電位值賦給temp_0
temp_1=P3&0x08;//將P3.3口的電位值賦給temp_1
回復(fù)

使用道具 舉報

板凳
ID:303665 發(fā)表于 2018-4-11 08:59 | 只看該作者
wulin 發(fā)表于 2018-4-10 20:44
你把賦值寫錯了,不過這個程序還有問題,切換顯示模式后恢復(fù)不了原來流水燈模式,因為P1狀態(tài)變化了。
temp ...

還要把P1=0xfe;加到while里面去
回復(fù)

使用道具 舉報

地板
ID:301728 發(fā)表于 2018-4-11 16:44 | 只看該作者
疏忽了,多謝各位!
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 午夜免费观看网站 | 免费一区二区 | 欧美日韩手机在线观看 | 天天摸天天干 | 国产精品久久久久久久一区探花 | 精品欧美乱码久久久久久 | 天堂一区二区三区 | 日韩成人在线看 | 国产精品久久福利 | 亚洲第一成人影院 | 毛片免费观看视频 | 人人射人人草 | 日干夜操 | 国产日韩一区 | 天天干亚洲 | 免费一区二区 | 欧美日韩一区在线观看 | 在线āv视频 | 欧美日韩综合精品 | 亚洲精品久久久一区二区三区 | 中文字幕日韩欧美 | 成人国产综合 | 365夜爽爽欧美性午夜免费视频 | 国产精品久久久久久婷婷天堂 | 中文字幕成人在线 | 精品一区二区三区不卡 | 最近中文字幕第一页 | 欧一区 | 激情一区二区三区 | 成人亚洲 | 精品亚洲一区二区三区 | 精品毛片 | 色狠狠一区 | 亚洲一区视频在线 | www.欧美视频 | 欧美日韩黄 | 日韩一区二区三区在线 | 中文字幕一区二区三 | 嫩草视频网站 | 亚洲色图综合网 | 欧美一级黄色网 |