打印

为何proteus仿真得不到预期输出?

[复制链接]
1236|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mfkyygt|  楼主 | 2014-3-25 15:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 mfkyygt 于 2014-3-25 15:53 编辑

用proteus做一个过零控制的测试电路,过零信号输入tiny13的PB1(INT0)口,PB4为输出
中断int0设置为下降沿触发,中断处理就直接取反PB4电平,按道理应该是一频率和过零信号对应的方波吧,为何结果却是这样呢?是否proteus需要设置什么?


中断程序:
#pragma interrupt_handler int0_isr:iv_INT0
void int0_isr(void)
{
//过零触发,f =100Hz
  COM(PORTB,PB4);
}

void timer0_init(void)
{  
  CLI();          //关中断
  TCCR0B = 0x00;  //stop
  OCR0A = 0x95;
  OCR0B = 0x95;
  TCNT0 = 0x6B;   //set count
  TCCR0A = 0x00;
  TCCR0B = 0x03;  //start timer
  MCUCR  =0x02;
  TIMSK0 =0x02;   
  GIMSK  =0x40;   
  SEI();          //开中断
}

相关帖子

沙发
mfkyygt|  楼主 | 2014-3-26 09:07 | 只看该作者
本帖最后由 mfkyygt 于 2014-3-26 09:10 编辑

忘记补上仿真电路图,昨晚考虑了一下,不知是否过零的波形不好造成int0中断触发了?于是改了PB1直接注入方波进行测试,结果真的得到预期的方波输出,现在问题是是否需要在光耦输出加一级整形电路?再试试看

QQ图片20140326085113.jpg (124.62 KB )

QQ图片20140326085113.jpg

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

65

帖子

0

粉丝