虫虫首页|资源下载|资源专辑|精品软件
登录|注册

看程序

  • 实现哈弗曼

    实现哈弗曼,详细的写明了实现方法,同时还附有中文解释,在看程序更容易弄懂

    标签:

    上传时间: 2013-12-29

    上传用户:FreeSky

  • 小车控制程序

    小车的驱动程序,驱动板就是一个51的最小系统板,具体的看程序内部吧

    标签: 小车程序 上位机 下位机

    上传时间: 2015-04-12

    上传用户:edwalik

  • stm32小量iap

    1.此代码基于红牛开发板,请根据自己的板子进行修改。 2.通过修改网上的代码实现,修改前的功能开了一个很大的缓存接收app数据,然后一次性全部数据写入, 但是这个在实际应用中没多大用,所以修改为一次写入128个字节。 3.程序flash的偏移地址为0x8010000,所以app编译前应该在mdk中设置 Option窗口->Target页->IROM1,start 改为 0x8010000 4.设置中断向量重映射,我用的方法是在app端的main函数起始位置添加语句 SCB->VTOR = FLASH_BASE | 0x10000; 5.启动时如果发现没有app,会进入bootloader模式(灯全亮),如果发现有程序就要看程序的功能了。 如果有app,但是又想重新升级的话就按住某个键(我这里是Tamper),然后按复位,松开复位之前不要松开 按键,这样就会进入bootloader模式。 6.进入bootloader后通过串口1接收升级app数据,bin文件数据,接收完成后按User1键进行升级操作,完成后 复位或者按User2键可以运行刚写入的app。

    标签: stm32 iap

    上传时间: 2015-05-18

    上传用户:llma2017

  • 一个按键控制的 10 级变速跑马灯试验

    在本课中,我们要用一个按键来实现跑马灯的 10 级调速。这又会涉及到键的去抖的问 题。  本课的试验结果是,每按一次按键,跑马速度就降低一级,共 10 级。  这里我们又增加了一个变量 speedlever,来保存当前的速度档次。  在按键里的处理中,多了当前档次的延时值的设置。  请看程序:  ――――――――――――――――  #define uchar unsigned char //定义一下方便使用  #define uint unsigned int  #define ulong unsigned long  #include <reg52.h> //包括一个 52 标准内核的头文件    sbit P10 = P1^0; //头文件中没有定义的 IO 就要自己来定义了  sbit P11 = P1^1;  sbit P12 = P1^2;  sbit P13 = P1^3;  sbit K1= P3^2;    bit ldelay=0; //长定时溢出标记,预置是 0  uchar speed=10; //设置一个变量保存默认的跑马灯的移动速度  uchar speedlever=0; //保存当前的速度档次    char code dx516[3] _at_ 0x003b;//这是为了仿真设置的  //一个按键控制的 10 级变速跑马灯试验  void main(void) // 主程序  {   uchar code ledp[4]={0xfe,0xfd,0xfb,0xf7};//预定的写入 P1 的值   uchar ledi; //用来指示显示顺序   uint n;     RCAP2H =0x10; //赋 T2 的预置值 0x1000,溢出 30 次就是 1 秒钟   RCAP2L =0x00;   TR2=1; //启动定时器   ET2=1; //打开定时器 2 中断   EA=1; //打开总中断     while(1) //主程序循环   {   if(ldelay) //发现有时间溢出标记,进入处理   {   ldelay=0; //清除标记   P1=ledp[ledi]; //读出一个值送到 P1 口   ledi++; //指向下一个   if(ledi==4)   {   ledi=0; //到了最后一个灯就换到第一个   }   }   if(!K1) //如果读到 K1 为 0   {   for(n=0;n<1000;n++); //等待按键稳定   while(!K1); //等待按键松开   for(n=0;n<1000;n++); //等待按键稳定松开     speedlever++;   if(speedlever==10)speedlever=0;   speed=speedlever*3; //档次和延时之间的预算法则,也可以用查表方法,做出 不规则的法则   }   }  }  //定时器 2 中断  timer2() interrupt 5  {   static uchar t;   TF2=0;   t++;     if((t==speed)||(t>30)) //比较一个变化的数值,以实现变化的时间溢出,同时限制了最慢速 度为 1 秒   {   t=0;   ldelay=1;//每次长时间的溢出,就置一个标记,以便主程序处理   }  }  ――――――――――――――――――――――   请打开 lesson11 目录的工程,编译,运行,看结果:  按 K1,速度则降低一次,总共 10 个档次。 

    标签: 10 按键控制 变速 跑马灯

    上传时间: 2017-11-06

    上传用户:szcyclone

  • 模拟 PWM 输出控制灯的 10 个亮度级别

    LED 一般是恒流操作的,如何改变 LED 的亮度呢?答案就是 PWM 控制。在一定的 频率的方波中,调整高电平和低电平的占空比,即可实现。比如我们用低电平点亮一个 LED 灯,我们假设把一个频率周期分为 10 个时间等份,如果方波中的高低电平占空比是 9:1, 这是就是一个比较暗的亮度,如果方波中高低电平占空比是 10:0,这时,全部是高电平, 灯是灭的。如果占空比是 5:5,就是一个中间亮度,如果高低比是 1:9,是一个比较亮的 亮度,如果高低是 0:10,这时全部是低电平,就是最亮的。  实际上应用中,电视屏幕墙中的几十百万 LED 象素都是这样控制的,而且每一个象素 都有红绿蓝 3 个 LED,每个 LED 可以变化的亮度是几百到几万或者更多的级别,以实现真 彩色的显示。还有在您的手机中,背光灯的亮度如果是可以变化的,也应该是这种工作方式。 目前的城市彩灯也有很多都使用了 LED,需要控制亮度是也是 PWM 控制。  下面来分析我们的例程,在这个例程中,我们将定时器 2 溢出定为 1/1200 秒。每 10 次脉冲输出一个 120HZ 频率。这每 10 次脉冲再用来控制高低电平的 10 个比值。这样,在 每个 1/120 秒的方波周期中,我们都可以改变方波的输出占空比,从而控制 LED 灯的 10 个 级别的亮度。  为什么输出方波的频率要 120HZ 这么高?因为如果频率太低,人眼就会看到闪烁感 觉。一般起码要在 60HZ 以上才感觉好点,120HZ 就基本上看不到闪烁,只能看到亮度的变 化了。  下面请看程序,程序中有比较多的注释:  ―――――――――――――――――――――――  #define uchar unsigned char //定义一下方便使用  #define uint unsigned int  #define ulong unsigned long  #include <reg52.h> //包括一个 52 标准内核的头文件    sbit P10 = P1^0; //要控制的 LED 灯  sbit K1= P3^2; //按键 K1    uchar scale;//用于保存占空比的输出 0 的时间份额,总共 10 份    char code dx516[3] _at_ 0x003b;//这是为了仿真设置的  //模拟 PWM 输出控制灯的 10 个亮度级别  void main(void) // 主程序  {   uint n;     RCAP2H =0xF3; //赋 T2 的预置值,溢出 1 次是 1/1200 秒钟   RCAP2L =0x98;   TR2=1; //启动定时器   ET2=1; //打开定时器 2 中断   EA=1; //打开总中断   while(1) //程序循环   { ;//主程序在这里就不断自循环,实际应用中,这里是做主要工作   for(n=0;n<50000;n++); //每过一会儿就自动加一个档次的亮度   scale++;   if(scale==10)scale=0;   }  }  //1/1200 秒定时器 2 中断  timer2() interrupt 5  {   static uchar tt; //tt 用来保存当前时间在一秒中的比例位置   TF2=0;     tt++;   if(tt==10) //每 1/120 秒整开始输出低电平   {   tt=0;     if(scale!=0) //这里加这一句是为了消除灭灯状态产生的鬼影   P10=0;   }     if(scale==tt) //按照当前占空比切换输出高电平   P10=1;    }  ――――――――――――――――――  在主程序中,每延时一段时间,就自动换一个占空比,以使亮度自动变化,方便观察。  编译,运行,看结果。  可以看到,LED 的亮度以每种亮度 1 秒左右不断变化,共有 10 个级别。

    标签: PWM 10 模拟 控制灯 亮度 输出

    上传时间: 2017-11-06

    上传用户:szcyclone

  • 优秀的木马程序,自己看吧

    优秀的木马程序,自己看吧

    标签: 木马 程序

    上传时间: 2015-01-05

    上传用户:leixinzhuo

  • J2ME的动画制作程序, 在很短的时间内, 连续在同一个位置画上好几张图, 最适合的时间是在一秒中内画20到30张图, 这样的效果是让用户看起来会有不间断的感觉.

    J2ME的动画制作程序, 在很短的时间内, 连续在同一个位置画上好几张图, 最适合的时间是在一秒中内画20到30张图, 这样的效果是让用户看起来会有不间断的感觉.

    标签: J2ME 动画 程序 用户

    上传时间: 2015-01-07

    上传用户:风之骄子

  • 经典游戏俄罗斯方块的制作程序,想成为游戏制作高手,次程序不能不看

    经典游戏俄罗斯方块的制作程序,想成为游戏制作高手,次程序不能不看

    标签: 程序 俄罗斯方块 高手

    上传时间: 2014-01-22

    上传用户:叶山豪

  • 这是一个不错的程序 值得亦看 可以仔细研究研究

    这是一个不错的程序 值得亦看 可以仔细研究研究

    标签: 程序

    上传时间: 2015-01-17

    上传用户:weixiao99

  • 这是一个不错的程序 值得亦看 可以仔细研究研究

    这是一个不错的程序 值得亦看 可以仔细研究研究

    标签: 程序

    上传时间: 2013-12-14

    上传用户:妄想演绎师