Nguyên văn bởi lu_lu
Xem bài viết
Như thầy đã giải thích thì muốn đưa trạng thái thì chỉ cần tìm %ADx và thay đổi nó
Như vậy có 2 việc cần làm:
+ Lấy trạng thái thiết bị
+ Thay đổi %AD
Theo như trên thì có thể nói rằng bạn chưa lấy được trạng thái thiết bị để đưa lên mà thôi.
Vậy vấn đề còn lại là lấy trạng thái chân điều khiển thiết bị đúng chưa?
Muốn kiểm tra được thì bạn phải hiểu cái trình dịch và ngôn ngữ bạn sử dụng? AVR Studio thì khác CodeVisionAVR, dùng C thì khác dùng ASM.
Còn muốn kiểm tra phương pháp bạn lấy trạng thái thì bạn printf nó ra UART và check.
Mình đoán là nó lấy sai thôi. Kiểm tra thì nó hơi ngược lại với điều khiển một chút hay nói cách khác bạn điều khiển được thì bạn phải lấy được nếu bạn biết viết code hoặc ít nhất bạn đọc hiểu code đó nếu không phải bạn viết.
Tinh thần của project này chỉ là giúp bạn truyền được thông tin qua mạng, các vấn đề liên quan sâu đến phần cứng theo mình bạn phải tự giải quyết như RTC DS1307 chẳng hạn trừ khi bạn làm phần cứng giống hệt thầy thì rất có thể thầy giúp được bạn
Theo mình bạn nên học hết 10 bài của trang này: http://www.hocavr.com
Cách đây 5 tháng mình cũng bắt đầu từ đây
Nhớ hồi đó mình toàn quen dùng 8051. Đến lúc học con này, cái nan giải cơ bản nhất mà mình mất nhiều thời gian nhất là làm sao điều khiển được 1 chân của nó và đọc được trạng thái chân đó. Mình nghĩ rất có thể bạn cũng đang chỉ mới tới gian đoạn này ( hơn 3 ngày mới tìm ra được). Hồi đó là làm điều khiển qua SMS, module sim 548 dùng giao tiếp UART nên mình phải viết từ UART đi lên, mô phỏng trên proteus, viết giao tiếp truyền được thông tin điều khiển được rồi, nhưng loay hoay mãi k dk được 1 chân vì toàn ví dụ port. Nên cứ thực hiện lệnh mới thì lại mất lệnh cũ. Rồi làm tiếp LCD, ADC, RTC theo gợi ý điều khiển theo nhiệt và hẹn giờ của thầy. Nói như vậy để thấy, không có cách nào đi từ ngọn xuống gốc đâu bạn ah. Và cái giao tiếp ethernet này là một cái ngọn rất cao.

Leave a comment: