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

key3

  • 结合"61板"的三个按键完成带有语音播报功能的电子钟:、KEY1--按一下播放年、月、日

    结合"61板"的三个按键完成带有语音播报功能的电子钟:、KEY1--按一下播放年、月、日,再按一下播放时、分 (I/O口A0) // 连续按3s,则进入调整状态 调整状态下调整内容的切换 // 2、KEY2--年、月、日、时、分的增加(I/O口A0) // 3、key3--年、月、日、时、分的减少(I/O口A0)

    标签: KEY1 按键 语音播报 电子钟

    上传时间: 2014-01-14

    上传用户:qunquan

  • ARM7 LPC2368 键盘检测:按一下KEY1

    ARM7 LPC2368 键盘检测:按一下KEY1,L1灯亮,按一下KEY2,L2灯亮,按一下key3,L3灯亮,按一下key3,L4灯亮.

    标签: ARM7 2368 KEY1 LPC

    上传时间: 2013-12-17

    上传用户:顶得柱

  • 调光C程序

    /*#include<reg52.h> #define uint unsigned int #define uchar unsigned char #define uchar unsigned char sbit K1=P3^4; sbit K2=P3^5; sbit ledr=P1^0; sbit ledg=P1^1; sbit ledb=P1^2; bit LEDDirection=0;//LED控制方向0:渐亮1:渐灭 char  pwm=0; char  pwmr=0; char  scw=0;//中断记数 char  tt=0; char n; void dealy(uint z); void Timer0Init(void) {    TMOD=0x01;   TH0=0xff;   TL0=0x47;   EX0=1;    IT0=0;   PX0=1;   ET0=1;    TR0=1;   EA=1; } void main() {   Timer0Init();       while(1){ if(K1==0) { dealy (1); if(K1==0) {TR0=1;   ledr=0;       dealy(5);       TR0=0;       }          }      if(K2==0) { dealy (1); if(K2==0) { while(1) {     ledr=0;  //亮     dealy(100-n*10);     ledr=1;  //熄     dealy(n*10); }   }  }       } } void Time0Isr(void) interrupt 1 {        // pwm=0;      TH0=0xff;      TL0=0x47;          scw++; }*/ #include<reg52.h> #define uchar unsigned char bit LEDDirection=0; sbit P2_0=P1^0; sbit key1=P3^4; sbit key2=P3^5; sbit key3=P3^6; uchar zkb,i,t;// zkb指占空比 uchar pwm; void delay(uchar z) {   uchar x,y;   for(x=z;x>0;x--)    for(y=110;y>0;y--); } void init()  //初始化函数 {      TMOD=0X01;   TH0=(65536-1000)/256;   TL0=(65536-1000)%256;   EA=1;   ET0=1;   TR0=1; } void keyscan()  //键盘扫描   {     P3=0XFF; if(key1==0)   {    delay(5);     if(key1==0)     {      while(!key1);         if(zkb<9)    {      zkb++;    }        }   } if(key2==0)   {    delay(5);     if(key2==0)     {      while(!key2);      if(zkb>0)      {      zkb--;    }     }    }    if(key3==0)   {TR0=1;    delay(5);     if(key3==0)     {while(!key3);    if((zkb<=9)&&(0==LEDDirection))       {            zkb++;                 if(zkb>9)        {           LEDDirection=1;          zkb=9;                   }                }                   if((zkb>=0 )&&(1==LEDDirection))          {         zkb--;                   if(zkb<0 )       {          LEDDirection=0;         zkb=0 ;              //dealy(3000);       }                       }                 }    //pwm=pwmr;                              }             } void main() //主函数   {          zkb=2;     init(); while(1) {   keyscan(); }   } void time0(void) interrupt 1  //中断函数   {          TH0=(65536-200)/256; TL0=(65536-200)%256; ++i;   if(i>10)    {    i=0;    }; if(i<=zkb) {   P2_0=1; } else P2_0=0;   } /*void time0(void) interrupt 0  //中断函数   {          TH0=(65536-1000)/256; TL0=(65536-1000)%256; ++i; if(i>10)    {    i=0;    }; if(i<=zkb) {   P2_0=1; } else P2_0=0;   }*/

    标签: 调光

    上传时间: 2016-07-02

    上传用户:184890962

  • 沁恒CH552E USB-HID自定义键盘带多媒体功能

    用的是沁恒CH552e淘宝买的评估板,USB中断上传程序用的是沁恒提供的做了些修改。程序使用2个端点一个,端点1作为普通键盘,端点2作为多媒体按键,有详细注释多媒体按键报告,以下是主函数内容。/****主函数****/main(){    CfgFsys( ); //CH552时钟选择配置    mDelaymS(5); //修改主频等待内部晶振稳定,必加 ConfigT0(2); //配置2ms T0中断 USBDeviceInit(); //USB设备模式初始化    EA = 1; //允许单片机中断    UEP1_T_LEN = 0; //预使用发送长度一定要清空  UEP2_T_LEN = 0; //清空端点2发送长度    FLAG = 0; //清空USB中断传输完成标志    Ready = 0; LED_VALID = 1;   //给一个默认值 P1_DIR_PU &= 0xE0; //在MOD_OC为0时  p1.5 p1.6 P1.7为推挽输出 P1_MOD_OC = P1_MOD_OC & ~0xE0; //3个口的bit4 = 0   p1.5 p1.6 P1.7设置为推挽输出    P1_DIR_PU = P1_DIR_PU | 0xE0; //3个口的bit4 = 1   p1.5 p1.6 P1.7设置为输出 key1 = 1; key2 = 1; key3 = 1; while(1) {    KeyDrive(); //按键驱动 }}

    标签: ch552e usb

    上传时间: 2022-05-15

    上传用户: