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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

直流電機調速(lcd602顯示轉速)

[復制鏈接]
跳轉到指定樓層
樓主
ID:71407 發表于 2014-12-31 13:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. /* 端口定義*/
  5. sbit in1=P1^0;
  6. sbit in2=P1^1;
  7. sbit jian=P2^0;
  8. sbit jia=P2^1;
  9. sbit dir=P2^2;
  10. sbit run=P2^3;
  11. sbit inter_0=P3^2;
  12. sbit inter_1=P3^3;
  13. #define LCD_data  P0             //數據口
  14. sbit LCD_RS  =  P2^7;            //寄存器選擇輸入
  15. sbit LCD_RW  =  P2^6;            //液晶讀/寫控制
  16. sbit LCD_EN  =  P2^5;            //液晶使能控制
  17. sbit LCD_PSB =  P2^4;            //串/并方式控制
  18. uchar t10,t1,ce,cj,s1=0,pl=10;
  19. uchar zi[]={"電機轉速:"};
  20. uchar num[3];
  21. uint nums=0,speed,k=1200;
  22. void delay_1ms(uchar x)
  23. {
  24. uchar i,j;
  25. for(j=0;j<x;j++)
  26. for(i=0;i<110;i++);
  27. }
  28. /*******************************************************************/
  29. /*                                                                 */
  30. /*寫指令數據到LCD                                                  */
  31. /*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。                             */
  32. /*                                                                 */
  33. /*******************************************************************/
  34. void write_cmd(uchar cmd)
  35. {                        
  36.     LCD_RS = 0;
  37.     LCD_RW = 0;
  38.     LCD_EN = 0;
  39.     P0 = cmd;
  40. delay_1ms(5);
  41.     LCD_EN = 1;
  42. delay_1ms(5);
  43.     LCD_EN = 0;
  44. }
  45. /*******************************************************************/
  46. /*                                                                 */
  47. /*寫顯示數據到LCD                                                  */
  48. /*RS=H,RW=L,E=高脈沖,D0-D7=數據。                               */
  49. /*                                                                 */
  50. /*******************************************************************/
  51. void write_dat(uchar dat)
  52. {                        
  53.     LCD_RS = 1;
  54.     LCD_RW = 0;
  55.     LCD_EN = 0;
  56.     P0 = dat;
  57. delay_1ms(5);
  58.     LCD_EN = 1;
  59. delay_1ms(5);
  60.     LCD_EN = 0;
  61. }
  62. /*********************************************************/
  63. /*                                                       */
  64. /* 設定顯示位置                                          */
  65. /*                                                       */
  66. /*********************************************************/
  67. void lcd_pos(uchar X,uchar Y)
  68. {                        
  69.    uchar  pos;
  70.    if (X==0)
  71.      {X=0x80;}
  72.    else if (X==1)
  73.      {X=0x90;}
  74.    else if (X==2)
  75.      {X=0x88;}
  76.    else if (X==3)
  77.      {X=0x98;}
  78.    pos = X+Y ;
  79.    write_cmd(pos);     //顯示地址
  80. }
  81. /*******************************************************************/
  82. /*                                                                 */
  83. /*  LCD初始化設定                                                  */
  84. /*                                                                 */
  85. /*******************************************************************/
  86. void lcd_init()
  87. {
  88.     LCD_PSB = 1;         //并口方式
  89.     write_cmd(0x30);      //基本指令操作
  90.     delay_1ms(5);
  91.     write_cmd(0x0C);      //顯示開,關光標
  92.     delay_1ms(5);
  93.     write_cmd(0x01);      //清除LCD的顯示內容
  94.     delay_1ms(5);
  95. }
  96. void main()
  97. {TMOD=0x02;
  98. TH0=0X6;
  99. TL0=0X6;
  100. EA=1;
  101. ET0=1;
  102. TR0=1;
  103. IT0=1;
  104. EX0=1;
  105. IT1=1;
  106. EX1=1;
  107. PX1=1;
  108. PT0=1;
  109. t10=1;
  110. t1=10;
  111. delay_1ms(10);                 //延時
  112.     lcd_init();
  113.     lcd_pos(0,2);         
  114.     write_dat(zi[0]);     
  115. write_dat(zi[1]);  
  116.                
  117. write_dat(zi[2]);  
  118. write_dat(zi[3]);   
  119.             
  120. write_dat(zi[4]);     
  121. write_dat(zi[5]);
  122.             
  123. write_dat(zi[6]);     
  124. write_dat(zi[7]);
  125.            
  126. write_dat(zi[8]);     
  127. while(1);
  128. }
  129. count0(void) interrupt 1
  130. {pl--;
  131. if(pl==0)
  132.    {k--;
  133.    if(k==0)
  134.    {k=1200;
  135.    speed=nums/3;
  136.    num[0]=speed%10+48;
  137.    num[1]=speed/10%10+48;
  138.    num[2]=speed/100+48;
  139.    lcd_pos(1,3);         
  140.     write_dat(num[2]);     
  141. write_dat(num[1]);
  142.     write_dat(num[0]);
  143.     nums=0;
  144.    }
  145.    pl=10;
  146.     s1++;
  147.   if(run==1)
  148.    {if(dir==1)
  149.       {if(s1<=t10)
  150.           {in1=1;
  151.            in2=0;}
  152.        if((s1>t10)&&(s1<=t1))
  153.           {in1=0;in2=0;}
  154.    }
  155.    else
  156.      {if(s1<=t10)
  157.       {in2=1;
  158.        in1=0;}
  159.       if((s1>t10)&&(s1<=t1))
  160.         {in2=0;in1=0;}
  161.   }
  162.    }
  163.   else
  164.   {in1=0;in2=0;}
  165.      if(s1>=t1)
  166.          s1=0;
  167. }
  168. }

  169. int_0(void) interrupt 0
  170. {delay_1ms(15);
  171. if(inter_0==0)
  172. {if(jian==0)
  173.   {if(t10>=1)
  174.   t10--;
  175.   }
  176. if(jia==0)
  177.    {if(t10<10)
  178.      t10++;}
  179. }
  180. }
  181. int_1(void) interrupt 2
  182. {nums++;}
復制代碼


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

使用道具 舉報

沙發
ID:121039 發表于 2016-6-4 23:04 | 只看該作者
發個圖看看
回復

使用道具 舉報

板凳
ID:158687 發表于 2016-12-29 16:51 | 只看該作者
能不能看下原理圖,謝謝
回復

使用道具 舉報

地板
ID:736988 發表于 2020-5-14 17:26 | 只看該作者
發一下仿真圖,謝謝啦
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91在线精品一区二区 | 在线视频中文字幕 | 日韩国产在线观看 | 欧美专区日韩专区 | 日韩三片| 国产精品特级毛片一区二区三区 | 99国内精品久久久久久久 | 国产成人精品网站 | av毛片在线免费观看 | 亚洲一区二区三区在线播放 | 久久这里只有精品首页 | 97国产精品视频 | 国产中文字幕亚洲 | 午夜一区二区三区在线观看 | 欧美日韩精品在线一区 | 天天天天天天天干 | 午夜精品一区二区三区在线播放 | 韩日一区二区 | 丁香婷婷综合激情五月色 | 日本久久一区二区三区 | 日韩在线播放网址 | 中文字幕一区二区三区精彩视频 | 成人免费在线播放视频 | 成人av免费| 日本人爽p大片免费看 | 欧美日韩在线观看一区二区三区 | 91九色麻豆 | 亚洲综合小视频 | 成人av一区二区三区 | 伊人欧美视频 | 99成人精品 | 亚洲精品在线观看视频 | 国产国产精品久久久久 | 国产精品大全 | 中文字幕在线免费 | 久草久草久草 | 久久久成人一区二区免费影院 | 久久激情视频 | 欧美精品中文 | 91亚洲精品在线 | 国产欧美在线一区二区 |