hỏi về counter
chào các Bác, Em là thành viên mới , rất mong được chào đón. mong các bác chỉ cho Em về cuonter (Em đang làm đề tài mạch đếm sản phẩm ma chưa hiểu gì về cuonter) mong các bác chỉ dùm em .cám ơn các bác nhiều!
|
em cũng muốn hỏi về counter, và cho hỏi đếm xung encoder bằng counter có được không nhỉ, bác nào làm về phần này cho em xin code & đề tài với
|
bác nào rành về timer cho em hỏi tí
em thấy các bài timer khi chương trình đã nhảy vào làm việc trong timer thì nó thực hiện lập đi lập lại trong timer mà không thoát ra ngoài. thế nếu em muốn thoát ra khỏi timer để thực hiện các lệnh khác ở ngoài vòng lập while thì làm thế nào hả các bác. ý em muốn dùng timer như ngắt ngoài vậy các bác ạ. sau khi thực hiện ngắt xong thì thoát ra để thực hiện lệnh kế tiếp. |
Chế độ ghi dịch cho cổng nối tiếp USART
Giúp em với ... em cần tiết kiệm chân của con Pic 887 , nên em muốn dùng cổng nối tiếp để truyền dữ liệu cho con 74LS164 qua 2 chân C6 va C7 của cổng nối tiếp quét 4 con led 7 đoạn , em viết mãi mà không được , mong các anh giúp đỡ .
đây là đoạn code em viết để quét 4 led 7 đoạn qua port D cua con pic ...Mong các anh sửa lại để có thể truyền dữ liệu qua 2 chân C6 va C7 giúp em .. CODE : Code:
/ |
dùng ngắt trên các chân từ rc4 -> rc7 khi chạy thì báo lỗi invalid pri_processor diẻctive.
em thấy trong các ngắt có loại ngắt này nhưng khi khai báo sao nó không hiểu nhỉ. Code:
#include<16f877a.h> |
Trích:
Thân, |
Bác nào làm về counter rồi cho em ví dụ với. Sao khi khai báo cho timer0 ở chế độ counter rồi cho xung vào chân RA4 thì không thấy gì xảy ra nhỉ:(
|
Trích:
Thân, |
Code:
#include <16F877A.h> - em khai báo biến đếm a toàn cục , như trên code - ý định của em : mỗi lần nhấn phím thì mảng key[] sẽ tự nạp số vào & nạp theo thứ tự , vì vậy , sau mỗi lần nhấn phím , em cho key[a++] - nhưng ko hiểu sao , cứ mỗi lần nhấn đúng mã số "3952610", thì ct cứ nhảy tới label HERE .. em nghi ngờ ngay chỗ so sánh mảng key[] và num_ss[] ; - chắc chắn key[] có giá trị ko đúng như các số mình đã nhấn ! các anh thấy em phân tích vậy có đúng ko ? - thứ nữa : sau mỗi lần chạy hết ct ngắt thì ko bit ct có thoát khỏi ngắt hay ko ? nhưng em nhấn phím trở lại thì LCD ko chịu hiện số nữa , chỉ khi nhấn từ 3 lần trở lên thì số mới hiện trở lại . LCD lúc ấy đang bận ? nhưng nó có làm gì đâu . Đến nhãn THOAT , chỉ việc hiện " Ready!" lên thui mà . Có lẽ tới chỗ này ct bị treo !? |
uhm ! rùi .. cuối cùng mình cũng tìm ra lỗi .
- Đúng là ngay chỗ so sánh key[] & num_ss[] ấy ! phải là : Code:
Còn cái chỗ : sau khi hết ct ngắt ,ct vẫn ko chịu thoát ra ngoài main() & đứng đợi while(1) ; cụ thể là khi bấm nút .. LCD vẫn ko hiển thị.. sau 3 lần nhấn só mới bắt đầu hiển thị --> mình vẫn chưa tìm đc nguyên nhân .! sẽ cố gắng chữa lỗi tiếp |
các bác chỉ em cách tính step size với.
|
các pác chỉ cho mình với! mình đang làm với con lm335 nhưng sao nhiệt độ của nó không có ổn định tới chênh lệch nhau tới 4 độ. các bác có cách gì chỉ cho mình với! mình đang dùng con 16F877a
|
lm35 để đo nhiệt độ cho vui thôi.phụ thuộc vào nhiều vấn đề, ko chỉ là do con lm35, AD của PIC, thuât toán của bạn.Bọn TQ nó thường dùng thuật toán tra bảng. nếu cần chính xác, ổn định thì bạn nên lhệ bác Cường Quay , mình ko nhớ là con gì, giá khoảng 40$ thì phải. bảo đảm ok luôn!
|
các bác cho em hỏi: làm thế nào để biết con slave đã nhận xong chuỗi ký tự? e dùng rs232 để truyền nhận giữa 2 con pic.
em cũng thử dùng hàm itoa để chuyển số int sang chuỗi và dùng hàm printf để truyền. bên nhận em dùng hàm atol để chuyển chuỗi về dạng int16 rồi hiể thị. nhưng kết quả hiển thị lại không chính xác. cụ thể là sau chuỗi số là các ký tự lạ. bác nào đã làm vấn đề này rồi xin chỉ giáo giúp em. nếu có code thì tốt quá |
cộng ký tự thành chuỗi
các bác cho em hỏi trong CCS mình muốn cộng các ký tự riêng lẻ thành một chuỗi ký tự thì dùng lệnh gì? bài toán của em cụ thể như sau:dùng ma trận phím 4x3 để nhập các ký tự từ 0-9 sau đó cộng các ký tự này lại thành một chuỗi.Sau đó hiển thị chuỗi này lên LCD nhưng em làm hoài mà nó cũng không chạy, khi dịch chương trình thì cũng không thấy báo lỗi gì cả.Em đã thử cho hiện từng ký tự thì chương trình chạy rất ok! nhưng khi cộng các ký tự lai bằng lệnh "key=key+k;" thi ko chạy được.
em dùng con 16F877A ,thạch anh 20MHz Code:
#include "D:\PIC PROGRAM\dk.h" |
Múi giờ GMT. Hiện tại là 12:34 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