LCD bozuk karekter sorunu
  • ESP8266 -12 ile internete baglanip veri alip bunu LCD 20x4 ekraninda gösteriyorum.
    Ama LCD de ü,ö gibi karekterleri bozuk basiyor.
    Internetten gelen veri string olarak her defasinda degisik geldigi icin standart bir kelime yazamiyorum.
    Aslind standart bir kelime olsa replace() ile degistiririm ama her defasinda degisik string geliyor.
    Ve ben bu string icindeki hafleri geleneri.replace('Ü','U'); seklinde yaptigimda Ü yü degistirip U ekliyor ama U' nun sol önünde yine anlamsiz baska bir karekter'de ekliyor.

    Bu sorunu nasil cözebilirim?
  • Lcd sadece ascii kodlamadan anlar. Webde ise karakterler unicode ile kodlanır (muhtemelen utf-8) ve türkçe karakterler 2 byte'tır. Ü'yü u'ya çevirince 2 byte'ın biri 'u' olur ama diğeri olduğu gibi kalır ve ascii karşılığı neyse onu basar.

    Arduinoda bu dönüşümü yapacak bir fonksiyon var mıdır bilmiyorum. Yoksa kendin yazarsın. Aşağıdaki bağlantıda utf-8 karakterlerin hex karşılıklarını gösteren bir araç bulabilirsin.

    http://www.ltg.ed.ac.uk/~richard/utf-8.cgi?input=Ü&mode=char
  • arduıno kendı sıtesınde konuyu açıklamış ornekler de var
    https://playground.arduino.cc/Code/UTF-8
  • internet veri sayfası size aitse bunu orda yapıp arduinoya doğru aktarırsanız daha iyi olur sayfa size aitken arduinoyu bu konuda yormak doğru değil.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook

Tagged

Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.