e muốn dùng hàm uart_gets để truy xuất dữ liệu từ máy tính truyền về nhưng không biết đối số của nó là gì và sau khi thực hiện thì kết quả sẽ được lưu ở đâu. e làm từ hôm qua đến giờ mà chưa được nữa, hix
Bạn xem kỹ hàm trong uart.c :
Code:
void uart_gets(char *s){
char g;
*s = uart_getc();
while(*s!='\0'){
s++;
*s = uart_getc();
}
}
Hàm nhận đối số là 1 pointer (hay thường dùng là tên 1 mảng đã khai báo). Lưu liên tục kết quả vào ô nhớ được trỏ kể từ pointer đó: [pointer], [pointer+1], [pointer+2], .... cho đến khi gặp kí tự kết thúc chuỗi '\0'
Do vậy, muốn kết thúc hàm này thì trên máy tính phải có gửi '/0'
Hàm này được xây dựng từ uart_getc() (chờ nhận 1 kí tự và trả kết quả qua tên hàm), nên tốt hơn là bạn nên dùng uart_getc().