芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

单片机解密L298N电机驱动模块的单片机驱动程序

单片机解密单片机源程序如下:

  1. 单片机解密#include <reg52.h>

  2. typedef unsigned int u16;

  3. typedef unsigned char u8;

  4. sbit PWM1 = P2^0;        

  5. sbitPWM2 = P2^1;

  6. sbit key_add = P3^2;

  7. sbit key_less = P3^3;

  8. u16count = 50, time;

  9. void init0(){ TMOD= 0x01;        // 方式一

  10. TH0 = (65536 - 10)/256;        // 赋初值

  11. TL0 = (65536 - 10)%256;      

  12. TR0 = 1;      // 开启定时器0      

  13. EA = 1;           // 开启总中断

  14. ET0 = 1;      // 定时器0允许中断}

  15. void delayms(u16 z)   // 延迟函数

  16. {     u16i, j; for (i = z; i > 0; i--)   

  17.        for(j = 110; j > 0; j--);}void speed_add()    // 加速函数

  18. {     if(key_add == 0)      {            

  19. delayms(2);        

  20. if (key_add == 0)            

  21. {                   count+= 5;  // 通过改变占空比来进行加速

  22.   }            

  23. while (!key_add);   
  24. }}
  25. void speed_less()   //减速函数

  26. {   if (key_less == 0)   
  27.   {            delayms(2);     
  28.    if (key_less == 0)         
  29.    {                   count -= 5;      
  30.   }            while(!key_less);   
  31.   }}  
  32. int main (void){ init0();   
  33.    while (1)      {            speed_add();        
  34.      speed_less();             }   
  35. return0;}
  36. void T0_inter() interrupt 1
  37. {    TR0 =0;     
  38. TH0 = (65536 - 10)/256;
  39. TL0 = (65536 - 10)%256;   
  40. TR0 = 1;           
  41. PWM1 = 0;
  42. time++ ;     
  43. if (time < count) // 因为总数是100,所以可以直接看出占空比是多少。
  44.    {            PWM2 = 1;
  45. }      
  46. else {            PWM2= 0; }  
  47.    if(time >= 100)  {            time = 0;      }}



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信