功能全部实现;
误差很小;
利用51单片机IO口作输出,通过定时器的周期性中断输出一个占空比可调、频率可调的简易方波信号发生器,具体要求如下:1、完成频率范围为0.1Hz~5KHz的方波发生器,要求如下:(1)占空比5%~95%连续可调;
(2)可键盘输入信号发生的频率。
2、可完成脉宽范围为100μs~1s的脉冲信号发生器,要求如下:(1)可键盘输入发生脉冲宽度;
(2)每按一次触发键,可发出一个单脉冲。
3、根据已经描述的C语言控制程序,运用Proteus画出硬件连接图,并将运用C语言描述的程序下载到Proteus虚拟单片机中,在Proteus中实现“简易方波信号发生器”的各项功能。
1
1.一个精度为0.1s的秒表系统。
2.有启动按钮、暂停按钮及清零按钮。
3每到一秒钟有声音提醒功能,可通过按钮打开及关闭该提醒音。
压缩包中包含proteus仿真图、hex文件和C语言源代码,代码中写有详尽的注释,一看就能懂
2024/1/20 2:15:09 23KB C51 秒表
1
大学生科技制作项目(含原理图、PCB、源代码、Proteus仿真文件、功能说明)使用说明:1. 功能按键说明:S1为功能选择按键,S2为功能扩展按键,S3为数值加一按键。
2. 功能及操作说明:操作时,连续短时间(小于1秒)按动S1,即可在以上的6个功能中连续循环。
中途如果长按(大于2秒)S1,则立回到时钟功能的状态,1, 时钟功能:上电后及显示10:10:00,寓意十全十美。
2, 校时功能:短按一次S1,即当前时间和冒号为闪烁状态,按动S2则小时位加1,按动S3则分钟位加1,秒表不可调。
3, 闹钟功能:短按二次S1,显示状态为22:10:00.冒号为长亮。
按动S2刚小时位加1,按动S3则分钟位加1,秒时不可调。
当按动小时位超过23时则会显示--:--:--,这个表示关闭闹钟功能。
闹钟声为蜂鸣器长鸣3秒钟。
4, 倒计时功能:短按三次S1,显示状态为0.冒号为长灭。
按动S2则从低位依次显示高位,按动S3则相应位加1,当S2按到第6次时会是所设定的时间状态下开始倒计时,再次按动S2将再次进入调整功能,并且停止倒计时。
5, 秒表功能:短按四次S1,显示状态为00:00:00.冒号为长亮。
按动S2则开始秒表计时,再次按动S2则停止计时,当停止计时的时候按动S3则秒表清零。
6, 计数器功能:短按五次S1,显示状态为00:00:00。
冒号为长灭,按动S2则计数器加1.按动S3则计数器清零。
2024/1/20 0:48:52 152KB 时钟
1
利用adc0808实现的数模转换电路,单片机使用AT89c51控制,压缩包内包含Proteus仿真电路图以及keil源代码。
2024/1/19 21:01:25 67KB ADC0808
1
该资源介绍了8255控制数码管显示的程序和proteus仿真原理图,可供参考。
2024/1/10 20:42:36 50KB 8255 led显示
1
Proteus仿真加源码,亲测有效
2023/12/29 2:50:38 469KB 嵌入式
1
网上不是很好找的资料哦,我们自己做的。
这是C程序:#include#defineucharunsignedcharsbitP1_0=P1^0;sbitP1_1=P1^1;sbitP1_3=P1^3;sbitP1_4=P1^4;sbitP1_5=P1^5;sbitP1_6=P1^6;sbitP1_7=P1^7;ucharRRR,flg,KKK;//RRR用于调速控制;
flg=0正转;
flg=1反转;flg=2不转;
KKK为P1的状态寄存ucharloop[2][4]={{0x0c,0x06,0x03,0x09},{0x09,0x03,0x06,0x0c}};voidloop1(void);voidloop2(void);voidstep(void);main(){uchari,j;TMOD=0x10;TL1=0xe0;TH1=0xb1;IE=0;while(1){if(KKK!=P1)//当P1的值发生变化,触发采集信号loop1();if(flg!=2){for(i=0;i<=3;i++){P0=loop[flg][i];for(j=0;j<=RRR;j++) {step();} }}}}voidstep(void)//产生20MS的单位步时间{TF1=0;TR1=1;while(TF1==0);TR1=0;TL1=0xe0;TH1=0xb1;}voidloop1(void)//采集顺时针或逆时针信号,P1.6=1,顺时针,P1.7=1,逆时针{KKK=P1;//暂存P1的状态if(P1_6==1){flg=0;loop2();}elseif(P1_7==1){flg=1;loop2();}elseflg=2;}voidloop2(void){if(P1_0==1)RRR=5;elseif(P1_1==1)RRR=8;elseif(P1_2==1)RRR=11;elseif(P1_3==1)RRR=14;elseif(P1_4==1)RRR=17;elseif(P1_5==1)RRR=20;}
1
基于51单片机的银行自动叫号系统proteus仿真单片机型号AT89C52
2023/12/27 16:04:47 61KB 自动叫号系统 单片机
1
这是一个51单片机的双机通信汇编程序,已调试通过,有proteus仿真,有需要学习的可以分享一下!
2023/12/22 14:27:28 99KB 双机通信程序,仿真
1
89C51双机通信的Proteus仿真及C语言收发程序,包括电路图。
一个MCU发送数据,另一块接收并以ASCII数值LED显示
2023/12/22 5:55:57 17KB 8051 双机通信 Proteus C语言
1
共 420 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡