微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求助:本人想实现一个按键来控制两种不同的方波信号输出,两种方波之间间隔1秒的时间(具体如下)

求助:本人想实现一个按键来控制两种不同的方波信号输出,两种方波之间间隔1秒的时间(具体如下)

时间:10-02 整理:3721RD 点击:
如,当P1.2口检测到高电平是,单片机P1.0口输出一种方波,1S后输出另外一种方波(两种方波大小差别较大就行)
      当P1.2口检测到低电平是,单片机P1.0无输出。
当P1.3口检测到高电平是,单片机P1.1口输出一种方波,1S后输出另外一种方波(两种方波大小差别较大就行)
      当P1.3口检测到低电平是,单片机P1.1无输出。
我试过几种方式都不能成功,包括采用定时器和计数器,中断都试过,仍然不行,求大神帮忙啊,给个可行的方法都行。

用定时器应该可以实现的,定时器自动重装,然后中断后累计次数  x++;,和一个常量比如 i=128; ,比它小低电平,比它高,高电平,然后调节定时器的初值就可以调节频率,另一个做一秒定时,检测p1.2的电平,检测到后做一秒定时,这里也要有一个判定位,因为不能老是检测,所以只有p1.2低电平后置0,表示原来是低电平,1.2变高判断 一下,然后置1,这样当判定为是1的时候不做定时。你按我的方法试试吧。

那只能说明你程序有问题了

我用的开关,按下为高电平,主函数里面会执行第一个PWM波,定时器定时1S,到时之后执行第二个方波,但是用proteus7.8仿真,但是只有一种波形

一般都是按键按下以后是低电平的,你可以单步仿真看看啊

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top