lixupeng 发表于 2010-12-29 13:48:45

DS18b20串口发送问题

mov a,29H;将29H中的十六进制数转换成10进制
             mov b,#10 ;10进制/10=10进制
             div ab
             mov b_bit,a ;十位在a
             mov a_bit,b ;个位在b
             mov sbuf,a//发送缓冲区
            mov sbuf,b//发送缓冲区

            JNB TI,$
            CLR TI;

为什么发送到串口温度显示十位显示不出来 个位没事 ?

XMLK 发表于 2010-12-30 00:05:24

mov sbuf,a//发送缓冲区
mov sbuf,b//发送缓冲区


执行mov sbuf ,a后,SBUF的内容还没发完,又执行MOV SBUF,B了,SUBF的内容被改了

加个判断,等A发完了再发B

相关可以借用发送标志位TI


         mov sbuf,a//发送缓冲区

            JNB TI,$
            CLR TI;

            mov sbuf,b//发送缓冲区

            JNB TI,$
            CLR TI;

lixupeng 发表于 2010-12-30 08:22:06

谢了回去试试

416446891 发表于 2012-12-31 09:59:17

。。。。mark。。。。
页: [1]
查看完整版本: DS18b20串口发送问题