dxstar

    1. 我关了看门狗的。不过现在我终于找到原因了,因为其中一个引脚是“复位”功能。我直接把它与LED灯连接后接地,所以一直有“复位”信号存在,程序也就始终在“不执行”了
    2. 大概看了下,图文并茂的蛮不错,但感觉内容有点少,不知道能不能把模电的那些精髓讲清楚,看完后再说。呵呵
    3. 技术人生“白天求生存,晚上谋发展” 64/18252 工作这点儿事 2010-05-18
      说得很实在。
    4. PCB布线经验精华 889/104738 PCB设计 2010-05-18
      我晕,楼主MM不厚道了哦,居然还收费:L
    5. 按键防抖程序问题 20/15390 单片机 2010-05-17
      哈哈,又是按键抖动的问题。不知道当初我那篇帖子还能找得到不。当初我那帖子也是炸出了不少高手牛人来讨论呢
    6. 刚入企业的迷茫…… 27/8590 工作这点儿事 2010-05-12
      唉,楼主MM跟我何其相似啊,我也是到公司都快半年了,感觉什么都做。一方面是真想好好学学东西,但另一方面又无从学起。烦啊
    7. 从零开始学模电系列讲座(力荐) 494/235399 模拟电子 2010-04-27
      来了,再顶顶。
    8. 从零开始学模电系列讲座(力荐) 494/235399 模拟电子 2010-04-22
      前不久看到坛子里的那篇“从单片机初学者迈向单片机工程师”受益匪浅。现在想看看模电方面的知识就发现这篇帖子,真的是太好了,非常的幸运啊
    9. “在中断里来个大延时”?中断里弄延时不是单片机设计里的大大忌吗?(大忌是在主函数延时:funk: )而且消抖的方法有很多啊,我这里只是想看看这个“抖动”,而不是去“消抖”。感觉很多人都误以为我是在讨论“消抖”的方法呢?我觉得我在开头已经说明得很清楚了啊:L
    10. 呵呵,那也要感谢你一直以来的关注哦。其实我就觉得吧,有问题在讨论上发了帖子,无论怎么样,你现在的进展如何,是否问题已经解决,都应该有一个回复。这是对论坛,对各位回复你的网友一个交待。呵呵
    11. 呵呵,真感谢你的回复,为了把代码贴上来,我重新整理了一下,结果发现的确是自己的显示函数充当了“消抖”功能,现把原程序发上来,大家仔细看看就知道问题出在那里呢:L #include #define uchar unsigned char #define uint unsigned int #define LED_PORT P0                 //定义数码管输出 bit g_systTime2Ms=0;         //定义时间标志位 bit g_time10Ms=0; bit flag=0;                        //定义一个按键标志位 sbit io_seg=P2^6;           //段选 sbit io_bit=P2^7;           //位选 sbit key1=P3^4;                   //定义按键 uchar g_num=0;        //定义初始显示值为0 uchar g_dispBuffTemp[6]={0};        //显示缓存区 uchar code g_dispCodeTab[]={   //字符编码         0x3f,0x06,0x5b,0x4f,         0x66,0x6d,0x7d,0x07,         0x7f,0x6f,0x77,0x7c,         0x39,0x5e,0x79,0x71}; void Display()                   //动态扫描数码管函数 {         static uchar s_dispCycle=0;         uchar dispPostTemp[]={1,2,4,8,16,32};         if(g_systTime2Ms)         {                 g_systTime2Ms=0;                 io_seg=1;           //送段选                 LED_PORT=g_dispBuffTemp[s_dispCycle];                 io_seg=0;                 LED_PORT=0xff;          //消影                 io_bit=1;            //送位选                 LED_PORT= ~dispPostTemp[s_dispCycle];                 io_bit=0;                         if(++s_dispCycle>=6) s_dispCycle=0;                } } void DispHex(uchar hex,uchar pos)          //给数码管送值函数 {                pos=pos%6;         g_dispBuffTemp[pos]=g_dispCodeTab[hex]; } void DsipNum()                 //显示数值函数 {         DispHex(g_num/10,0);         DispHex(g_num%10,1);         Display(); } void Timer0Init()         //中断初始化函数 {         TMOD=0X01;         TH0=0XF8;         TL0=0XCC;         ET0=1;         TR0=1; } void Timer0() interrupt 1                         //中断函数 {         static s_countFor10Ms=0;         TH0=0XF8;         TL0=0XCC;         g_systTime2Ms=1;         if(++s_countFor10Ms>=5)         {                 s_countFor10Ms=0;                 g_time10Ms=1;         }        } void main() {         Timer0Init();         EA=1;         while(1)         {                 if(flag)                 {                         if(key1==0)                         {                                 if(++g_num>=100) g_num=0;                                 flag=0;                         }                 }                 else                 {                         if(key1==1) flag=1;                 }         }                DsipNum();        }
    12. 共同学习,共同进步
    13. 你的第一个电子制作,还记得么? 27/7183 单片机 2010-04-17
      貌似到现在我都没有真正的做过一个电子作品,泪奔而去……
    14. 呵呵,楼上先莫激动。不过想想也对,LZ你的态度很有问题,没人亏欠你什么,像你这样一上来就要这要那的,基本上是没人采你的……。最好你是自己动脑筋想想,在GOOGLE百度上多找找资料,实在不会的再来讨论。不过呢,像LZ这样张口就要的性格,多半也不会去下功夫找资料什么的,毕业设计嘛,到时候在老师那里拿一段“参考程序”一切就OK了,唉,当年自己的毕业设计这是这样做的。真的很悲哀
    15. 你是想问你这个交通灯这样设计是否正确,还是程序本身是否正确?呵呵,如果是前者,你自己慢慢去想喽。后者的话,我身边也没带开发板,不然就帮你试试了。呵呵,不过了发现你程序有几个地方不太好, 1.你的delayms(500);有什么用?亮500ms吗?你不是用了中断吗?干什么还用这个delayms函数? 2.单片机应用中,少用这种delayms函数,这是让单片机什么也不干就在那里“空等”,这是单片机设计一大忌。 3.这种LED显示,亮一盏灯的时候,最好把其它灯都关掉,不然因为眼睛的延时作用会觉得灯就在亮着的。   以上纯属个人见解,欢迎拍砖,大家都讨论讨论。:)
    16. 非常感谢你的回复,关于这个按键抖动的问题,你总是给出具体的解决方法,而且我也的确从中得到相应的帮助。关于更深入的探究,小弟实在不才,初学单片机,一时半会也深入不到哪去,还是就此打住,至少我现在把这个按键抖动理解了七七八八了。呵呵
    17. 哇哦,管理员都出来,看来我这帖子发得很有水准嘛:loveliness: 还有我说的加威望之类的纯粹玩笑话:hug:
    18. 呵呵,谢谢你给的检测方法哦。现在我重新找了一个按键按你的方法接单片机的外部中断。的确是有抖动的,多按几次后,会发现有那么一两次会加2之类的。呵呵,我怎么就没想到用外部中断测脉冲的方法来检测这个抖动呢,唉。 对了,你所说的抖动时间也可以用这种方法来检测的,相当于检测这个脉冲的高/低电平时间嘛,用计数器来计数就行啊,呵呵
    19. 谢谢版主大人的回复呵。其实我就是想看到,我不消抖的话,按一次键出现多次按键这种情况。然而无论我怎么测试都“不存在抖动”,于是就对这个按键抖动对程序到底有多大的影响心里没底了。基础对这个“按键抖动”产生的怀疑…… 还有,为什么版主这么容易加威望和芯币啊? 我也要加威望,我也要加芯币:@ 我也要加威望,我也要加芯币:@ 我也要加威望,我也要加芯币:@
    20. 共同学习,共同讨论,共同进步:)

最近访客

< 1/1 >

统计信息

已有135人来访过

  • 芯积分:--
  • 好友:--
  • 主题:3
  • 回复:24

留言

你需要登录后才可以留言 登录 | 注册


307989542 2013-7-18
专业PCB生产厂家
样板:常规板材:0.8-1.6板厚 50x50内(45元) 100x100(90元)
7月所以样板都是九折优惠价~亲
批量价格:(3平米起)380元/平米起~!!!
联系人: 侯R
电话:13510547961 直线电话:0755-61229893
QQ : 1433357429 1935667401
邮箱:houxiaoenpcb@163.com工厂地址:深圳市龙岗区坪地镇同富裕工业区B3栋
查看全部