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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

數碼管C語言程序在while(1)程序內部不能顯示前面的位,怎么解決。

[復制鏈接]
跳轉到指定樓層
樓主
ID:626699 發表于 2020-1-5 22:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這個程序里面,如果數碼管顯示程序不在WHILE(1)的內部,58就可以顯示在數碼管上,如果把它放在WHILE(1)里面,如上面的程序那樣,只能讀出來
最后一位8,前一位5閃一下就沒了。這是為什么?如果必須有WHILE(1)的話,請大師傅幫解決一下。謝謝
  1. include<reg52.h>

  2. sbit dula=P2^6;
  3. sbit wela=P2^7;

  4. #define uchar unsigned char
  5. #define uint unsigned int



  6. uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79 ,0x71};
  7. void delay(uchar a)
  8. {
  9.          uchar x,y;
  10.         for(x=a;x>0;x--)
  11.         for( y=109;y>0;y--);
  12. }
  13. void main()
  14. {
  15.     uchar read=0x58;
  16.         bit read_ok=1;
  17.    while(1)
  18.    {
  19.           if(read_ok)
  20.                  {         
  21.                          read_ok=0;
  22.         
  23.                            wela=1;
  24.                            P0=0xfe;
  25.                            wela=0;
  26.                            dula=1;
  27.                            P0=table[read/16];
  28.                            dula=0;
  29.                            delay(5);
  30.                            wela=1;
  31.                            P0=0xfd;
  32.                            wela=0;
  33.                            dula=1;
  34.                            P0=table[read%16];
  35.                            dula=0;
  36.                           delay(5);
  37.         
  38.                      }
  39.                                 
  40.                                 
  41.                 }
  42. }
復制代碼




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

使用道具 舉報

沙發
ID:213173 發表于 2020-1-6 07:12 | 只看該作者
因為
if(read_ok)
{         
     read_ok=0;
就只能執行一次后再也進不了if(read_ok)

  1. #include<reg52.h>

  2. #define uchar unsigned char
  3. #define uint unsigned int

  4. sbit dula=P2^6;
  5. sbit wela=P2^7;

  6. uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79 ,0x71};void delay(uint a)
  7. {
  8.         uint x,y;
  9.         for(x=a;x>0;x--)
  10.                 for( y=110;y>0;y--);
  11. }
  12. void main()
  13. {
  14.         uchar read=0x58;
  15.         bit read_ok=1;
  16.    while(1)
  17.    {
  18.                 P0=0x00;//消隱
  19.                 dula=1;
  20.                 dula=0;
  21.                 if(read_ok)
  22.                 {                        
  23.                         P0=0xfe;
  24.                         wela=1;
  25.                         wela=0;
  26.                         P0=table[read/16];
  27.                         dula=1;
  28.                         dula=0;
  29.                         read_ok=~read_ok;
  30.                 }
  31.                 else
  32.                 {
  33.                         P0=0xfd;
  34.                         wela=1;
  35.                         wela=0;
  36.                         P0=table[read%16];
  37.                         dula=1;
  38.                         dula=0;
  39.                         read_ok=~read_ok;       
  40.                 }
  41.                 delay(5);
  42.         }
  43. }
復制代碼
回復

使用道具 舉報

板凳
ID:89515 發表于 2020-1-6 07:55 來自觸屏版 | 只看該作者
read_ok被你清零了
回復

使用道具 舉報

地板
ID:497656 發表于 2020-1-7 16:54 | 只看該作者

yes,問題所在
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 狠狠热视频 | 国产精品污www在线观看 | 成年人免费在线视频 | 成人伊人 | 成人国产毛片 | 在线播放国产一区二区三区 | 中文字幕成人在线 | 欧美一级二级三级 | 国内自拍偷拍一区 | 精品在线一区 | 一二三四av| 91精品国产手机 | 亚洲精品美女视频 | 91看片网址| av免费在线观看网站 | 国产精品久久精品 | 亚洲欧美视频一区二区 | 国产传媒毛片精品视频第一次 | 亚洲一区二区三区在线视频 | 国产成年人小视频 | 久久精品视频91 | 天天躁日日躁狠狠很躁 | 97精品国产| 最近中文字幕第一页 | 四虎影音 | 成人超碰 | 日韩精品一区二区三区老鸭窝 | 日韩免费网站 | 久久99视频精品 | 日本高清不卡视频 | 免费中文字幕 | 日本天堂视频在线观看 | 韩日视频在线观看 | 午夜免费在线 | 性高朝久久久久久久3小时 av一区二区三区四区 | 久久综合欧美 | 亚洲精品电影在线观看 | 亚洲福利网站 | 国产一区二区三区免费 | 国产一区二区三区四区在线观看 | 做a视频 |