标题:
求BASCOM几条代码,实现D触发器功能。
[打印本页]
作者:
密山色狼
时间:
2018-9-29 16:15
标题:
求BASCOM几条代码,实现D触发器功能。
PD.0输入端 上拉电阻有效,接按钮开关到地,PB.0为输出端。
那么问题来了,怎么能让按钮按下,输出端出高电平,再按下输出端为低电平?
要求 按钮长时间按下,输出端电平不会反复高低变换。意思就是用代码实现CD4013的功能。
求大神解答,付黑币为报酬。若对黑币没兴趣,可以人民币。
作者:
taotie
时间:
2018-9-30 12:39
这是RS触发器功能而非D触发器功能,见3楼
作者:
密山色狼
时间:
2018-9-30 14:03
什么触发器 无所谓,关键是代码。我弄了好几天了,最多K1开,K2关.就是搞不出来一个开关。
作者:
taotie
时间:
2018-10-2 13:16
给你一个51代码做参考。
根据这个来写bascom-avr程序。
使用计数法识别长短按*/
#include<reg52.h>
#define key_S 1000 //宏定义短按(约20ms)
#define key_L key_S*50 //宏定义长按(约1s)
//定义端口
sbit KEY=P1^4;
sbit LED1 = P2^0;
sbit LED2 = P2^1;
unsigned int count=0;//计数变量
int main (void)
{
LED1=1;
LED2=1;
KEY=1; //按键输入端口电平置高
while(1) //主循环
{
if(!KEY) //如果检测到低电平,说明按键按下
{
count++;
if(count==key_L) //长按
LED2=!LED2;
if(count>key_L)
count=key_L+1; //防止count溢出
}
else //按键抬起
{
if(count>key_S && count<key_L)//短按
LED1=!LED1;
count=0; //count清0
}
}
}
作者:
密山色狼
时间:
2018-10-2 19:27
感谢楼上的51代码,嘿嘿 C语言的咱看不懂,我只会一点点BASCOM(BASIC)语言,虽然不会用,但是还得是要感谢你!
作者:
taotie
时间:
2018-10-3 21:45
bascom avr-----用中断实现的单键控制开关——代码
rem Main.bas file generated by New Project wizard
rem
rem Created: 周三 10月 3 2018
rem Processor: ATmega8
rem Compiler: BASCOM-AVR
$regfile="m8det.dat"
$crystal=8000000
ddrd.3=0
portd.3=1
ddrc.0=1
Config Int1 = Falling 'int1由何种信号引发rising/Falling/lowlevel
On Int1 Abc nosave 'int1中断服务子程序标号是abc
Enable Interrupts 'cpu允许中断nterrupts是全局中断
Enable Int1 '允许中断,enable是使能的意思
do
IDLE
loop
End
Abc: '中断服务子程序入口
portc.0=not portc.0
Return
作者:
lzb1989666
时间:
2018-10-4 21:54
这个很简单的,不复杂
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1