打印

旋转时钟

[复制链接]
1961|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
510838570|  楼主 | 2011-4-1 20:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
abin0415| | 2011-4-1 21:22 | 只看该作者
有人竟然会提这种要求。。。。。。。。。。。。。

使用特权

评论回复
板凳
huangqi412| | 2011-4-2 09:45 | 只看该作者
搞毕业设计吧。

使用特权

评论回复
地板
510838570|  楼主 | 2011-4-2 14:09 | 只看该作者
不是,刚刚大一,参加专业搞的电子设计大赛,弄了几天,弄不出来那程序

使用特权

评论回复
5
koolean| | 2011-4-2 14:25 | 只看该作者
控制LED灯做跑马灯你应该会把,这个咱不说了,是不是对于用霍尔元件做外部中断产生问题?

主要是霍尔元件会产生半开关状态,造成外部中断误读?
如果是这个问题,两个小方法可以减少这种误差,将霍尔元件接到三极管的B极,或者是施密特触发器的触发口。
以保证霍尔元件的触发型号给单片机的是cmos电平。其次就是在程序中设定死区,将中断中读到的触发次数进行过滤,即在某一定的时间内,比如100ms,读到的电平必须一直保持高电平或者低电平,或者是,在100ms内,读到10次同样的电平,则确认霍尔元件完全打开。或者完全关闭。若在次期间出现电平变化,则变化前的计数全部无效,应该清零。

使用特权

评论回复
6
510838570|  楼主 | 2011-4-3 09:09 | 只看该作者
我在弄程序的时候遇到一个很奇怪的问题,比如
void int0() interrupt 0        //外部中断0程序入口
{
     display();               //display()为要显示的东西
}
这样就能显示我想要他显示的字
可是当我把一个数比如n定义为全局变量
然后
main()
{
     EA=1;
  ET0=1;
  TR0=1;
  if(n==1)
  { n=0;display();   }

}
void int0() interrupt 0        //外部中断0程序入口
{
     n++;              
}
那他就不会显示我们想要的字
请问为什么会这样
还有,霍尔元件的灵敏度是不会不太好

使用特权

评论回复
7
chenczy| | 2011-4-3 16:51 | 只看该作者
你的N好像一直是0和1,不知道那要干什么,就这么点东西,看不明

使用特权

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

本版积分规则

0

主题

7

帖子

1

粉丝