与凯尔编程故障

G

Guest

Guest
大家好,

还有什么问题呢一不工作的全部。并请告诉我如何计算时间延迟。

#包括<AT89S8252.h>

无效等待(无效)

;


无效的主要(无效)

无符号整型一;

小= 0;

而(1)

小= 1;
为(1 = 0;“10000,我 )

等待();

小= 0;

)谢谢

 
你的等待()函数并不详细。可能会有一些问题。如果它是空的,我看到,在它。否则
, 它似乎还行!

 
我得到了Keil代码形式的地方和修改这一点。等待功能携带,也有!如果是错误的
, 那么请给我正确的代码?怎么样时间延迟?

 
为什么不把延误的计时器?我建议我在实际项目解决方案。我使用计时器来计算延迟。设置控制器电源节省模式。如果计时器下降到0,触发定时器中断服务的代码,这是一个回报。并返回到主程序的下一条指令。

 
您的代码行。

的问题(解决方案),我认为是:

1秒)你写小= 1;
2秒)你浪费了一些时间(循环)
3S技术)你写小= 0;
4型)重复1-3:你写小= 1:

第3步(小= 0)很短
, 因为马上你写的小= 1。您必须包括3步后循环再。

的问候,svicent

 
你不需要在所有等待函数,inthis情况下
, 我会场更使用此:

为(1 = 0;“10000,我 )



程序计数我从0到10000,所以你取得等待函数,witout等待函数。

你应该考虑使用等待(严重aplications)中断,病程您的程序将停止在这一点上
, 直到我丰富的10000,所以一切将当时采空。

Mr.Cube

 
报告建议下,仍是我的交锋中解决问题。我的硬件工作正常,并且问题似乎是在软件方面。这里是我的十六进制经整理后得到

:01002B0022B2
:10000300E4F590759001E4FFFE12002B0FBF000191
:0C0013000EBE27F5BF10F2E4F59080E768
:0300000002001FDC
:0C001F00787FE4F6D8FD7581070200032D
:00000001FF

Whats的问题?

 

希望您加入后
, 结算为0端口也是一个等待。

六角检查而不是在莱凯勒反汇编窗口
, 看看如何编译的代码
, 看看programe是在模拟器确定。
如何输出呢?
Picstudent

 
Picstudent明白了,您只有在哪里= 0几个小周期,因此它总是1。

如果您有osciloscope你可以看到这一点,我们都是盲人,只需添加小= 0后多等待。Mr.Cube

 

Welcome to EDABoard.com

Sponsor

Back
Top