基本信息
源码名称:单片机长短按键实现与仿真
源码大小:0.07M
文件格式:.rar
开发语言:C/C++
更新时间:2024-03-31
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 5 元×
微信扫码支付:5 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
#include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int #define ulong unsigned long sbit keyback=P1^0; //sbit k=P1^4; sbit led1=P1^1; sbit led2=P1^2; sbit led3=P1^3; static uint i=0; uchar keystay=0x00; uchar T0RH; uchar T0RL; void configtimer0(uchar ms) { ulong tmp; tmp=11059200/12; tmp=(ms*tmp)/1000; tmp=65536-tmp 10; T0RH=(unsigned char)(tmp>>8); T0RL=(unsigned char)tmp; TMOD &=0xF0; TMOD |=0x01; TH0=T0RH; TL0=T0RL; ET0=1; TR0=1; } void Judge(uint num) { if((5<num)&&(num<=50)) { led1=0; led2=1; led3=1; i=0; } if((50<num)&&(num<=120)) { led1=1; led2=0; led3=1; i=0; } if(num>120) { led1=1; led2=1; led3=0; i=0; } } main() { EA=1; configtimer0(10); while(1) { if((keystay&0xFF)==0x00) { Judge(i); } } } void keyscan() { keystay=(keystay<<1) | (!keyback); } void interrupt_timer0()interrupt 1 { TH0=T0RH; TL0=T0RL; keyscan(); if((keystay&0xFF)==0xFF) { i ; if(i>400) { i=0; } } }
【源码目录】
长短按键
├── 长短按键
│ ├── key
│ ├── key.LST
│ ├── key.M51
│ ├── key.OBJ
│ ├── key.c
│ ├── key.hex
│ ├── key.lnp
│ ├── key.plg
│ ├── key.uvopt
│ ├── key.uvproj
│ ├── key_uvopt.bak
│ └── key_uvproj.bak
└── 长短按键proteus
├── Last Loaded 这是各位想要的10天学会51与C配套仿真开发板.DBK
├── 这是各位想要的10天学会51与C配套仿真开发板.DSN
└── 这是各位想要的10天学会51与C配套仿真开发板.PWI
2 directories, 15 files