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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4015|回復(fù): 4
收起左側(cè)

PWM+PG160128A液晶 直流點(diǎn)擊調(diào)速系統(tǒng)+仿真

[復(fù)制鏈接]
ID:336397 發(fā)表于 2018-6-28 07:49 | 顯示全部樓層 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png
0.png

單片機(jī)源程序如下:
  1. #include <showfun.h>
  2. #include <stdio.h>

  3. extern char fnLCMInit(); // LCM 初始化
  4. extern void at(unsigned char x,unsigned char y);/*設(shè)定文本x,y值*/
  5. extern void cls();         // 清屏
  6. extern void charout(unsigned char *str); //ASCII(8*8) 顯示函數(shù)
  7. extern void fnSetPos(unsigned char urow, unsigned char  ucol);        // 設(shè)置當(dāng)前地址
  8. extern uchar dprintf(uchar x,uchar y,char *fmt);// ASCII(8*16) 及 漢字(16*16) 顯示函數(shù)
  9. extern uchar fnPR12(uchar uCmd); // 寫無參數(shù)的指令
  10. extern uchar fnPR13(uchar uData); // 寫數(shù)據(jù)
  11. extern unsigned int Adc0832(unsigned char channel);
  12. extern void Line( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2, bit Mode);
  13. extern void Pixel(unsigned char PointX,unsigned char PointY, bit Mode);



  14. uchar dsp[10]={0,0,0,0,0,0,0,0,0,0,};
  15. char abc[3]={0,0,0,};
  16. uchar key=0;
  17. uint a=100;
  18. uchar n=5;
  19. uchar count=1;
  20. uint k1=0;

  21. uchar GeyKey();
  22. void delay(uchar i);
  23. void control();


  24. main()
  25. {  
  26.      
  27.         fnLCMInit();
  28.         fnSetPos(0,0);
  29.         dprintf(0,0,"直流電機(jī)加-減速及測速系統(tǒng)");
  30.         dprintf(0,12,"鍵盤+:步長加速");
  31.         dprintf(0,24,"鍵盤-:步長減速");
  32.         dprintf(0,36,"鍵盤=:順時(shí)針轉(zhuǎn)");
  33.         dprintf(0,48,"鍵盤on/c:逆時(shí)針轉(zhuǎn)");
  34.      
  35.      dprintf(0,72,"方向:");
  36.            dprintf(0,84,"轉(zhuǎn)速:");  
  37.    
  38.          P1_1=0;
  39.      TMOD=0x15;
  40.          TH1=0x3c;
  41.          TL1=0xb0;
  42.      TH0=0x00;
  43.          TL0=0x00;
  44.          ET0=1;
  45.          ET1=1;
  46.          TR0=1;
  47.          TR1=1;
  48.    
  49.     while(1)
  50.         {  key=GeyKey();
  51.       switch(key)
  52.        {   case '1': {          a=10;
  53.                                     //sprintf(abc,"%3.2f",a/255.0);
  54.                                         dprintf(0,96,"  5    r/min");   
  55.                                 //dprintf(0,96,abc);  
  56.                                 dprintf(60,96,"r/min");
  57.                                     break;      }
  58.                case '2': {          a=25;dprintf(0,96,"  25    r/min");    break;      }
  59.                    case '3': {          a=40; dprintf(0,96," 40    r/min");   break;      }
  60.                    case '4': {          a=55; dprintf(0,96," 60    r/min");   break;      }
  61.                    case '5': {          a=70; dprintf(0,96," 80    r/min");   break;      }
  62.                    case '6': {          a=90; dprintf(0,96,"100    r/min");   break;      }
  63.                    case '7': {          a=110; dprintf(0,96,"120    r/min");   break;      }
  64.                    case '8': {          a=130; dprintf(0,96,"135    r/min");   break;      }
  65.                    case '9': {          a=150; dprintf(0,96,"150    r/min");   break;      }
  66.                case '+': {          dprintf(0,72,"方向: 順時(shí)針");
  67.                                     control();
  68.                                                                 break;
  69.                                                 }
  70.            case '-': {         P1_0=0;
  71.                                         dprintf(0,72,"方向: 逆時(shí)針");
  72.                                          control();
  73.                                         break;
  74.                                         }
  75.            case '=': {P1_0=1;dprintf(0,72,"方向: 順時(shí)針");break;}
  76.            case 'c': {P1_0=0;dprintf(0,72,"方向: 逆時(shí)針");break;}
  77.            case '/': {dprintf(0,72,"方向: 順時(shí)針");
  78.                                     control();}
  79.                    default:  break;
  80.         }
  81.     }
  82. }


  83. uchar GeyKey()
  84. {
  85.         P1_4=0;
  86.         P1_5=1;
  87.         P1_6=1;
  88.         P1_7=1;
  89.         P3_0=1;
  90.         P3_1=1;
  91.         P3_2=1;
  92.     P3_3=1;
  93.         _nop_();_nop_();
  94.         if(!P3_0)return '7';
  95.         if(!P3_1)return '8';
  96.         if(!P3_2)return '9';
  97.     if(!P3_3)return '/';
  98.         P1_4=1;
  99.         P1_5=0;
  100.         P1_6=1;
  101.         P1_7=1;
  102.         _nop_();_nop_();
  103.         if(!P3_0)return '4';
  104.         if(!P3_1)return '5';
  105.         if(!P3_2)return '6';
  106.     if(!P3_3)return '*';

  107.         P1_4=1;
  108.         P1_5=1;
  109.         P1_6=0;
  110.         P1_7=1;
  111.         _nop_();_nop_();
  112.         if(!P3_0)return '1';
  113.         if(!P3_1)return '2';
  114.         if(!P3_2)return '3';
  115.     if(!P3_3)return '-';


  116.         P1_4=1;
  117.         P1_5=1;
  118.         P1_6=1;
  119.         P1_7=0;
  120.         _nop_();_nop_();
  121.         if(!P3_0)return 'c';
  122.         if(!P3_1)return '0';
  123.         if(!P3_2)return '=';
  124.     if(!P3_3)return '+';

  125.         return 0;
  126. }


  127. void delay(uchar i)
  128. {  uchar j,k;
  129.     for(;i>0;i--)
  130.     for(j=15;j>0;j--)
  131.     for(k=11;k>0;k--);
  132. }
  133.        
  134.        
  135.        
  136. void time()interrupt 3
  137. {   
  138.      TR1=0;
  139.      count++;
  140.      k1+=TL0;
  141.          if(count==51)
  142.          {     
  143.               sprintf(dsp,"%3d",k1);
  144.                   dprintf(0,108,dsp);   
  145.           dprintf(60,108,"r/min");   
  146.                   count=1;
  147.           k1=0;
  148.       }
  149.           TH1=0x3c;
  150.           TL1=0xb0;
  151.           TH0=0x00;
  152.           TL0=0x00;
  153.           TR1=1;

  154. }

  155. void control()
  156. {                           
  157.        EA=1;
  158.            while(1)
  159.            {    if(a>=150)
  160.                a=150;
  161.                         if(a<=10)
  162.                             a=10;
  163.                          P1_1=0;
  164.                          delay(160-a);
  165.                          P1_1=1;
  166.                          delay(a);
  167.                          key=GeyKey();
  168.                          if(key=='-') a-=n;
  169.                          else
  170.                            if(key=='+') a+=n;
  171. ……………………

  172. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:

PWM直流電機(jī)測速 中文液晶顯示.zip (101.18 KB, 下載次數(shù): 29)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

ID:601567 發(fā)表于 2019-8-31 15:41 | 顯示全部樓層
很不錯(cuò),收藏了
回復(fù)

使用道具 舉報(bào)

ID:601567 發(fā)表于 2019-9-4 14:47 | 顯示全部樓層

很不錯(cuò),收藏了
回復(fù)

使用道具 舉報(bào)

ID:613669 發(fā)表于 2019-9-19 16:25 | 顯示全部樓層
這個(gè)就很不錯(cuò)了,先下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 粉嫩av在线 | 日本一卡精品视频免费 | 成年人免费看 | 欧美日韩高清一区二区三区 | 欧美日韩第一页 | 91精品国产92 | 久久久入口 | 成人午夜影院 | 成人亚洲 | 亚洲精品国产a久久久久久 中文字幕一区二区三区四区五区 | 国产999精品久久久影片官网 | 黄在线免费观看 | 一区二区三区视频在线观看 | 欧美日韩一区不卡 | 日韩不卡一二区 | 国产精品www | 久久久久久国产精品免费免费狐狸 | 国产99精品| jizz视频 | pacopacomama在线| 免费在线观看黄视频 | 激情网站| 免费v片 | 欧美一级黄色网 | 一区二区三区四区在线 | 91人人视频在线观看 | 久久久久久久久久毛片 | 成人午夜免费福利视频 | 自拍视频在线观看 | 国产日产精品一区二区三区四区 | www.伊人.com | 一本在线| 免费不卡视频 | 在线一区二区三区 | 色爱综合网 | 久久精品一区二区三区四区 | 亚洲精品在线看 | 一区二区三区日本 | av手机在线免费观看 | 影音av | 日本人做爰大片免费观看一老师 |