Სარჩევი:

ICSP– ის გაგება PIC მიკროკონტროლერებისთვის: 4 ნაბიჯი (სურათებით)
ICSP– ის გაგება PIC მიკროკონტროლერებისთვის: 4 ნაბიჯი (სურათებით)

ვიდეო: ICSP– ის გაგება PIC მიკროკონტროლერებისთვის: 4 ნაბიჯი (სურათებით)

ვიდეო: ICSP– ის გაგება PIC მიკროკონტროლერებისთვის: 4 ნაბიჯი (სურათებით)
ვიდეო: როგორ ჩაწეროთ Outseal PLC Nano Bootloader Arduino Nano-ზე 2024, ივლისი
Anonim
ICSP– ის გაგება PIC მიკროკონტროლერებისთვის
ICSP– ის გაგება PIC მიკროკონტროლერებისთვის

მიკროკონტროლერების დაპროგრამება არ არის რთული. პროგრამისტის მშენებლობა ქმნის პირველ პირველ ელექტრონიკურ პროექტს. ამ ინსტრუქციის მიზანია მიკროჩიპის PIC– ების გამოყენებით მარტივი „წრიული სერიული პროგრამირების“მეთოდის ახსნა.

ნაბიჯი 1: რატომ ICSP?

რატომ ICSP?
რატომ ICSP?

დიდი DIP (ხვრელით) ჩიპის დაპროგრამება ადვილია. ჩაწერეთ იგი სოკეტირებულ პროგრამისტში, დაწვით და დაუბრუნდით პროგრამის წრეს. გამოცადეთ და გაიმეორეთ.

საქმეები უფრო რთულდება პატარა (ზედაპირზე დასაყენებლად) ჩიპებით. არ არსებობს სტანდარტული სოკეტები QFN, SSOP, QFP, ან თუნდაც დიდი SOIC.300 პაკეტებისთვის. არსებობს მართლაც ძვირადღირებული კლიპები (100 აშშ დოლარი), რომლებსაც შეუძლიათ ჩიპების მიმაგრება და დაპროგრამება. თითოეული კლიპის ტიპისა და თქვენს მიერ გამოყენებული ქინძისთავებისთვის საჭიროა სხვადასხვა დამჭერი. არსებობს ალტერნატივა. მას ICSP ჰქვია. ICSP ნიშნავს "ჩართულ სერიულ პროგრამისტს (ing?)". ეს არის PIC– ის პროგრამირების გზა, სანამ ის ჯერ კიდევ არის მიმაგრებული პროგრამის წრეზე. მართალია, აღარ არის ჩიპების ცვლა. რატომ ICSP? 1. არ არსებობს პროგრამირების სოკეტი მცირე პაკეტის ჩიპებისთვის. კლიპები ძვირია. 2. მტკივნეულია ჩიპების გადატანა პროგრამისტიდან პროგრამის გარეთ განვითარების პროცესში. შეუძლებელია ზედაპირზე დამონტაჟებული ნაწილებისათვის.

ნაბიჯი 2: რა არის ICSP?

რა არის ICSP?
რა არის ICSP?
რა არის ICSP?
რა არის ICSP?
რა არის ICSP?
რა არის ICSP?
რა არის ICSP?
რა არის ICSP?

ხუთი კავშირი საჭიროა პროგრამის PIC– ის პროგრამირებისათვის პროგრამის წრეზე მიერთებისას. მე დავამატებ 5 პინის სათაურს ჩემს მიკროსქემის დაფებზე, რათა ეს კავშირი სწრაფად და მარტივად მოხდეს. PIC პროგრამირების საფუძვლები. PIC- ის დასაპროგრამებლად საჭიროა ხუთი კავშირი. სიმძლავრე, მიწა, პროგრამირების ძაბვა, საათი და მონაცემები.+ (Vdd)/-(Vss) ეს არის დენის და მიწის კავშირები (Vdd, Vss). საკმაოდ სტანდარტული. თუ თქვენ იყენებთ პროგრამისტს "რეალური" ძაბვის დონით (არა JDM2!), თქვენი პროგრამა შეიძლება გაშვებული იყოს საკუთარი კვების ბლოკიდან პროგრამირებისას და აღმოფხვრის ამ კავშირებს. Vpp ეს არის პროგრამირების ძაბვა. PIC შედის პროგრამირების რეჟიმში, როდესაც ~ 13 ვოლტი მოთავსებულია MCLR/Vpp პინზე (ჩვეულებრივ, PIN 1 თანამედროვე PIC– ებზე, უფრო ქვემოთ). Clock/Data ან PGC/PGD საათი და მონაცემთა ხაზები გამოიყენება PIC– ის დასაწერად და წასაკითხად firmware. ეს, როგორც წესი, იგივე ქინძისთავებია, როგორც PORTB6 & PORTB7. სავარჯიშო: დაადგინეთ ICSP კავშირის წერტილები PIC– ებზე ქვემოთ მოცემულ სურათებში. თუ PIC ჯდება, ჩაიცვი. მე ბევრ კითხვას ვიღებ ინსტრუქციებზე ჩემი JDM2 დიზაინის შესახებ. ყველაზე ხშირად არის "იქნება ეს PIC X პროგრამირებული? '"' - აი როგორ შეგიძლიათ თქვათ: 1) შეხედეთ მონაცემთა ფურცელს. იპოვეთ '' დიაგრამა '', რომელიც ქვემოთ მოცემულ სურათს ჰგავს. პროგრამისტი. შეგიძლიათ შეუსაბამოთ საჭირო ქინძისთავებს პროგრამისტის სოკეტით?

ნაბიჯი 3: როგორ ICSP?

როგორ ICSP?
როგორ ICSP?
როგორ ICSP?
როგორ ICSP?
როგორ ICSP?
როგორ ICSP?
როგორ ICSP?
როგორ ICSP?

თქვენი დიზაინიდან გამომდინარე, ახლა შეგიძლიათ გააკეთოთ ყველა საჭირო კავშირი და დაპროგრამოთ თქვენი PIC. არსებობს რამდენიმე დაჭერა, რომლის შესახებაც უნდა იცოდეთ. ICSP– ის დიზაინი მნიშვნელოვანია. მიკროჩიპი გთავაზობთ სასიამოვნო PDF პროგრამის შენიშვნას ICSP– ის დიზაინის შესახებ. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744 აქ არის რამოდენიმე რჩევა და მაგალითი ICSP დიზაინისა ჩემი წინა ინსტრუქციებიდან. რჩევა #1, საფრთხის დონე: მნიშვნელოვანია სხვა არაფერი დააკავშიროთ საათს და DATA ქინძისთავები (ჩვეულებრივ RB6 & RB7, PGC & PGD). უბრალოდ არ გააკეთო. არის სიტუაციები, როდესაც ძალიან ჭკვიანი საინჟინრო ტიპები თავს იკავებენ, მაგრამ არ აკეთებენ ამას. ქინძისთავებზე დამაგრებული კომპონენტები გადააჭარბებენ საათს და მონაცემთა სიგნალებს, რის შედეგადაც ხდება არაპროგნოზირებადი პროგრამირება. გარდა ამისა, თუ თქვენ ოდესმე გინდათ გამოიყენოთ ჩართული სერიული დებაგერი, თქვენ არ შეგიძლიათ. უბრალოდ არ გააკეთო ეს. რჩევა #2 საფრთხის დონე: ასაფეთქებელი ყოველთვის გამოიყენეთ დიოდი პროგრამირების ძაბვასა და სისტემის ძაბვას შორის. თუ იყენებთ MCLR (სამაგისტრო ნათელს) PIC– ზე, თქვენ უნდა მიაწოდოთ გარკვეული ძაბვა MCLR პინზე 10 კიშის რეზისტორის საშუალებით. ეს არის ასევე ის პინი, რომელსაც გამოიყენებთ vol 13 ვოლტს პროგრამირების რეჟიმში შესასვლელად. მე დავამატე 1n4148 (ექვივალენტი) დიოდი რეზისტორსა და MCLR/Vpp პინს შორის (როგორც ეს მოცემულია ქვემოთ მოცემულ სქემატურ სურათში). ეს ინარჩუნებს პროგრამირების ძაბვას Vpp pin- ზე, რაც ხელს უშლის სხვა კომპონენტების განადგურებას თქვენს დაფაზე. რჩევა #3 საფრთხის დონე: (ხელახლა დაღლილი) დაბალი ძაბვის პროგრამირება გიშლით ხელს, კაცო. მე არასოდეს ვყოფილვარ წარმატებული LVP– ით. მე არასოდეს მინახავს, რომ იგი მუშაობდეს (თანმიმდევრულად) ჩემი თვალით. უბრალოდ დაკბინეთ ტყვია და დახარჯეთ $ 2.50 JDM2 პროგრამისტის ასაშენებლად.

ნაბიჯი 4: ICSP პროგრამისტები

ICSP პროგრამისტები
ICSP პროგრამისტები
ICSP პროგრამისტები
ICSP პროგრამისტები

ICSP არ საჭიროებს სხვადასხვა პროგრამირების პროტოკოლს. სოკეტზე დაფუძნებული პროგრამისტი უკვე აწარმოებს საჭირო სიგნალს, მაგრამ აგზავნის მას სოკეტში და არა მავთულის საშუალებით. სოკეტის პროგრამისტების უმეტესობა შეიძლება გამოყენებულ იქნას როგორც ICSP, სოკეტიდან მავთულის დაყენების მიზნით. მაგალითად, ორიგინალური JDM2 პროგრამისტი (აქ: https://www.jdm.homepage.dk/newpic.htm) შეიძლება გამოყენებულ იქნას გააკეთეთ ICSP პროგრამირება 5 საჭირო სიგნალის სათაურში მიტანით. ეს ჩანს პროგრამისტში აქ: https://www.belza.cz/digital/jdm.htm. იმისათვის, რომ ყველაფერი მოსახერხებელი იყოს, მე გადავაკეთე ეს დიზაინი Eagle Cad– ში და დავამატე მას ინსტრუქციულად. ნახეთ ტრანზისტორი ორიენტაცია, ერთ -ერთი ნაკვალევი შეიძლება იყოს არასწორი (მე ეს გავაკეთე ერთ წელზე მეტი ხნის წინ, აღარ მახსოვს). ანალოგიურად, ჩემი განახლებული JDM2 პროგრამისტი (აქ: https://www.instructables.com/id/EN28KZDDVEVE286GRI/) შეიძლება გამოყენებულ იქნას ICSP– ისთვის DIP სოკეტებში მავთულის ჩამაგრებით და სამიზნე PIC– თან შეერთებით. ***** JDM2– ები იყენებენ მხიარულ ძაბვებს… შეაერთეთ იგი წრედთან, გარე ენერგიის (ან თუნდაც მიწის) გარეშე, რომელიც დაკავშირებულია პროგრამის წრეს. ელექტროენერგიის გამოყენებამდე ამოიღეთ ICSP კავშირი. ამის შეუსრულებლობა არ არის დამანგრეველი, მაგრამ გამოიწვევს პროგრამირების წარუმატებლობას ******* სხვა ვარიანტი არის (ნახევრად) სწორი ICD პროგრამისტი. ICD საშუალებას გაძლევთ გააკონტროლოთ firmware– ის შესრულება თქვენს PIC– ში კოდში შესვენების წერტილების დაყენებით ან მეხსიერების და პორტის მნიშვნელობების წაკითხვით. ICD– ს ასევე შეუძლია კოდის შესრულების ანიმაცია, პროგრამის ჩართვის ჩართვა და PIC– ის პროგრამირება. ეს ყველაფერს აკეთებს ჩვენ მიერ განხილული იგივე 5 პინიანი ICSP კავშირის საშუალებით. ICSP– ის რამდენიმე კლონი, რომელთა დამზადებაც თქვენ შეგიძლიათ, შეგიძლიათ ნახოთ აქ: https://www.icd2clone.com/wiki/Main_Page. მე ავაშენე PiCS (rev B) რამდენიმე თვის წინ და მიყვარს.

გირჩევთ: