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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

這個在這個單片機程序怎么不閃爍,使用中斷和定時器使這兩數碼管閃爍

[復制鏈接]
跳轉到指定樓層
樓主




單片機源程序如下:
  1. #include "reg52.h"                        

  2. typedef unsigned int u16;         
  3. typedef unsigned char u8;

  4. sbit LSA1 = P1^0;
  5. sbit LSA2 = P1^1;

  6. u8 n=0;
  7. u8 cnt=0;

  8. u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};


  9. void delay(u16 i)
  10. {
  11.         while(i--);      
  12. }


  13. void DigDisplay()
  14. {
  15.         u8 i;
  16.         if(n==1)
  17.         {
  18.                 for(i=0;i<2;i++)
  19.                 {
  20.                         switch(i)
  21.                         {               
  22.                                 case 0:
  23.                                 LSA1=0;LSA2=1; P2=~(smgduan[1]);break;
  24.                                 case 1:      
  25.                                 LSA1=1;LSA2=0; P2=~(smgduan[4]);break;
  26.                         }
  27.                         delay(10);
  28.                         P2=0xff;
  29.                 }
  30.         }
  31.         if(n==0)
  32.         {
  33.                 LSA1=1;LSA2=1;
  34.                 P2=~(smgduan[8]);
  35.                 delay(10);
  36.         }
  37. }



  38. void exint0() interrupt 0           
  39. {
  40.         n = !n;
  41. }

  42. void main()
  43. {
  44.         TMOD = 0x01;
  45.         TH0 = 0xB8;
  46.         TL0 = 0x00;
  47.         TR0 = 1;
  48.       
  49.   IT0 = 1;                        
  50.   EX0 = 1;                        
  51.   EA = 1;                        

  52.     while(1)
  53.         {      
  54.                 u8 i=0;
  55.                 DigDisplay();  
  56.                 if(TF0 == 1)
  57.                 {
  58.                         TF0 = 0;
  59.                         TH0 = 0xB8;
  60.                         TL0 = 0x00;
  61.                         cnt++;
  62.                         if(cnt >= 50)
  63.                         {
  64.                                 cnt = 0;
  65. //                                LSA1=1;LSA2=
  66.                     P2=0xff;
  67.                                 delay(500);
  68.                               
  69.                         }
  70.                 }
  71.         }
  72.                        
  73. }
復制代碼


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

使用道具 舉報

沙發
ID:435708 發表于 2019-6-20 22:23 | 只看該作者
沒接上拉電阻?
回復

使用道具 舉報

板凳
ID:207421 發表于 2019-6-20 22:51 | 只看該作者
把 n = !n; 放到 78行不就可以了么
回復

使用道具 舉報

地板
ID:568017 發表于 2019-6-20 22:59 | 只看該作者
lwh999995 發表于 2019-6-20 22:51
把 n = !n; 放到 78行不就可以了么

我想的是在顯示14時,數碼管閃爍,而88不顯示
回復

使用道具 舉報

5#
ID:568017 發表于 2019-6-28 10:28 | 只看該作者

可以不用上拉電阻,單片機可以驅動
回復

使用道具 舉報

6#
ID:207421 發表于 2019-6-28 13:34 | 只看該作者
寒山寺小生 發表于 2019-6-20 22:59
我想的是在顯示14時,數碼管閃爍,而88不顯示

你的標題實在看不懂,不是14,88輪流顯示?
顯示14時,數碼管閃爍?
顯示88時,數碼管不閃爍?
回復

使用道具 舉報

7#
ID:568017 發表于 2019-6-28 16:23 | 只看該作者
lwh999995 發表于 2019-6-28 13:34
你的標題實在看不懂,不是14,88輪流顯示?
顯示14時,數碼管閃爍?
顯示88時,數碼管不閃爍?

對原先的解決了,我把LSA1=1和LSA2=1改成了都等于0

if(cnt >= 50)
                        {
                                cnt = 0;
//                                LSA1=1;LSA2=
                    P2=0xff;
                                delay(500);
                              
                        }
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩欧美日韩在线 | av一级一片 | 国产精品视频一区二区三区 | 国产丝袜一区二区三区免费视频 | 中文字幕精品一区二区三区精品 | 一区二区三区高清 | 99精品免费在线观看 | 农村真人裸体丰满少妇毛片 | 午夜精品福利视频 | 亚洲日本欧美日韩高观看 | 午夜精品久久久久久久久久久久 | 精品免费视频 | 老司机精品福利视频 | 日本在线中文 | 久久久婷| 在线播放国产一区二区三区 | 国产精品久久久久久久久久了 | 日本成人在线观看网站 | 久久国内| 日本一区二区三区精品视频 | 国产一级特黄真人毛片 | 国产伦精品 | 黄色视频a级毛片 | 毛片大全 | 久久久久久久av | 国产精品视频网站 | 欧美一区二区在线免费观看 | 99色综合 | 久草免费在线视频 | 国产高清精品一区二区三区 | 欧美精品在线播放 | 日韩电影一区 | 免费视频久久 | 久久最新 | 亚洲高清成人在线 | 免费看a | 欧洲高清转码区一二区 | 97国产一区二区 | 懂色av一区二区三区在线播放 | 婷婷开心激情综合五月天 | 男人天堂色 |