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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 14971|回復: 64
打印 上一主題 下一主題
收起左側

單片機 燈一直亮,不能閃爍,求大神告訴程序哪錯了 新人

  [復制鏈接]
跳轉到指定樓層
樓主
ID:207448 發表于 2017-6-3 17:56 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>
sbit led=P2^0;
void delay500us(void)   //誤差 0us
{
    unsigned char a,b;
    for(b=71;b>0;b--)
        for(a=2;a>0;a--);
}
  void main()
  {
  while(1)
  {
  led=0;
  delay500us();
  led=1;
  delay500us();
  }
  }
燈一直亮,不能閃爍,求大神告訴哪錯了

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

使用道具 舉報

沙發
ID:82765 發表于 2017-6-3 18:18 | 只看該作者
提示: 作者被禁止或刪除 內容自動屏蔽
回復

使用道具 舉報

板凳
ID:207448 發表于 2017-6-3 18:58 | 只看該作者
cjjcjj1 發表于 2017-6-3 18:18
延時時間太短了

一般時間設置多少
回復

使用道具 舉報

地板
ID:123289 發表于 2017-6-3 19:21 | 只看該作者
延時時間大于視覺殘留時間就可以了。
回復

使用道具 舉報

5#
ID:207497 發表于 2017-6-3 21:01 | 只看該作者
這個只能是延時時間太短了,其實數碼管閃爍的原因就是延時時間加上人眼睛的視覺殘留效應引起的,所以修改一下延時時間就行,一般20毫秒就可以
回復

使用道具 舉報

6#
ID:207448 發表于 2017-6-3 21:23 | 只看該作者
yzwzfyz 發表于 2017-6-3 19:21
延時時間大于視覺殘留時間就可以了。

謝謝,我也是江都的
回復

使用道具 舉報

7#
ID:207448 發表于 2017-6-3 21:26 | 只看該作者
cjjcjj1 發表于 2017-6-3 18:18
延時時間太短了

謝謝,大神回復
回復

使用道具 舉報

8#
ID:207499 發表于 2017-6-3 21:35 | 只看該作者
應該把a設置上百最好
回復

使用道具 舉報

9#
ID:207511 發表于 2017-6-3 21:38 | 只看該作者
延時時間問題
回復

使用道具 舉報

10#
ID:111634 發表于 2017-6-4 08:32 | 只看該作者
Dpjaihaozhe 發表于 2017-6-3 18:58
一般時間設置多少

至少0.1s
回復

使用道具 舉報

11#
ID:137239 發表于 2017-6-4 10:28 | 只看該作者
延時時間太短了,刷新太快,小于人眼視覺殘留時間了,可是將延時時間加長,延時時間至少為0.1s
回復

使用道具 舉報

12#
ID:207636 發表于 2017-6-4 12:36 | 只看該作者
延時時間太短了,人眼分辨的時間30ms往上,不然會有視覺停留,感覺不到led的變化的
回復

使用道具 舉報

13#
ID:187614 發表于 2017-6-4 15:20 | 只看該作者
視覺殘留理論上是200ms,刷新數碼管要小于200ms才不會閃爍。
回復

使用道具 舉報

14#
ID:207705 發表于 2017-6-4 16:26 | 只看該作者
延時太短了 肉眼分別不了 換成10000 就能看到效果了
回復

使用道具 舉報

15#
ID:207718 發表于 2017-6-4 16:59 | 只看該作者
延時時間大于視覺殘留時間就可以了
回復

使用道具 舉報

16#
ID:182522 發表于 2017-6-5 08:53 | 只看該作者
修改延遲函數,延遲太短~
回復

使用道具 舉報

17#
ID:140489 發表于 2017-6-5 11:32 | 只看該作者
延時太短,視覺暫留,你看到的就是一直亮著的,加大延時
回復

使用道具 舉報

18#
ID:207954 發表于 2017-6-5 11:50 | 只看該作者
                                                            #include<reg51.h> sbit led=P2^0;  void delay500us(unsigned char ms)  //誤差 0us {    unsigned char i;         while(ms--)         {                 for(i = 0; i < 120; i++);         } }   void main()   {   while(1)   {   led=0;   delay500us(1000);   led=1;   delay500us(1000);   }   }
回復

使用道具 舉報

19#
ID:207954 發表于 2017-6-5 11:50 | 只看該作者

                                                          
#include<reg51.h>
sbit led=P2^0;

void delay500us(unsigned char ms)  //誤差 0us
{
   unsigned char i;
        while(ms--)
        {
                for(i = 0; i < 120; i++);
        }
}
  void main()
  {
  while(1)
  {
  led=0;
  delay500us(1000);
  led=1;
  delay500us(1000);
  }
  }
回復

使用道具 舉報

20#
ID:207985 發表于 2017-6-5 12:50 | 只看該作者
在延時函數里,你讓for循環就是ab的乘積最少10000次
回復

使用道具 舉報

21#
ID:203107 發表于 2017-6-5 14:10 | 只看該作者
延時時間太短1所以看不到,加大延時的時間即可喲
回復

使用道具 舉報

22#
ID:207997 發表于 2017-6-5 14:10 | 只看該作者
延遲太短,建議延長
回復

使用道具 舉報

23#
ID:208024 發表于 2017-6-5 14:52 | 只看該作者

延時時間太短了
回復

使用道具 舉報

24#
ID:170270 發表于 2017-6-5 15:11 | 只看該作者
閃的太快了 人家區別不出來了
回復

使用道具 舉報

25#
ID:204643 發表于 2017-6-5 15:22 | 只看該作者
延時時間短了些
回復

使用道具 舉報

26#
ID:208085 發表于 2017-6-5 16:50 | 只看該作者
延時太短,燈光的閃爍眼睛捕捉不到,延長時間就可以了
回復

使用道具 舉報

27#
ID:208123 發表于 2017-6-5 18:15 | 只看該作者
延時應該長一點人的視覺殘留效應
回復

使用道具 舉報

28#
ID:24714 發表于 2017-6-6 10:16 | 只看該作者
燈在閃,只是你看不清楚,它的亮度低于正常的發光亮度
回復

使用道具 舉報

29#
ID:208588 發表于 2017-6-6 21:56 | 只看該作者
用for循環讓delay500us()多運行幾次,50微秒的閃爍頻率眼睛是分辨不出來的
回復

使用道具 舉報

30#
ID:209421 發表于 2017-6-9 08:51 | 只看該作者
延遲設置為50000試試
回復

使用道具 舉報

31#
ID:209619 發表于 2017-6-9 18:09 | 只看該作者
延時時間太短,人的肉眼無法看到變化,加大延時時間20毫秒以上就可以了
回復

使用道具 舉報

32#
ID:209647 發表于 2017-6-9 19:37 | 只看該作者
延時短。一般500ms吧
回復

使用道具 舉報

33#
ID:209659 發表于 2017-6-9 20:40 | 只看該作者
延時函數都寫成delay500us(2000);   這樣就會每隔一秒閃爍
回復

使用道具 舉報

34#
ID:209691 發表于 2017-6-9 22:15 | 只看該作者
人的視覺停留時間為50ms到200ms,所以延時程序要改到50ms以上
回復

使用道具 舉報

35#
ID:209744 發表于 2017-6-10 09:47 | 只看該作者
看你的程序是由于延時時間太短造成的,你可以借助示波器看一下波形你就會知道。應該還有一個現象就是你這個燈的亮度會比正常燈的亮度要低。因為燈不是一直工作,是間歇性工作的。
回復

使用道具 舉報

36#
ID:209782 發表于 2017-6-10 12:02 | 只看該作者
延時太短了~還可以用led取反加延時,可以簡化一下~
void delayms(unsigned int z)
{
    int x,y;   
    for(x=z;x>0;x--)
        for(y=110;y>0;y--);
}
while(1)
{
    led=~led;
    delayms(1000);
}
回復

使用道具 舉報

37#
ID:209833 發表于 2017-6-10 14:52 | 只看該作者
延時太短 建議加長就行了
回復

使用道具 舉報

38#
ID:209876 發表于 2017-6-10 16:35 | 只看該作者
把a改成13000,b改成13000,就行了
回復

使用道具 舉報

39#
ID:209876 發表于 2017-6-10 16:36 | 只看該作者

一般設置a=13000,b=13000
回復

使用道具 舉報

40#
ID:192284 發表于 2017-6-10 17:54 | 只看該作者
延時這么短的時間,燈熄滅你也看不到啊
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕 视频一区 | 久久se精品一区精品二区 | 天天草天天操 | 日韩在线播放网址 | 9久久精品| 亚洲91 | 天天干视频在线 | h视频免费在线观看 | 欧美a√ | 日本在线网站 | 国产成人精品久久二区二区 | 欧美区在线 | 天天天插| 午夜精品久久久久久 | 成人福利网 | 国产高清视频在线观看 | 久久91 | 亚洲精精品 | 久久国产一区二区三区 | 日本一区二区三区在线观看 | 日本人和亚洲人zjzjhd | 欧美国产精品一区二区三区 | 国产精品国产a级 | 久久成人国产精品 | 五月免费视频 | 狠狠操狠狠色 | 国产在线精品一区二区 | 精品一区二区三区四区五区 | 国产精品福利视频 | 国产黄色精品 | 国产福利小视频 | 91视频精选 | 正在播放国产精品 | 国产在线精品一区二区三区 | 视频三区 | 成人在线中文 | 自拍偷拍精品 | 成人高清在线视频 | 国产9999精品| 一区二区三区网站 | 日韩精品国产精品 |