dsPIC30F4013 không chạy
1 Attachment(s)
em đã làm 1 mạch test đơn giản.
và em dùng đoạn code này PHP Code:
nạp vào rồi nhưng mà mạch chỉ chạy khi sờ tay vào chân reset thôi. Nếu bỏ tay ra thì k có biểu hiện gì nữa Em không hiểu tại sai nữa. Giúp e nhé các bác |
Bạn muốn dùng FRC hay HS? Bạn đã tắt clock switching trong code.
Theo mạch phần cứng của bạn, tôi cho là bạn đang muốn dùng thạch anh ngoài. Nếu đúng như vậy thì bạn không nên mô tả FRC trong _FOSC(). Kiểm tra lại xem điện trở R2 của bạn có bị hở mạch hay không. Thân, |
Em đã sửa lại code rồi, không dùng FRC nữa. Đo lại mạch rồi, trở R2 vẫn ổn. Mạch vẫn chạy như cũ. Mà cũng lã lắm, như kiểu có cảm ứng, đưa tay lại gần chân reset (chưa chạm vào) đèn đã sáng rồi. Đưa tay ra xa là tắt. Không hiểu như thế nào nữa
|
Bạn kiểm tra lại tất cả các chân VSS/AVSS phải nối với nhau thật tốt, điện áp trên các chân VDD phải được đảm bảo. Thêm các tụ 100 nF (ceramic) giữa các cặp chân nguồn, đặt càng gần chip càng tốt.
Nếu bạn dùng bread board thì kiểm tra lại bread board (bread board sẽ nhanh chóng xuống cấp ở điều kiện khí hậu của VN). Thân, |
Cám ơn anh. Em sửa đươc rồi. Do mạch reset. Cho thêm tụ 10uF song song với nút reset. Đơn giản quá mà k nghĩ ra
|
Trích:
Thân, |
hic. Đúng rồi. Khi cho tụ vào thì không reset được, không detect được dspic luôn. Thế như trường hợp ở trên thì làm cách nào ạ
|
Cho e hỏi luôn.
Khi đưa mức cao ra chân RB1 thì dùng: _LATB1=1 --> chạy chính xác Nhưng khi sang chân RB2: _LATB2=1 --> không thấy chạy j cả Tại sao vậy ạ? |
Bạn thử loại bỏ cả tụ và nút nhấn reset trong mạch xem sao (chỉ để điện trở giữa chân MCLR và VDD). Nếu mạch chạy ổn thì có lẽ nút nhấn reset của bạn có vấn đề (đã có người gặp trường hợp này rồi).
Thân, |
Trích:
Thân, |
Em đã tìm được nguyên nhân rồi. Đó là do để trở R2 lớn quá. Em đã để 10k. Xem lại trong datasheet thì chỉ có 5k thôi. Thay trở 5k vào chạy ngon lành. Cám ơn anh nhé
|
Trích:
Datasheet nào nêu giá trị 5k vậy bạn? Thân, |
Trong tài liệu Explorer 16 Uses Guide 51589a của Microchip. Trang 42
|
Trích:
Bạn không dùng điện trở 1k giữa điểm nối tụ/nút nhấn và điện trở 4.7k, như sơ đồ của Explorer 16 đã dùng. Sơ đồ của Explorer 16 dùng tụ 0.1 uF, nên điện trở mạch reset phải giảm xuống đến 4.7k nhằm có thể nâng áp MCLR lên đủ nhanh khi cấp nguồn cho board. Do đó, tôi tin rằng chỉ đặt điện trở 10k từ VDD = 5 V đến chân MCLR là đủ cho mạch reset (mạch thử nghiệm dsPIC33F của tôi dùng 27k giữa VDD = 3.3 V và chân MCLR). Nếu có thêm tụ điện hay nút nhấn, theo khuyến cáo của Microchip là có thêm một điện trở từ điểm nối giữa tụ điện/nút nhấn reset và điện trở treo, đến chân MCLR, nhằm tránh hiện tượng latchup khi có xung áp âm xuất hiện ở chân MCLR (xảy ra do nút nhấn bị dội, áp trên tụ dao động trong quá trình quá độ). Thân, |
Múi giờ GMT. Hiện tại là 07:51 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