头像-17991

芯知识学堂SingleYork 今天的付出,是为了明天更好的享受! http://www.ickey.cc/group-show-id-6.html关注有惊喜!

  • 广东省深圳市
  • 专科
  • 单片机、嵌入式、EDA/PCB、RF/无线、电源技术、测试测量LED/显示、传感器/MEMS
  • 消费电子、汽车电子、医疗电子、工控电子、设计、测试仪器及设备、其它

个人成就

获得 349 次赞

帮助过549人

两个数(每个数都是几个数相乘的积)比较大小出现异常

本帖最后由 SingleYork 于 2016-8-12 18:44 编辑 如题,51单片机中,在程序中设置两个数SetTime、RunTime,比较这两个数的大小,均是unsigned long类型,其中: SetTime = SetDay*24*60*60 + SetHour*60*60; 即:将设置的“天数”跟设置的“小时数”换算成“秒数”,再赋值给SetTime ,也就是SetTime 的单位为:秒;SetDay、SetHour均为unsigned char类型; RunTime = Day*24*60*60+Hour*60*60+Min*60+Sec; 原理同SetTime一样,也是全部换算成秒来做比较;其中Day、Hour、Min、Sec也均为unsigned char类型; RunTime是由定时器产生,具体方式如下(为了减少等待时间,数据做了处理,最终结果是:1小时相当于10秒钟): 换算完成之后,再将两个数做对比,若RunTime>SetTime,则输出一个信号: 那么问题来了: 当我设置SetDay=0;SetHour=1;时,也就是1个小时,RunTime大于10秒(之前有说明,为了缩短等待时间做的数据处理,1小时等于10秒)时就会给出一个信号; 当我设置SetDay=0;SetHour=2;时,也就是2个小时,RunTime大于20秒时就会给出一个信号; 当我设置SetDay=0;SetHour=3;时,也就是3个小时,RunTime还是大于20秒时就会给出一个信号; 当我设置SetDay=0;SetHour=4;时,也就是4个小时,RunTime还是大于20秒时就会给出一个信号; 后面的问题差不多,就不一一列出来了! 特在此求助大神! PS:经过各路大神的解答,初步判定是if(Hour>1)这个条件的问题,按照如下方式改,问题暂时解决,至于问题是否真是如此以及程序中其他的问题,还得多几天验证才能知道!感谢各路大神! 延续: 按照如上更改了之后,SetHour设置在18以下,输出等待时间是对的,设置SetHour=19或以上还是有问题,具体现象如下: 设置 19时 等待10秒输出设置 20 时 等待30秒输出设置 21时 等待50秒输出设置 22时 等待50秒输出设置 23时 等待50秒输出 而且等待的时长好像不是完全固定的,有时候10秒,有时候20秒……求解! 虽然最佳答案选择了“999”这个热心小伙伴的,也确实一开始是有这个问题,所以他的回答是正确的,至于后来我发现了另外一个问题,又不想重新发帖,于是在本帖的后面追加了问题点,其实问题的根本还是如“MOP”所说,是计算过程中数据溢出的问题:详见15楼 但是无奈啊,最佳答案只能选一个呀,所以只好委屈“MOP”同学了,按照你所说的,我试了,确实也能解决问题,不过我之前也是用的强制类型转换,如下: SetTime = (unsigned long)SetDay*24*60*60 + (unsigned long)SetHour*60*60 这样也确实解决了问题,所以最根本的问题,还是计算过程中数据溢出的问题,在此,也非常感谢MOP同学热心解答!

Labview写的程序,现在会偶尔有崩溃问题,请高手远程协助调试一下,万分感谢!

Labview写的程序,现在会偶尔有崩溃问题,请高手远程协助调试一下,万分感谢!调试OK后追加人民币奖励或IC币奖励!Q:121377715

【急求助】关于MAX232/MAX3232跟人机界面通信的问题!

如上图所示单片机连的MAX3232电路,外部跟7寸人机界面通信的时候,几个月都没问题,但是跟9.7寸人机界面通信的时候,没过几天就通信不了了,换了MAX232,电容换成1UF都试过,问题依然没有解决!急求帮助,求大神指点,究竟是什么原因??!!万分感谢!! 若问题得到解决,将追加1000IC币以表感谢!

485通信回路中电流一直增加,求解!

这是一个485通信的原理图,用的芯片是MAX3485,5V供电,新的电路板上电后的电流一直稳定在80MA: 但是当我把RD电平拉低几次之后,电路中的电流就一直在慢慢增加,十几秒钟就超过了100MA,给模块断电后重新上电,问题依然如此,求解!什么原因导致了电流不断增加?没有任何外围的输入,就是单独的这个模块上电测试!   进一步测试,发现,去掉MAX3485芯片后,电流还是会增加!

有关过MOC3061零检测调功率电路的问题!

资料PDF上的电路图如下: 问题点: 1、R7的阻值怎么算?怎么选择? 2、R6/R7/R8/C2的功率要求多大?为什么要选这种功率的? 请大家一起来帮忙讨论一下吧!认真回答有奖哦!    

想找一款12路(或以上)的AD转换芯片,采集0-5V的模拟电压!

如题!想找一款12路以上的AD芯片,请注意,不是指12位的AD芯片,是12路模拟量输入的芯片,采集0-5V电压,最好能有应用文档,包括应用电路及参考源代码的最好不过了!

豆浆机上的触摸按键用什么东西可以代替人手去按?!

现在要做豆浆机的按键测试,是那种触摸按键,一般是用人手去按才有效的,但是现在做设备要实现自动化模拟人工操作,请问下有什么东西可以替代人手去按才能使得按键有效?

蜂鸣器响声测试相关问题,懂得进!

现在需要做一个验证,就是豆浆机按键测试的模块,就是按一下豆浆机上面的按钮要检测蜂鸣器有没有响,有没有人做过类似的产品?!要求:抗干扰能力强,比如旁边人说话的声音可能会干扰到蜂鸣器的测试,还有按键是用气缸去模拟人工按的,也会有噪音,有没有人有更好的建议?求献策!谢谢……