Thông báo

Collapse
No announcement yet.

K0 nhẬn ĐƯỢc dỮ liỆu khi khung truyỀn vƯỢt quÁ 8 byte.(avr) ?

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • K0 nhẬn ĐƯỢc dỮ liỆu khi khung truyỀn vƯỢt quÁ 8 byte.(avr) ?

    em mới học AVR có dùng USART để truyền thông giữa 2 con vi điều khiển vấn đề em gặp là thế này mong các anh em hiểu biết chỉ bảo giúp e với em cám ơn :e truyền dữ liệu đơn giản như sau :

    void truyen(void)
    { putchar('#');
    putchar('1');
    putchar('a');
    putchar('b');
    putchar('c');
    putchar('d');
    putchar('e');
    putchar('%');
    }
    trên đó là hàm gửi dữ liệu đi của e...ký tự "#" và "%" là để xác định đầu và cuối khung truyền. còn các dữ liệu thì ở trong..vấn đề là khung truyền này của e dưới 8 ký tự thì truyền nhận ok . nhưng vượt quá 8 ký tự ( ví dụ khung truyền trên e thêm vài cái putchar nữa) thì nhận rất chấp chờn hoặc không nhận được dữ liệu (ko nhiễu vì test thử rất gần)
    đây là hàm nhận

    void nhan1(void)
    {
    if(rx_counter)
    {
    ch=getchar();
    str[i]=ch;
    i++;
    if(i==8)
    {
    i=0;
    if((str[0]=='#')&&(str[7]=='%')&&(str[1]=='1'))
    {
    PORTA.0=1;
    delay_ms(100);
    PORTA.0=0;
    delay_ms(100);
    }
    }}}

    em cũng không biết bị sao nữa mong các bác giúp đỡ em với...giờ em cần truyền 1 khung tới 16 ký tự lận

Về tác giả

Collapse

kimhandu91yb Tìm hiểu thêm về kimhandu91yb

Bài viết mới nhất

Collapse

Đang tải...
X