各位大神过来看看初学有点困难,求指导

2019-07-18 10:35发布

设计目标:在times New Roman">proteus上建立一个仿真系统,系统硬件包括AT89C52单片机4×4行列式键盘、LM016L LCD显示器和虚拟示波器。根据键盘的输入,可输出相应的步进电机脉冲控制信号和直流电机PWM控制信号。输出参数在LCD上显示,输出信号在虚拟示波器上显示。设计要求:1. 4×4行列式键盘布局为:123Step456PWM789StartReset0EnterStop2. LCD分两行显示,第一行为步进电机信号显示,第二行为PWM信号显示,显示格式为:Step   =  50 %PWM  =  50 %等号和百分号上下应对齐。其中的数字可通过键盘输入改变(数字为正整数,最小为1,最大为100)。3. Step=100%时,输出脉冲宽度为1ms的方波(方波的脉冲宽度=脉冲间隔);此后百分数每减1,输出脉冲宽度加1ms4. PWM=1%时,输出脉冲宽度0.1ms,脉冲间隔9.9ms的矩形波;此后百分数每加1,脉冲宽度加0.1ms,脉冲间隔减0.1ms,即保持脉冲周期始终等于10ms5. 系统开机(即仿真开始)后,开机初始显示为:Step   =  50 %PWM  =  50 %6. Start键用于启动输出,按下Start键后,虚拟示波器上应可看到相应的输出波形。7. Stop键用于停止输出,按下Stop键后,虚拟示波器上看不到波形。8. Step键用于改变步进电机信号。按下Step键后,LCD第一行处显示为        Step   =  ■ % 即原有数字消失,有光标闪烁,提示输入数字。无论Start键是否按下,Step键均可使用。9. PWM键用于改变步进电机信号。按下PWM键后,LCD第二行处显示为        PWM  =  ■ % 即原有数字消失,有光标闪烁,提示输入数字。无论Start键是否按下,PWM键均可使用。10. 0~9的数字键用于改变信号输出方式及其LCD显示。按下一个数字,LCD上显示一个相应的数字,同时光标右移一位闪烁。数字键仅在StepPWM键按下后才起作用,否则不改变任何LCD显示和任何波形输出。11. 0~9的数字键最多仅可输入3位数字,当超过3位数字后则输入无效,光标只在最后一位上闪烁。12. Enter键用于确认输入的数字。当数字输入完毕后,按下Enter键,光标消失,系统接受所输入的数字并在LCD上显示。如果此时Start键已按下,即正在输出波形,则波形立即发生改变。13. Step(或PWM)数字输入完毕后,按下PWM(或Step)键,则Enter键功能被自动执行,即所输入数字自动被系统接受,如果此时正在输出波形,则波形立即发生改变。14. Step(或PWM)数字输入完毕后,按下Start键,则Enter键功能被自动执行,即所输入数字自动被系统接受,如果此时正在输出波形,则波形立即发生改变。15. 当按下Step(或PWM)键后,没有输入任何数字,而紧接着按下PWM(或Step)、StartStopEnter,则光标消失,原来在LCD上显示的数字重新显示,脉冲参数不发生任何改变。16. 当在进行数据输入时输进的第一个数字或前两个数字是0时,LCD相应的显示0,但当输入完毕后,最高有效位之前的0应不再显示。17. 当输入的数字超过100,输入完毕后,LCD上应显示100,同时系统接受100%的参数值;当输入数字小于1,输入完毕后,LCD上应显示1,同时系统接受1%的参数值。18. Reset为复位键,按下Reset后,系统参数恢复到50%50%19. fosc24MHz

要求太多啊。做不起来,希望高手做了可以让我们新手学习。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。