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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于兩位一體共陽極數碼管MCU編程問題

查看數: 3107 | 評論數: 5 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2018-12-25 23:29

正文摘要:

兩位共陽極數碼管  要求顯示 00 10 20一直到90  請問應該怎么編程   還有就是仿真圖如何繪制

回復

ID:393736 發表于 2018-12-26 14:18
robinsonlin 發表于 2018-12-26 10:13
那你就得把程序貼出來,大家才能知道問題在哪里呀

如下。麻煩看一下 是不是哪里有問題
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char                                                         
uchar time;
double count=50;        //定義占空比,并初始占空比為50%
sbit PWM=P3^0;      //P2^0口輸出PWM
sbit zkb_add=P3^6;   //占空比增加的按鍵 的I/O口
sbit zkb_dec=P3^7;   //占空比減小 的按鍵 的I/O口
sbit dula=P2^2;
sbit wela=P2^3;

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};        //共陰極數碼管0~9編碼
/************函數聲明**************/
void delayms(uint z); //延時
void keyscan();          //掃描按鍵
void timer0_init();   //定時器0初始化
/****************延時處理**********************/
void delayms(uint z) //延時xms程序
{
    uint x,y;
        for(y=z;x>0;x--)
                for(y=110;y>0;y--);
}

/*******數碼管顯示占空比********************/
void display_pwm(int num)//占空比顯示
{
  uchar shi;
  shi=num/10;


  dula=0;
  P1=table[shi];
  delayms(10);
  dula=1;

  wela=0;
  P1=table[0];
  delayms(10);
  wela=1;
}




void keyscan()  //按鍵掃描
{

       if(zkb_add==0)            
       {
             delayms(1);  count=count+10;        //每按一次占空比增加按鍵占空比加10%
          if(count>=100)                              //限定占空比上限
                   {
                     count=0;
                     }
        }
      if(zkb_dec==0)
      {  delayms(1);
          count=count-10;                 //每按一次占空比減小按鍵占空比減10%
               if(count<0)    //限定占空比下限
               {
        count=100;
               }
  }
       
}

/***********定時器0初始化***********/
void timer0_init()
{
  TMOD=0x01; //定時器0工作于方式1
  TH0=(65536-10)/256;
  TL0=(65536-10)%256;
  TR0=1;
  ET0=1;
  EA=1;
}

/**************定時0中斷處理******************/
void timer0_int() interrupt 1
{
       
  TR0=0;    //設置定時器初值期間,關閉定時器
  TH0=(65536-10)/256;
  TL0=(65536-10)%256;
  TR0=1;
  time++;
  
  if(time<count)          //count為占空比
  {
        PWM=1;           //輸出高電平
  }
  else
        PWM=0;       
  if(time>=100)
  {
        time=0;
  }

  display_pwm(count);

}

/*********主函數********************/
void main()
{         
        timer0_init();
        delayms(1);
        while(1)
        {
         keyscan();
        }
}
ID:451718 發表于 2018-12-26 10:13
那你就得把程序貼出來,大家才能知道問題在哪里呀
ID:393736 發表于 2018-12-26 08:58
devcang 發表于 2018-12-26 00:11
先找一段代碼,看一下,就清楚了。。。。。。。

經過檢查 圖沒有問題
現在問題就是段選和位選編程那部分 只用一個段選就好用

用兩個就出問題  
ID:449525 發表于 2018-12-26 08:28
網上代碼多的很,自己去百度查找下就清除了,就是7個IO口01控制一個數碼管。
ID:277550 發表于 2018-12-26 00:11


先找一段代碼,看一下,就清楚了。。。。。。。

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产精品久久久久 | 毛片毛片毛片毛片 | 久久大全 | 国产视频精品在线 | 中文字幕国产精品 | 天天射夜夜操 | 国产婷婷色一区二区三区 | 天天天堂 | 一级毛片视频在线 | 日本电影免费完整观看 | 久久综合久久久 | 亚洲 精品 综合 精品 自拍 | 久久成人av电影 | 欧美日韩福利视频 | 久久综合成人精品亚洲另类欧美 | 亚洲在线久久 | 欧美一级在线视频 | 五月天激情综合网 | 91久久久久久久久久久久久 | 看片一区 | 久久久久国产精品 | 国产精品久久久精品 | 国产精品九九九 | 日韩在线一区二区三区 | 久久久久久久久久久久一区二区 | 9999久久| 日本中文字幕在线观看 | 国产日韩一区二区 | 韩三级在线观看 | 国产成人精品免高潮在线观看 | 欧美视频第三页 | 国产精品久久一区二区三区 | 国产黄色av网站 | 亚洲一区在线日韩在线深爱 | 久久久在线视频 | 日韩美女一区二区三区在线观看 | 亚洲国产黄 | 精品久久久久久久久久久久久久久久久 | 福利影院在线看 | 99pao成人国产永久免费视频 | 91精品久久久久久久久 |