clr f0 mov b, #0ah div ab mov r7, b mov b, #0ah div ab jnz konwersja31 setb f0 mov a, #0f0h konwersja31: add a, #30h acall wyslijdane xch a, b jnz konwersja32 jnb f0, konwersja32 mov a, #0f0h konwersja32: add a, #30h acall wyslijdane mov a, r7 add a, #30h acall wyslijdane
Przy okazji zwracam uwagę na sierotę - fo w psw - przydaje się jako znacznik ''na chwilę''...
No fakt, trzeba posiedzieć z pięć minut ;)
Zgadzam się jak najbardziej, ale są pewne ale...
1) program mi się nie wyrobi - rzeczy dzieją się równolegle podczas czekania na konwersję A/D. (przyspieszanie zegara nic nie zmieni bo znowu nie wyrobi mi się z peryferiami - czasy dostępu). Stąd 70 cykli do zagospodarowania na np. ową procedurkę.
2) dobrze mi z tym asemblerkiem - mam sporo procedur jeszcze po czasach, kiedy 51 miały okienka a o basicu na nie nikt nie słyszał... Naumiałem się wtedy i tak mi zostało. VisualBasica (dla dosa) też mam w miarę opanowanego (jak się skompiluje to nawet w miarę hula) ale jakoś _na_razie_ nie chce mi się zabrać za basica czy c na 51... może jak będzie wiecej roboty.
Poza tym problem zwykle tkwi w zmyślnym algorytmie - niezależnie od poziomu języka.
Tylko wiesz - przez czas poswiecony poznawaniu opcji control stringu printfa mozna sobie napisac pare procedurek w assemblerku i uzyskac zalozony wynik :-)
Przy dobrze prowadzonym projekcie i doswiadczeniu .. 1 rok ?
Pamietaj ze ocenia sie iz programista pisze rzedu 100 linijek dziennie :-)
Pomysł dobry ale wtedy... trzeba zrobić ''wyslijdane1'' :) (z procedury ''wyślijdane'' korzystają także inne dobra, którym akurat akumulator pasuje jaki jest).
A tak w ogóle myślałem o bcd, ale o ile sprawdza sie przy wartościach do
99 to przy trzech cyfrach procedura jest podobnie złożona. Chyba, że... konkursik trwa ;)
... ale wtedy będzie 2x acall i 1x ret a wtedy siwy dym i jasne capy ;) A znowuż acall - add a,#30h - ret jest trochę optymalizacją... na zaliczenie przedmiotu ;) No, chyba, że Atmel planuje wypuścić coś na 4 nogach z 64 bajtami romu...
Przepraszam, czy możesz mi wskazać jakiś sterownik przemysłowy zbudowny na '51? Oczywiscie pomijam tu sterowniki budowane na indywidualne zamówienia. Ale coś takiego budowanego seryjnie i używanego. No i oczywiście program pisany w Keil'u 51.
Sorki, ale czy jesteś najlepszy na świecie? Zdażało mi się pisać i po 600kB tekstu programu z minimalnymi komentarzami w ciągu miesiąca i to bynajmniej nie po 12 lub więcej godzin dzienie. a i tak po czasie znajdowałem o niebo lepsze rozwiązania, zajmujące
1/4 pamięci i wykonujące się pięć razy szybciej. Proszę, więcej pokory.
Oczywiście wiekszość napisałem wcześniej i wystarczyło tylko kopiowianie. Ale ... każde takie kopiowanie wymagało przemyślenia - wejść, wyjść, wspólnych zmiennych itd. A jestem w 100% pewny, że przynajmniej jest 1.000.000 lepszych niż ja.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.