在调试单片机P89LPC932时候,自己编了一个小程序,看看串口是否能通,结果程序是正确的,下到单片机里也运行也是正确的.但是我想通过软仿真,却不行,感觉很奇怪. 下面是程序的一个小小部分 JNB RI,$ MOV A,SBUF CLR RI 这只是单机收到的数据存到累加器A里.在软仿真调试的时候,当然是不可能有数据收了,我在串口(serial)设置项把SBUF的值改成0xFF,当然可以随便改成什么,并把RI置位,单步调试,走过MOV A,SBUF时候,我发现不论怎么样都没法把SBUF的值赋到累加器A中,A一直保持0X00. 于是我又怕这样改不行,又在程序中直接MOV SBUF,#0FFH.发现这样也不能把缓冲区的数据读到A中.真是百思不得其解.难道是KEIL UVISION2这个C编译器的问题.不知道各位是否遇到过这种情况,本人也是刚上手,期待各位帮忙解答.
|