Giúp bài tập UART

light

Thành Viên PIF
anh chị giúp e điều khiển đèn bằng cách gửi 1 chuỗi kí tự xuống PIC với, e làm hoài mà chưa được, cảm ơn anh chị
 

Manhdd

Cố Vấn CLB
Staff member
Câu hỏi chung chung quá. Bạn phải mô tả đầy đủ thì mọi người mới giúp được. Mọi người chỉ có thể chỉ bạn sai chỗ nào chứ không thể làm cho bạn từ đầu tới cuối đâu :d
 

light

Thành Viên PIF
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
 

Manhdd

Cố Vấn CLB
Staff member
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().
 
Top