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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機數(shù)字頻率計仿真程序 lcd1602顯示

[復制鏈接]
跳轉到指定樓層
樓主
ID:549284 發(fā)表于 2019-5-28 15:03 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
仿真文件圖片

附上源代碼:
  1. #include <AT89C51.H>
  2. unsigned char codedispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
  3. unsigned char codedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,
  4. 0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};
  5. unsigned chardispbuf[8]={0,0,0,0,0,0,10,10};
  6. unsigned char temp[8];
  7. unsigned chardispcount;
  8. unsigned charT0count;
  9. unsigned chartimecount;
  10. bit flag;                  
  11. unsigned longx;                    
  12.   
  13. voidmain(void)                       //主函數(shù)
  14. {
  15.   unsigned char i;
  16.   
  17.   TMOD=0x15;   
  18.   TH0=0;
  19.   TL0=0;
  20.   TH1=(65536-5000)/256;
  21.   TL1=(65536-5000)%256;
  22.   TR1=1;
  23.   TR0=1;
  24.   ET0=1;
  25.   ET1=1;
  26.   EA=1;
  27.   
  28.   while(1)
  29.    {
  30.      if(flag==1)
  31.        {
  32.          flag=0;
  33.          x=T0count*65536+TH0*256+TL0;        
  34.          for(i=0;i<8;i++)
  35.            {
  36.              temp[ i]=0;
  37.            }
  38.          i=0;
  39.          while(x/10)
  40.            {
  41.              temp[ i]=x%10;
  42.              x=x/10;
  43.              i++;
  44.            }
  45.          temp[ i]=x;
  46.          for(i=0;i<6;i++)
  47.            {
  48.              dispbuf=temp[ i];
  49.            }
  50.          timecount=0;
  51.          T0count=0;
  52.          TH0=0;
  53.          TL0=0;
  54.          TR0=1;
  55.        }
  56.    }
  57. }
  58.   
  59. void t0(void)interrupt 1 using 0             //中斷1模塊的函數(shù)編寫
  60. {
  61.   T0count++;
  62. }
  63.   
  64. void t1(void)interrupt 3 using 0             //中斷3模塊的函數(shù)編寫
  65. {
  66.   TH1=(65536-5000)/256;            
  67.   TL1=(65536-5000)%256;
  68.   timecount++;
  69.   if(timecount==200)            
  70.     {
  71.       TR0=0;
  72.       timecount=0;
  73.       flag=1;
  74. }
  75. P2=0xff;
  76.   P0=dispcode[dispbuf[dispcount]];
  77.   P2=dispbit[dispcount];
  78.   dispcount++;
  79.   if(dispcount==8)
  80.     {
  81.       dispcount=0;
  82.     }
  83. }
復制代碼

全部資料51hei下載地址:
新建文件夾.rar (15.49 KB, 下載次數(shù): 125)

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

使用道具 舉報

沙發(fā)
ID:115923 發(fā)表于 2020-10-4 21:08 | 只看該作者
這個51單片機中C語言,  里面會用到int能轉換為字符串類型嗎?怎么轉換?

因為是C51, 所以不能用 VC++里面的C語言代碼 eg: itoa, 也不要用打印的 eg: sprintf 這些函數(shù).
為什么? 因為C51的內(nèi)存太小 ,如果這樣用非常占用資源. 有些朋友 這樣使用就 顯得不夠專業(yè)了.
所以, 一般我們是這樣自己寫代碼使用實現(xiàn)的: 字符串改為數(shù)組的形式.
unsigned char dat[5];
dat[4]=Num/10000+'0';
dat[3]=Num%10000/1000+'0';
dat[2]=Num%1000/100+'0';
dat[1]=Num%100/10+'0';
dat[0]=Num%10+'0'
回復

使用道具 舉報

板凳
ID:115923 發(fā)表于 2020-10-9 08:30 | 只看該作者
unsigned char dat[5];
dat[4]=Num/10000+'0';
dat[3]=Num%10000/1000+'0';
dat[2]=Num%1000/100+'0';
dat[1]=Num%100/10+'0';
dat[0]=Num%10+'0'
上次發(fā)送的這些代碼 可以很好的運用在 樓主的 計數(shù)后 在LCD上顯示使用.
因為LCD1602只能顯示字符的, 所以要把數(shù)字 0 轉換為'0' , ......  以上值得的大家學習!
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品视频网站在线观看 | 免费av直接看 | 国产精品毛片无码 | 中文字幕亚洲一区二区三区 | 精品国产欧美一区二区三区不卡 | 久久99精品久久久97夜夜嗨 | 水蜜桃久久夜色精品一区 | 精品美女在线观看 | 欧美一级黄色免费看 | 亚洲精品黄色 | 亚洲国产精品激情在线观看 | 日韩 欧美 综合 | 又黑又粗又长的欧美一区 | 欧美综合久久 | 国产精品久久久久久久久久久久午夜片 | 久久er99热精品一区二区 | 91久久精品一区二区二区 | 成人精品区 | 久青草影院 | 午夜视频在线免费观看 | 欧美一区2区三区3区公司 | 亚洲午夜av久久乱码 | 久久久这里都是精品 | 国产精品久久久久久久久久免费看 | 国产主播第一页 | 欧美专区在线 | 欧美6一10sex性hd | 91在线精品一区二区 | 亚洲在线免费观看 | 免费三级av | 91在线一区| 影音先锋中文字幕在线观看 | a视频在线 | 91精品一区二区三区久久久久 | 欧美激情在线一区二区三区 | 天天夜夜人人 | 中文字幕久久精品 | 国产精品久久久久永久免费观看 | 亚洲一区二区综合 | 成人在线精品视频 | 久久99视频精品 |