![]() |
Hỏi về cách đọc data
1 Attachment(s)
Chào các bạn
Mình đang làm cái đồ án máy thu fm có RDS và bí ở phần đọc dữ liệu từ con decoder RDS LC72723. Con này có 2 đường ra là RDCL và RDDA ( như hình dưới). Mình xin hỏi làm thế nào để đọc được dữ liệu này? Mình dùng con PIC6f887. |
Dùng chân ngắt ngoài hoặc ngắt RB nối với chân RDCL và 1 chân input bất kì nối với RDDA để đọc dữ liệu
|
Trích:
|
nó đưa ra dữ liệu 8 bit theo từng xung RDCL hay sao bạn?
Ví dụ nó đưa ra dữ liệu 8 bit thì sẽ ứng với 8 xung clock, khi đó ngắt sẽ xảy ra 8 lần. Bạn dùng 1 biến đếm trong ngắt, sau mỗi lần ngắt tăng lên 1 đơn vị, sau 8 lần thì set lại bằng 0 để nhận giá trị data tiếp theo. Có thể code như sau int i=0,temp=0,data; #int_ext void nhan_data() { if(RDDA==1) bit_set(temp,i); else bit_clear(temp,i) i++; if(i==8) { data=temp; i=0; } } Ở đây là nhận từ bit 0 - bit 7. Nhưng nếu con này truyền dữ liệu từ bit 7 - bit 0 thì ngược lại nhé. PS: đây chỉ là code tham khảo vì mình ko rõ con này hoạt động ntn, bạn code lại cho đúng nhé |
Trích:
Con này nó đưa ra 128 bit vấn để là nó đưa ra liên tục nên mình không thể biết bit đầu và bit cuối nó ở đâu để bắt đầu đọc. |
Múi giờ GMT. Hiện tại là 09:55 PM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam