Szüksége van egy program elektronikus mérlegek - mikro-chip fórum

Helló, drágám!
Szüksége van egy programra az ASbler elektronikus mérlegeken a PIC16C72 ///
Tud valaki segíteni?

az eredeti feladat ez:

A mikrokontrolleren alapuló elektronikus mérlegek tervezése.






A tömegre vonatkozó információ a digitális nyomásérzékelőből származik. A készülék súlya: 0 - 9,99 kg.
Adja meg a kilogrammonkénti árat a billentyűzetről. Ár / kg: 0,01 - 9,99 rubel.
Szükséges megszervezni a végeredmény (ár) megkötését az indikátorra.

az algoritmus a következő:

Ami az ár input / kg, azt feltételezzük, hogy az összeg RUB rögzítik és a nyilvántartás kimenetet a LED-ek 1.2, és a szám a cent be kell jegyezni a másik nyilvántartásba, és megjelenik a mutatók 3,4.
Kattintson a gombra. azt jelenti, hogy a rekordszám a rubelek véget ért.

A nyomásérzékelő bemenete: kilogramm egy regiszterben, gramm - egy másikban.
Ebben az esetben a mutató megjeleníti az árat / kg-ot és a súlyt.
Az információ rögzítése a későbbi kimenettel az indikátoron a P gomb megnyomása után történik.
Amikor minden információt megkapunk, megnyomjuk a P gombot, és megpróbáljuk szorozni a súly * ár / kg értéket. Az eredményt két regiszter tárolja. Ezután megjelenik a mutató végső ára (nem adjuk ki a súlyt).
Az egyik fő feladat az, hogy megszervezzük a súly * ár / kg szorzását.






Ez a következőképpen ábrázolható:
Írjuk le az RG0 regiszterben szereplő ár / kg rubel mennyiségét,
és a kopeckák száma az RG1-ben van.
A súly kilogrammja - az RG2-ben,
a grammok száma az RG3-ban van.
A szorzást az alábbiak szerint végezzük:
RG2 * RG0 az RG4-ben elmentett eredményhez
RG2 * RG1 az eredményre mentve az RG5, RG6-ban
RG0 * RG3, az eredmény pedig az RG7, RG8 mentett
RG1 * RG3, az eredményes puffereléssel RG9, RG10
Ezt követően hozzáadjuk az RG4 + RG5 + RG7-et az RG11 ()
Összesíti RG6 + RG8 + RG9 - Get száma cent, általában ez a szám nagyobb lehet, mint 256, így lesz 2 nyilvántartások - RG12, RG13. Emellett a kopeckek száma meghaladhatja a 100-at, akkor meg kell növelni a rubelek számát. Írhat:
Ha RG12> 200,
akkor RG12 = RG12 - 200
RG12 = RG12 + RG13
RG11 = RG11 + 2
Ha RG12> 100,
akkor RG12 = RG12-100
RG11 = RG11 + 1
Az eljárás végrehajtása után kell RG11 kimeneti értéket LED-ek 1, 2, és RG12 - a mutatók a 3. és 4..

Nos, a probléma az, hogy nem tudom, hol kezdjem, mi az assembler és hogyan alkalmazzák ebben az esetben? ehhez a vezérlőhöz szükséges parancsok szükségesek, hol lehet ezeket venni?

Ezt a gyártó honlapján is megteheti. teljes dokumentáció és példák vannak, de angolul. Annak ellenére, hogy ebben az angol nyelven elég sok száz szóval tudni kell.
És ez a PIC16C72 darab régi és eldobható. Miután beprogramozták - ez minden. Ha lehetséges, akkor jobb, hogy meggyőzze a fejét valami modernebb és elterjedt, mint például PIC16F628A (majdnem ugyanaz, mint a PIC16F84-es típusú, amely már megrágott már), vagy PIC16F882 (valamint 883, 884). Vagy PIC16F876A, szintén nagyon gyakori. Vagy már azonnal elindul a PIC24F - általában a varázsa, bankok, oldalak. Csak több funkciója van, többet kell tanulmányozni, de könnyebb programozni. választ

Ui Csak az assemblerről beszélek, ha C, akkor alapvetően egy dob.




Kapcsolódó cikkek