Trích:
Nguyên văn bởi dung h
cảm ơn bạn nhưng mình đọc nó nhưng chưa hiểu lắm,mình dùng ccs thôi
bạn có thể làm rõ cho mình vấn đề này dc o! thanks
|
Đoạn code trên viết bằng ccs đó. Đơn giản đoạn code trên có ý như thế này:
1) Nếu địa chỉ được nhận thì nhảy vào lệnh if và gán biến i2c_state =0.
2) Nếu bit RW = 1 thì nhảy vào lệnh if và set bit thứ 7 của i2c_state, tức là i2c_state = 0x80.
3) Sau đó hàm trả về giá trị của i2c_state. Sau đó tăng giá trị của i2c_state thêm 1.
Nếu lần truyền tiếp theo chỉ truyền dữ liệu thì sẽ không nhảy vào lệnh if nào hết. Chỉ thực hiện bước thứ 3 thôi.