Aveți nevoie de un program pentru scale electronice - micro-chip forum

Bună ziua, dragă!
Aveți nevoie de un program pe asbler pentru cântare electronice pe PIC16C72 ///
Poate cineva să ajute?

sarcina inițială este următoarea:

Proiectare de cântare electronice bazate pe microcontroler.






Informațiile privind greutatea provin din senzorul de presiune în formă digitală. Dispozitivul este proiectat pentru greutate: 0 - 9.99 kg.
Introduceți prețul pe kilogram de la tastatură. Preț / kg: 0,01 - 9,99 ruble.
Este necesar să se organizeze încheierea rezultatului final (preț) pe indicator.

algoritmul este după cum urmează:

În ceea ce privește prețul de intrare / kg, se presupune că valoarea de RUB se înregistrează într-un registru și de ieșire la LED-uri 1.2, iar numărul de cenți care urmează să fie înregistrate într-un alt registru și afișate pe indicatorii de 3,4.
Dând clic pe buton. înseamnă că înregistrarea numărului de ruble sa încheiat.

Intrarea de la senzorul de presiune se face: kilograme într-un registru, grame - în altul.
În acest caz, indicatorul afișează prețul / kg și greutatea.
Înregistrarea informațiilor cu ieșirea lor ulterioară pe indicator se efectuează după apăsarea butonului P.
Când se primesc toate informațiile, apăsând butonul P inițiază înmulțirea greutății * prețului / kg. Rezultatul este stocat în două registre. După aceasta, prețul final al indicatorului este afișat (nu scoatem greutatea).
Una dintre principalele sarcini este de a organiza operațiunea de înmulțire a prețului de greutate * / kg.






Acesta poate fi reprezentat după cum urmează:
Să notăm cantitatea de ruble de preț / kg în registrul RG0,
iar numărul de copeici este în RG1.
Numărul de kilograme de greutate - în RG2,
numărul de grame este în RG3.
Realizăm multiplicarea după cum urmează:
RG2 * RG0 cu rezultatul salvat în RG4
RG2 * RG1 cu rezultatul salvat în RG5, RG6
RG0 * RG3 cu rezultatul salvat în RG7, RG8
RG1 * RG3 cu tamponare rezultate în RG9, RG10
Apoi, adăugăm RG4 + RG5 + RG7 cu rezultatul salvat în RG11 () acest număr de ruble
De asemenea, rezuma RG6 + RG8 + RG9 - Ia numărul de cenți, în general, acest număr poate fi mai mare de 256, deci va dura 2 registre - RG12, RG13. În plus, numărul de copeici poate depăși 100, atunci va trebui să măriți numărul de ruble. Puteți scrie:
Dacă RG12> 200,
apoi RG12 = RG12-200
RG12 = RG12 + RG13
RG11 = RG11 + 2
Dacă RG12> 100,
apoi RG12 = RG12-100
RG11 = RG11 + 1
După efectuarea acestei proceduri, este necesar să se afișeze valoarea indicatoarelor RG11 pe indicatoarele 1, 2 și RG12 - pe indicatoarele 3, 4.

bine, problema este că nu știu de unde să încep, ce este asamblorul și cum să îl aplic în acest caz? sunt necesare comenzi pentru acest controler, unde pot fi luate?

Puteți să-l luați pe site-ul producătorului. există documentație completă și exemple, dar în limba engleză. Deși în această limbă engleză este suficientă o sută de cuvinte.
Și această piesă PIC16C72 este veche și de unică folosință. Odată programate - asta e tot. Dacă este posibil, este mai bine să-i convingă capul pentru ceva mai modern și pe scară largă, cum ar fi PIC16F628A (aproape la fel ca PIC16F84, care a mestecate deja mai), sau PIC16F882 (precum 883, 884). Sau PIC16F876A, de asemenea, destul de comune. Sau începe deja imediat cu PIC24F - în general farmecul, nici băncile, paginile. Numai că are mai multe funcții, este necesar să studieze mai mult, dar este mai ușor de programat. alege

P.S. Doar vorbesc despre asamblare, dacă e C, atunci e practic un tambur.







Articole similare

Trimiteți-le prietenilor: