Làm cách nào để lập trình PIC12?


8

Tôi có một PIC12F675 mà tôi cần lập trình. Tôi đang sử dụng phần mềm Pickit 2 và Pickit 2. Giả sử tôi có thể lập trình nó bằng mạch này , nhưng phần mềm Pickit 2 hoàn toàn không phát hiện ra con chip.

mạch

Có chuyện gì thế?

EDIT: Tôi đã thêm một hình ảnh của mạch của tôi được đưa ra. Và đây là nơi bạn có thể tìm thấy bảng dữ liệu cho PIC12F675. Bỏ qua trang 4 cho sơ đồ chân.

Bánh mì

EDIT2: Tôi chỉ thực sự nhìn vào các con chip (ngu ngốc, nhưng tôi là người quản lý giả định sẽ gửi cho tôi những gì tôi đã đặt hàng) và tôi nhận thấy chúng thực sự là của PIC12C671. Bao nhiêu sự khác biệt này sẽ làm cho?

EDIT cuối cùng: Wow! Cảm ơn mọi người đã giúp tôi với điều này! Tôi đã không mong đợi loại phản ứng này. Nó kết thúc là một vấn đề ngu ngốc nhỏ như tôi nghĩ nó sẽ xảy ra. Đó là lỗi của tôi vì đã không kiểm tra lại mọi thứ khi tôi nhận được gói hàng từ Mouser.


2
Bạn có chắc rằng mạch của bạn đúng, được cấp nguồn, có các tụ tách rời, được kết nối với máy tính của bạn không?

Tôi có 5 volt đến nó, và nó được kết nối với máy tính của tôi. Có vẻ như tôi đã bỏ qua các tụ tách rời. Điều đó có ảnh hưởng lớn đến mạch điện không?
Willem Ellis

1
Có thể là không, nhưng bạn không muốn lãng phí một tuần cho một tụ điện tách rời mà bạn có thể thêm trong một phút.

2
12F675 được hỗ trợ bởi PICkit 2 và MPLAB.
Leon Heller

3
Vdd trên đầu nối ICSP nên được kết nối với + 5V.
Leon Heller

Câu trả lời:


9

Một vấn đề có thể xảy ra là một số PIC cần một chu kỳ năng lượng để vào chế độ lập trình. 12F675 đặc biệt cần điều này khi từ cấu hình trong ứng dụng của bạn định cấu hình chân MCLR là GPIO.

Khi pcikit2 cấp nguồn cho chip mục tiêu của bạn, nó sẽ cung cấp chu kỳ năng lượng. Với + 5V độc lập mà bạn cung cấp, nó không thể làm điều này.


Sau khi đề cập đến những vấn đề có thể xảy ra nhất mà bạn có thể gặp phải là những vấn đề không thể xảy ra ... Đừng cười tôi, tôi đang rút kinh nghiệm cho chính mình!

  • bạn có thể có hai kết nối của Pickit2 không? (Vâng, tôi đã từng làm điều này và rất ngạc nhiên rằng ứng dụng Pickit2 được chọn không phải là PIC được kết nối với. Tôi cũng đã từng lãng phí một giờ khi tôi có hai dây PIC đích song song. Điều đó mang lại kết quả rất kỳ lạ khi cả hai đều đưa ID chip của mình ra cho lập trình viên.)
  • Pickit2 bạn đang sử dụng có kết nối với PC bạn đang sử dụng không? (Tôi tham gia các lớp PIC và học sinh có thể khá sáng tạo trong việc máy tính xách tay của ai kết nối với ai là PIC)
  • cả hai pickit2 và chip bên phải vòng? Phần mềm pickit2 được nhìn từ phía trên (nơi có nút và đèn LED).
  • chip thực sự là 12F675? (Tôi đã từng cố gắng cả ngày để bộ chuyển đổi A / D của 12F629 hoạt động - cho người không phải PIC-guru: đó là người anh em rẻ hơn của 12F675, nó rẻ hơn vì nó không có bộ chuyển đổi A / D ).
  • Là các dây chính xác như bạn hiển thị chúng, không trộn lẫn? Và họ không phải do bất kỳ tai nạn bị phá vỡ? Nếu bạn đang sử dụng một bảng mạch không hàn: nó vẫn tạo ra tất cả các địa chỉ liên lạc?
  • Phần sụn trong pickit2 có phải là phiên bản phù hợp với phía PC của bạn không? có thể tải lại firmware để chắc chắn 100%.

Để đáp ứng với EDIT2: ROFL của bạn, hãy kiểm tra viên đạn của tôi 4. PIC12C671 là một con chip hoàn toàn khác và C có nghĩa là nó là chip EPROM (lập trình một lần), không được pickit2 hỗ trợ.


Tôi đã thử cung cấp năng lượng từ chính PICKit và nó vẫn không hoạt động.
Willem Ellis

:( Cảm ơn bạn đã giúp đỡ! Như tôi đã nói, tôi cho rằng Mouser đã gửi cho tôi đúng chip. Lỗi của tôi vì đã không kiểm tra lại mọi thứ trước khi bắt đầu. Cảm ơn một lần nữa!
Willem Ellis

1
Như tôi nói với các học sinh của mình: lần đầu tiên hãy phạm sai lầm. Nhưng không bao giờ nữa.
Wouter van Ooijen

4

Lập trình viên PICkit2 sẽ hoạt động như phần dành cho bạn mà không cần bất kỳ tiêu đề nào. (Gỡ lỗi là một vấn đề khác hoàn toàn.)

Cũng như lời khuyên về tụ điện tách rời đã được cung cấp, hãy xem xét điều này: hầu hết (tất cả) các thiết bị PIC cần một pullup 10k từ _MCLR đến VDD. Hãy thử thêm nó và xem những gì sẽ xảy ra.

Hỗ trợ PICkit2

Đây là một ví dụ nối dây từ poster thiết lập PICkit3. (Các sơ đồ chân của PICkit2 và PICkit3 giống hệt nhau, vì vậy thông tin có liên quan 100%.)

Sơ đồ ISCP

Bạn có thể thấy rằng các chân từ 1 đến 5 của lập trình viên cần được kết nối với mạch của bạn. Sơ đồ của bạn thiếu kết nối VDD Target từ chân 2. Hãy thử kết nối này và cho phép PICkit2 cấp nguồn cho mạch.


3
Việc thiếu điện trở trên MCLR sẽ không dừng việc lập trình PICkit cho thiết bị. Nó có thể ngăn chương trình chạy, mặc dù.
Leon Heller

Tôi đã thêm phần nâng lên và đảm bảo rằng tôi đã chọn đúng thiết bị trong MPLAB. Vẫn không có xúc xắc.
Willem Ellis

@LeonHeller Tôi dựa trên tuyên bố của mình về _MCLR trên poster PICkit3, cho thấy _MCLR kéo lên theo cách "kết nối" chính xác.
Adam Lawrence

@Madmanguruman Tôi ước tôi đã không kết nối chính xác như thế này, nhưng tôi đã xác minh với biểu dữ liệu và tất cả các kết nối đều chính xác.
Willem Ellis

2

PICKit2 không hỗ trợ thiết bị của bạn ( nguồn ). Điều này có nghĩa là có một cái gì đó sai với thiết lập của bạn. Có một số điều bạn có thể kiểm tra:

  • Có vấn đề gì trong giao tiếp với PICKit không? Không, nếu đây là trường hợp, bạn sẽ gặp lỗi mà công cụ ICSP không thể tìm thấy.
  • Có một vấn đề với các mạch với chip? Có thể . Bạn nên kiểm tra mạch của bạn, thêm các tụ tách rời nếu chưa được thực hiện. Tất cả các chân VDD và VSS nên được kết nối, cũng là chân của đầu nối ICSP. Ngoài ra, kiểm tra nguồn cung cấp năng lượng của bạn: nó có trơn tru không?
  • Có một vấn đề phần mềm? Nhiều khả năng , tôi muốn nói. Bạn đã chọn đúng chip trong MPLAB chưa? Bạn có thể lập trình các chip khác với cùng thiết lập không?

Tôi đã kiểm tra tất cả những điều này. Được thêm vào trong các nắp tách và điện trở kéo lên MCLR. Tôi đang sử dụng phần mềm PICKit2 v2.61 để lập trình chip, thay vì MPLAB. Mặc dù tôi đã thử những gì bạn nói trong MPLAB. Tôi gặp lỗi này khi tôi cố gắng kết nối với chip. Vui lòng xác minh rằng PIC12F675 được cài đặt chính xác trong ứng dụng
Willem Ellis

@WillemEllis Rất tốt. Tôi nghĩ đến một điều khác: bạn đã kết nối tất cả các chân Vdd và Vss của chip chưa? Đồng thời kiểm tra xem PGC có được kết nối với PGC không và với PGD - điều này gây ra cho tôi một số rắc rối gần đây.

@WillemEllis có tiến triển gì về điều này không?

xin lỗi vì mất quá nhiều thời gian để quay lại với bạn Tiếc là không có. Tôi đã nói chuyện với giáo sư của mình và anh ta cũng không thể hiểu được. Tôi đã đảm bảo mọi thứ được kết nối như trong mạch với PGD và PGC sẽ đi đến đúng chân. Vẫn không có may mắn.
Willem Ellis

Nếu bạn chắc chắn rằng các kết nối của bạn tốt, hãy thử một thiết bị khác hoặc PICkit2 khác.
Adam Lawrence
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.