logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom i cyrylica (rosyjskie/białoruskie) litery

alnus 04 Mar 2009 16:07 7638 30
REKLAMA
  • #1 6235306
    alnus
    Poziom 28  
    W jaki sposób ustawić Bascoma, żeby dało się bezpośrednio pisać teksty do wyświetlania LCD (sterownik z rosyjskimi znakami) cyrylicą?
    Mam w działającym programie tabelę z nazwami dni tygodnia do kalendarza i musiałbym zmienić sporo programu, żeby dało się wyświetlac za pomocą CHR(*). Zmiana klawiatury w windows na cyrylicę powoduje wypisywanie różnych "ogonków", tylko niestety nie są to bukwy. Jest jakiś sposób, czy muszę napisać program od nowa? A może mam wpisywać te "ogonki" i zobaczyć co będzie wyświetlał po kompilacji? Miał ktoś już z tym jakieś doświadczenia? Jutro muszę z tym powalczyć i każda rada się liczy :D
  • REKLAMA
  • #2 6235360
    M. S.
    Poziom 34  
    Jeśli mowa o LCD alfanumerycznym na sterowniku HD... t te LCD'eki mają wbudowany generator znaków, który nijak nie zależy od Bascoma (podobnie w niektórych graficznych np Toshiba). Musisz wyposażyć się w LCD z cyrylicą, lub bawić się w ciągłe definiowanie znaków.
  • #3 6235493
    alnus
    Poziom 28  
    Jak napisałem wcześniej LCD jest wyposażony w cyrylicę. Problemem jest jak tą cyrylicę wpisac do programu bezpośrednio z klawiatury.
  • REKLAMA
  • #4 6236206
    janbernat
    Poziom 38  
    Wystawiaj na wyświetlacz zmienne lub stałe.
    np. x1=1000010 to powinno być duże Ż rosyjskie.
    LCD x1
    Znaki cyrylicy są w wyświetlaczu.
    Młodszy półbajt 0000 do 1111 a starszy 1000 i 1001
  • Pomocny post
    #5 6236211
    mirekk36
    Poziom 42  
    alnus napisał:
    Jak napisałem wcześniej LCD jest wyposażony w cyrylicę. Problemem jest jak tą cyrylicę wpisac do programu bezpośrednio z klawiatury.


    a co ma wspólnego cyrylica wpisywana z klawiatury z tą cyrylicą w LCD ???

    otóż nie ma nic wspólnego poza tym, że mowa o znakach cyrylicy. Nawet jeśli już być miał możliwość pisania jak to mówisz bukw na PC to ich kody (kody znaków) będą różne od tych zwartych w EPROMie LCD'ka - aż tak dooobrze to nie ma . Prosta rzecz - sprawdź sobie kody znaków w CGRAM swojego LCD-ka - a następnie porównaj je z kodami tych samych znaków w kompie. Wątpię żeby się zdarzył LCD który będzie miał tak samo zakodowane te znaki jak w PC
  • #6 6238622
    alnus
    Poziom 28  
    Chodziło mi właśnie o to , czy uda się ustawić Bascoma (i/lub klawiaturę w PC) w tem sposób, aby kody znaków cyrylicy z klawiatury zgadzały się z tymi z LCD. Na pomysł wpisywania w programie krzaczków które mają kody odpowiadające kodom liter cyrylicy już wpadłem, ale zastanawiałem się czy nie ma prostszego i bardziej "czytelnego" sposobu.
  • REKLAMA
  • #7 6239211
    Freddy
    Poziom 43  
    Wszystko się da zrobić kolego. Można np. napisać sobie małą procedurkę która będzie tłumaczyć kody z klawiatury na kody displaya.
    Coś w stylu:
    
    wypisz("електрод")
    .
    .
    .
    sub wypisz(aa byval as string)
    dim bb string
    ' tłumaczenie ciągu  aa  na bb
    lcd bb
    end sub
    

    Oczywiście należy napisać własną procedurkę tłumaczenia, deklaracje zmiennych itd.
  • #8 6239261
    Konto nie istnieje
    Poziom 1  
  • #9 6239479
    alnus
    Poziom 28  
    Wydaje mi się, że pisanie konwertera to w moim przypadku strzelanie z armaty do komara. Większość tekstów udaje mi się wyświetlić za opmocą Chr(numer litery z generatora). Problemem jest tylko tablica z nazwami dni tygodnia, które są pobierane jako string i wyświetlane. Robiłem próby z wpisywaniem do programu literek za pomocą lewy alt + numer, ale sukces jest połowiczny. Pojawiają się co prawda "bukwy" na wyświetlaczu ( w programie oczywiście jakieś krzaki), ale nie są to zawsze "bukwy" i niekoniecznie te co trzeba. W LCD są one ukryte od nr160 do około 230. Czy da się jakoś ustawić bascoma i/lub windowsa, żeby wpisując "lewy alt+nr kodu" uzyskać na LCD literę o tym numerze? Nie musi to już wyglądać - byle działało ;)
  • #10 6239514
    Konto nie istnieje
    Poziom 1  
  • #11 6239651
    alnus
    Poziom 28  
    Może z innej beczki: Do czego służy "Keymapping" w zakładce "Environment" "Editor" w ustawieniach Bascoma?
    Do wyboru jest Default, Classic, Brief i Epsilon - może to coś komuś mówi ?
  • #12 6240046
    qrdel
    Poziom 28  
    Do takich egzotycznych kodów ASCII proponowałbym wpisywanie przez ALT+xxx jeśli są to pojedyncze znaki
    i prosty programik na PC do translacji znaków na kody dla LCD (i z powrotem).
    W samym BASCOMIE będą krzaki, ale będzie je można skopiować do programiku i sprawdzić.
  • #13 6240290
    alnus
    Poziom 28  
    Właśnie wpisuję przez ALT +xxx, tylko xxx na wyświetlaczu jest inne niż w Bascomie. Wiem jakie powinno być w wyświetlaczu, ale nie mam pojęcia jakie jest w Bascomie. Kolega atom1477 wypisał mi krzaczki, które mają odpowiadać kodom ASCI powyżej 127, ale nie potrafię ich po prostu wpisać do programu z klawiatury. qrdel- po co ten programik na PC do translacji? Ja tylko potrzebuję informacji jakimi kodami posługuje się Bascom, czy zależy to od ustawień klawiatury w windows i czy można tak wszystko poustawiać, żeby owe ALT+xxx kompilowało się jako numer xxx w generatorze wyświetlacza. To co mi się wyświetli w programie nie ma znaczenia.
  • REKLAMA
  • #14 6241484
    qrdel
    Poziom 28  
    Gdyby było konieczne wpisanie dłuższych tekstów, powiedzmy instrukcji czy helpów, to jak sądzę wygodniej jest wpisać je z ruskiej klawiatury niż cyzelować znak po znaku.
    Podobnie przy poprawianiu nieczytelnych krzaków, można je skopiować do translatora, zobaczyć w ładnej cyrylicy, poprawić, przełożyć i skopiować do listingu.
    Gdyby mój program zawierał powyżej 100 znaków cyrylicy to tak bym zrobił.
  • #15 6242048
    alnus
    Poziom 28  
    Z problemem poradziłem sobie "na piechotę", wypisując w programie po kolei ALT + wartości od 128 do 255 i porównując to potem z wynikiem na LCD. Próbowałem szukać i wpisywać krzaczki od kolegi atoma, ale było to zajęcie tyleż czasochłonne, co nie przynoszące rezultatów. Kolejność i znaczki były i tak inne. Jest już po fakcie(chociaż zostało mi parę nieodkrytych literek), ale dalej nie daje mi to spokoju, czy aby nie mogłem sobie wydrukować jakiejś tabeli z kodami, porównać jej z tabelką z LCD i wpisać pasujące numery? Qrdel, pisząc swój programik, skąd wziąłbyś informację o tym które kody są jak kompilowane?
  • Pomocny post
    #16 6242975
    Konto nie istnieje
    Poziom 1  
  • #17 6243046
    alnus
    Poziom 28  
    Być może w pierwszej fazie byłoby szybciej, ale trzeba by było z nich korzystać wyłącznie na zasadzie "kopiuj/wklej", co już takie szybkie nie jest. O innej kolejności i części innych znaczków już wspominałem. Wpisując mozolnie po kolei znaczki za pomocą ALT+numer stworzyłem sobie tabelkę do konwersji. Łatwą w późniejszym użyciu, bo łatwiej jest mi wpisać numer niż porównywać który to daszek z "a" pasuje mi do litery. W każdym razie dzięki za pomoc. I ponawiam pytanie - skąd odczytać sposób kodowania tabeli znaków nie sprawdzając tego empirycznie?
  • #18 6243080
    Konto nie istnieje
    Poziom 1  
  • #19 6243201
    qrdel
    Poziom 28  
    Wywaliłbym całe ASCII (porcjami po 16 albo po 8 ) na LCD i spisał na kartce (jeden raz).
  • #20 6244335
    alnus
    Poziom 28  
    Wydawało mi się, że już pisałem, że znam kody znaków w LCD z datasheeta i nie mam najmniejszych problemów wyświetlania ich za pomocą instrukcji "LCD Chr (nr z tabeli kodów)." Skąd dowiedzieć się w jaki sposób koduje windows i bascom razem wzięte? Myślałem, że wpisując do programu literki za pomocą ALT + nr kodu z LCD mam załatwioną sprawę. Myliłem się sromotnie. Załatwiłem sprawę metodą qrdela, tyle że porcjami po 20 znaków, bo LCD w aplikacji jest 4x20. Usiłuję się po prostu dowiedzieć jak działa Bascom.
  • #21 6244518
    Konto nie istnieje
    Poziom 1  
  • #22 6244719
    alnus
    Poziom 28  
    No niestety tak właśnie jest. Daje zupełnie inny znak. Gdyby było tak łatwo, to nie pisałbym już tutaj i nie robił problemów.
  • #23 6244954
    Freddy
    Poziom 43  
    A spróbuj z ciekawości dać
    Lcd "електрод" 
    i powiedz nam co wyświetliło.
    Wiesz co nikt z nas nie przypuszczał, że bascom coś kombinuje ze znakami
  • #24 6245307
    Konto nie istnieje
    Poziom 1  
  • #25 6246515
    alnus
    Poziom 28  
    Próbowałem najpierw wklejać cyrylicę napisaną w WordPadzie, bo w samym Bascomie - zresztą w notatniku też - cyrylica się nie wyświetla, mimo przełączenia klawiatury (dla informacji win98). Po kompilacji zdarzały się na LCD jakieś bukwy wymieszane z krzakami, ale napewno nie te które były wpisane wcześniej. Teraz nie mam jak wkleić, bo Bascoma mam w warsztacie na komputerze bez internetu. Cały bajzel jest ze znakami o kodach powyżej 127 ( choć nie sprawdzałem wszystkich poniżej ). Całkiem możliwe, że siedzi tam już jakiś translator Unicode na ASCII i utrudnia życie, tylko fajnie by było znaleźć jakąś możliwość takiego poustawiania programów, żeby zgadzały się chociaż same numery. Próbowałem z różnym ustawieniem Keymapping w Bascomie, ale nic to nie zmieniało.Nawet nie wiem tak naprawdę do czego to służy.
  • #26 6246554
    Konto nie istnieje
    Poziom 1  
  • #27 6247011
    Konto nie istnieje
    Poziom 1  
  • #28 6247307
    alnus
    Poziom 28  
    emarcus, zanim coś napiszesz - przeczytaj wcześniejsze posty.
    Teraz już mam własną tabelę konwersji i z wyjątkiem nieczytelności programu wszystko skończyło się OK. Przy okazji okazało się, że moj LCD ma tablicę znaków "custom", inną od europejskiej wersji sterownika. Bukwy ładniejsze, i wszystkie, ale adresy pokrywają się drugą stroną sterownika japońskiego, a nie są "pomiędzy" (jak pisał janbernat)
  • #29 6248387
    janbernat
    Poziom 38  
    To przepraszam za "wpuszczenie w maliny".
    Na moim było jak napisałem.
  • #30 6251125
    alnus
    Poziom 28  
    Bo w standardowym LCD ze sterownikiem w wersji europejskiej faktycznie tam są.
REKLAMA