我用SPCOMM和手持机通讯,一个字符一个字符的发,就是spcomm.writecommdata('a',1)这样的发,为什么速度要比往手持机上灌程序的时候慢的多??如何提高传输大量字符的速度啊?

解决方案 »

  1.   

    参数,用数组!你现在writecommdata一次1字符,一个字符串也得N次,用数组,一次一数组。..哪个快哪个慢自己想额..
      

  2.   

    手持机这边接受的时候是CS[i]=UART_GET_CHAR();就是以单个字符为单位接受,不能以串的形式接收,就是CS=UART_GET_CHAR()这样编译器会报错.PC上发的时候可以按串发,但是那边接收不到.发的时候是spcomm.writecommdata("12345678",8)这样的发,
      

  3.   

    PC串发,
    手持机每次接收收多次UART_GET_CHAR();读空缓冲区
      

  4.   

    UART_GET_CHAR(); 这个函数是上位机提供的.每次接收一个字符.是在循环里面每次接收一个字符,所谓缓冲区不是他提供的,是自己定义的一个字符数组.
    PC机上不管是串还是数组,能够发出,但是手持机接收的时候是每接收一个字符就存入字符数组中,我意思是不是PC发数组过来,这边用数组去接收UART_GET_CHAR();这样接收的是乱码. 
      

  5.   

    把字符转换为ASC码,存入数组中,发出去。