Kysymys:
Mitä vaihtoehtoja on MCU: iden ohjelmointiin tuotannossa?
Thomas O
2010-11-28 03:31:06 UTC
view on stackexchange narkive permalink

Super OSD -projektissani minun on ohjelmoitava suuret erät MCU: ita, todennäköisesti noin 10-15 levyä tunnissa. Voisin vain käyttää luotettavaa PICkit 2: tai niiden ohjelmointiin (kullakin levyllä on kaksi - ehkä kolme -), mutta olisi erittäin työlästä ladata jokainen tiedosto (kooltaan enintään 128 kt ja 256 kt), osua ohjelma ja toistaa jokaiselle MCU, eikä luultavasti salli minun saavuttaa tavoitenopeutta. Lisäksi MCU: t ovat pinta-asennettavia, joten minun on oltava aluksella otsikot tämän sallimiseksi. Ihannetapauksessa haluaisin poistaa nämä otsikot, mutta se ei välttämättä ole vaihtoehto.

Joten mitä vaihtoehtoja on MCU: iden massaohjelmoinnille - onko nopeampi tapa tehdä se? Minulla on tavallaan alle 100 dollarin budjetti, joten sellaiset asiat kuin Microchipin MPLAB PM3, jonka hinta on 895 dollaria, eivät olekaan mukavia, mutta eivät olisi vaihtoehto.

Olen tekemisissä erilaisten PIC-mikrokontrollerien kanssa. tyypit. Siellä on PIC16F887, PIC24FJ64GA002 ja dsPIC33FJ128GP802. Olen kuitenkin kiinnostunut myös vaihtoehdoista AT32- ja STM32-prosessoreille, koska voin myös käyttää niitä.

Huomaa, että en aio harkita sirujen tilaamista ennalta ohjelmoiduilta valmistajilta, koska ohjelmisto saattaa muuttua sirujen saapuessa ja siitä aiheutuvien lisäkustannusten vuoksi.

15 lautaa tunnissa on neljä minuuttia lautaa kohti. Kuinka kauan PICkit 2: n ohjelmointi kestää?
@markrages: Se on noin 20 sekuntia pienellä koodipohjalla (~ 6 kt). Kuvittelen enemmän koodilla, se voi kestää jopa puolitoista minuuttia jokaiselle levylle, mikä ei anna minulle paljon hengitystilaa.
@Markrages, Voin vakuuttaa, kirjoitin erittäin suuren projektin ICD2 LE: n kanssa ja sen ohjelmointi kesti 2 tai 3 minuuttia. Melko ärsyttävää. Pickit 3: n kanssa se kuitenkin huutaa nopeasti.
Seitsemän vastused:
tcrosley
2010-11-28 06:36:49 UTC
view on stackexchange narkive permalink

Mitä teemme tuotannossa, on ensin ladata ohjelma PIC: ään, joka testaa kortin (käyttämällä pientä testilevyä, joka itsenäisesti varmistaa, että 3.3v-kisko on spesifissä muutaman vertailijan avulla, ja sitten käytämme ADC PIC: llä tarkistaakseen kaiken muun. Meillä oli tarpeeksi nastoja jäljellä tämän sallimiseksi (se vaati joitain ylimääräisiä vastuksia toimimaan jännitteenjakajina yli 3 V: n jännitteille).

Testien läpäisemisen jälkeen todellinen tuotantokoodi välähdetään mikroon. Joitakin lisätestejä suoritetaan, ja piirilevy on valmis koottavaksi koteloksi.

Kaikki tapahtuu PC: n ohjelman kautta, joka vaatii vain käyttäjän muodostamaan yhteyden napsauta yhtä painiketta ja odota tulosta PASS / FAIL. Kaikki testitulokset (mukaan lukien ADC-lukemat) kirjataan lokiin. Koko prosessia (mukaan lukien PIC: n ohjelmointi ICD 3: n kautta) ohjataan PC-ohjelmalla, joka suorittaa komentosarjoja varsinaisen ohjelmoinnin suorittamiseksi.Kommunikaatio PIC: lle testien ohjaamiseksi tapahtuu yhden kautta UART: ista, joiden nastat tuodaan testilevylle (joten ohjelmointiin tarvittavien nastojen lisäksi meillä on vähintään TX / RX).

Perustimme useita tällaisia ​​asemia osoitteessa sopimusvalmistajamme.

BTW ICD 3 on paljon nopeampi kuin ICD 2 (USB 2.0 vs. 1.1).

Pickit 3 toimii myös USB 2.0: lla, minkä vuoksi rakastan sitä. ICD3 on minulle vähän kallis. Yritykseni käyttää MSP430-levyjä, joten se on aivan erilainen.
Voitteko selventää, miten ohjelmoit IC: n?Oman valmistamasi ICSP tai mitä?
@ErikFriesen Käytän joko ICD 3: ta tai REAL Iceä mikrosirun PIC-kuville.Molemmat ovat todennäköisesti liian kalliita useimmille harrastajille (200 dollaria ja 500 dollaria).Muilla siruperheillä (Freescale, Silicon Labs jne.) On oma ohjelmoijajoukonsa.Lisään piirilevyihin otsikot yhteyden muodostamiseksi ohjelmoijiin.Kun laite on ulkona kentällä, se voidaan päivittää langattomasti, jos sillä on langaton yhteys (matkapuhelin tai WiFi).
Minulla on molemmat ja pm3.Pm3 ei tee kaikkia osia yhdistämättä tietokoneeseen> X2.15: ssä, se jakautuu pic32-linjalle.
Kortuk
2010-11-28 06:23:40 UTC
view on stackexchange narkive permalink

Hanki pickit 3 ja laita se ohjelmoijaan mennä-tilaan.

Kerrot sille, että haluat ohjelmoijan mennä -tilaan ja lataat romin, sitten et enää tarvitse usb-porttia enemmän kuin virtaa (kyllä, tarvitset sitä vielä virran saamiseksi).

Kun kytket laitteen laitteisiin, painat ohjelmapainiketta ja se lataa ohjelman ja ilmoittaa sinulle, kun se on valmis. Kustannukset enintään 50 $

Leon Heller
2010-11-28 04:01:23 UTC
view on stackexchange narkive permalink

PICkit 2 ei ole tuotanto-ohjelmoija. Sinun on todella hankittava ICD 3, joka luokitellaan tuotanto-ohjelmoijaksi, jos haluat olla varma, että laitteet ohjelmoidaan oikein. Vaihtoehtoisesti voit ostaa sirusi valmiiksi ohjelmoituna Microchipiltä tai jakelijalta, jos koodi on viimeistelty.

Tämä olisi oikea tapa edetä tässä.
Anna sitaatti "tuotanto-ohjelmoija" -kommentille. On selvää, että Pickit ei ole fyysisesti tarpeeksi kestävä teolliseen sovellukseen. Mutta signaalit, jotka se antaa kohteelle, ovat samat kuin muut ohjelmoijat. ("Tuotanto-ohjelmoijan" alkuperäinen tarkoitus on, että tietyt ohjelmoijat pystyivät vaihtelemaan syöttöjännitettä ja lukemaan ohjelman sisällön oikean ohjelmoinnin varmistamiseksi. Microchip ei ole maininnut tätä lomakkeissaan noin vuosikymmenen ajan, mutta kansanperinne elää edelleen Ironista kyllä, PICkit 2 * voi * muuttaa syöttöjännitettä ...)
Tämä kerättiin äskettäin Microchip-foorumilla. ICD 3 -dokumentaatiossa todetaan, että se on tuotanto-ohjelmoija, toisin kuin PICkit 2/3, jonka joku Microchipin mukaan ei ollut tuotanto-ohjelmoija.
markrages
2010-11-28 05:45:48 UTC
view on stackexchange narkive permalink

Mikrokontrolleriohjelmointi on yleensä pieni osa suurempaa toiminnallista testausprosessia. Millainen muukin testisuunnitelmasi on?

Kaikkien muiden kuin triviaalien tuotteiden osalta sinun on suunniteltava toinen piirilevy testaamaan levyä. Yleensä testilevyllä on tietokoneliitäntä ja se yhdistää kohteen testilaitteisiin, joissa on RS-232- tai GPIB-ominaisuudet. Sitten tietokone voi suorittaa komentosarjan, ohjelmoida levyn ja suorittaa sitten kaikki tarvittavat testit.

On hyödyllistä, että tämä testilauta toimii myös laiteohjelmistokehitystä varten. Tee tarpeeksi testejä regressioiden saamiseksi laiteohjelmistosta.

Testilevyn alku on todennäköisesti PICkit 2 -piiri. Laiteohjelmisto on avoimen lähdekoodin, se huolehtii ohjelmointiosasta, siinä on kätevä käynnistyslatausohjelma, ja voit laajentaa sitä tekemään mitä tahansa muuta, mitä toiminnallinen testi tarvitsee.

Haluan kirjoittaa tuotantoni testiskriptejä Pythonissa, mutta mielestäni alan standardi on Labview.

Käytän Python-eriä, mutta en koskaan yleisiin komentosarjoihin - yleensä jätän sen bash / shelliin tai Perliin. Kiitos vinkeistä.
Yann Vernier
2010-11-28 04:42:41 UTC
view on stackexchange narkive permalink

Yksi tapa, jota voit käyttää, on tehdä puristin tai jokin kaltainen, joka muistuttaa testipatjaa ( esimerkkivideo) pogo-tapilla, jotta sinun ei juotostapit ohjelmointiliittimille. Piirilevyn reunaliitin, kuten vanhan tyyppinen levyke, voi olla halvempi (mutta enemmän levytilaa vaativa) vaihtoehto.

Sinun on keksittävä tapa ohjelmoida kukin mikro-ohjain, todennäköisesti käyttämällä joko useita ohjelmoijia tai erätiedosto, kuten David ehdotti. Voit yhdistää sen suurella kytkimellä (ehkä yksi kiertokytkimistä vanhasta tulostimen jakokeskuksesta tai muutamasta releestä), jotta voit liittää ohjelmoijan uudelleen PIC: stä toiseen siirtämättä liitintä.

Tekniikat soveltuvat myös muihin järjestelmän sisäisiin ohjelmoitaviin ohjaimiin, vaikka JTAG-yhteensopivat saattavat tehdä siitä vielä helpompaa, koska JTAG TAP on suunniteltu ketjutettavaksi, joten ohjelmoijaa ei pitäisi siirtää siirtymästä sirulta siru. AVR-levyjen kaltaisille siruille, jotka voivat käyttää ohjelmointiin tavallisia logiikkatasoja, vaihtaminen voi olla helpompaa.

Et tarvitse edes pogo-nastoja: Laitoin otsikkotapin PICkit 2: een ja voin ohjelmoida asettamalla sen levyn reikiin ja painamalla hieman sivuttain, pitäen sitten paineen yllä, kunnes ohjelmointi on valmis.
-1
DavidEGrayson
2010-11-28 03:52:18 UTC
view on stackexchange narkive permalink

Windows- ja Linux-käyttöjärjestelmissä on komentoriviapuohjelma nimeltä PK2CMD, jonka avulla voit ohjelmoida PIC-tiedostosi PicKit-ohjelmalla (joten sinun ei tarvitse käyttää MPLAB: ää tai muuta GUI: ta). Voit käyttää suosikki komentosarjakielesi tehdä pieni ohjelma, joka suorittaa oikean PK2CMD-komennon, kun painat näppäintä. Tämä tekisi tuotannon tietokonepuolen vähemmän työlääksi (vain yksi näppäinpainallus MCU: ta kohden), mutta tarvitset silti tavan yhdistää PicKit jokaiseen 3 MCU: si.

mikeselectricstuff
2010-11-28 04:51:27 UTC
view on stackexchange narkive permalink

Microchipin ohjelmointipalvelu on erittäin halpaa, kun viimeksi käytin sitä. Kun olet katanut asennuskustannukset, se on erittäin halpaa - penniä per siru 12F: lle - ei tarkasteltu korkeampia. He voivat myös tehdä merkintöjä / etikettejä jne. Vaikka aiot vaihtaa FW: tä, esiladattu käynnistyslatausohjelma voi tehdä siitä helpompaa.

Tuotanto-ohjelmoijalle pidän Asix Prestosta - tonnia vaihtoehtoja esimerkiksi sarjaliikenteelle ja erittäin nopeasti



Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 2.0-lisenssistä, jolla sitä jaetaan.
Loading...