Date: Mon, 27 Apr 2015 12:48:41 +0200 From: Milan Obuch <freebsd-arch@dino.sk> To: Adrian Chadd <adrian@freebsd.org> Cc: freebsd-arch@freebsd.org Subject: Re: using libgpio to bitbang LCDs! Message-ID: <20150427124841.7b8a59bc@zeta.dino.sk> In-Reply-To: <CAJ-VmonT1FvoNUAAY1JeHM9LopaCiWvPBjw_ubP5Ktm0FYZBvA@mail.gmail.com> References: <CAJ-Vmo=n=Lfh_XqkxwAA43jUi7suoPjWV1uSv4VnKNncw3%2BPfw@mail.gmail.com> <CAJ-VmonT1FvoNUAAY1JeHM9LopaCiWvPBjw_ubP5Ktm0FYZBvA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 11 Apr 2015 23:45:55 -0700 Adrian Chadd <adrian@freebsd.org> wrote: > Hi, > > The library source code and a demo program is available here: > > https://github.com/erikarn/freebsd-liblcd > > It includes the wiring needed to hook the example OLED board up > (http://www.adafruit.com/products/684) to a Carambola 2 evaluation > board. > > Anything you can get 5v and 5 GPIO pins from will work. (Well, as long > as there's also libgpio / gpio API support for your device..) > > > > -adrian > Hi, I downloaded master.zip from github and now I am trying to modify it for my hardware - Raspberry PI and TFT display with ILI9341 chip https://learn.adafruit.com/adafruit-pitft-28-inch-resistive-touchscreen-display-raspberry-pi My original attempt to use SPI failed probably because ILI9341 does not use pure SPI, but there is one extension - DC pin. I did not manage to satisfy chip's timing/bit sequence/whatever, so I would like to try bit banging. I found two small issues with archive downloaded - freebsd-liblcd-master/src/beastie_ili9340c_320x240/Makefile seems to ba a copy of freebsd-liblcd-master/src/beastie_ssd1351_128x128/Makefile, I think there should be a difference, after my fix --- beastie_ili9340c_320x240/Makefile 2015-04-23 21:40:10.693847000 +0200 +++ beastie_ssd1351_128x128/Makefile 2015-04-13 00:58:06.000000000 +0200 @@ -3,7 +3,7 @@ .include <bsd.own.mk> -PROG=beastie_ili9340c_320x240 +PROG=beastie_ssd1351_128x128 SRCS=main.c CFLAGS+=-I../../lib/liblcd LDFLAGS+=-L../../lib/liblcd The second issue is when doing 'make install' binaries produced are being installed into / directory. While both are not fatal for me, they are annoyances at least. I found following in source files: /* Configured for the carambola 2 board */ cfg.gpio_unit = 0; cfg.pin_cs = 19; cfg.pin_rst = 20; cfg.pin_dc = 21; cfg.pin_sck = 22; cfg.pin_mosi = 23; I see there no 'pin_miso', so does this mean only one directional communication is being used, no status reading, or both reading and writing are being carried over one pin? If the former, then all I should to do is change pin numbers in above given excerption to ones valid for Raspberry Pi, if the later, I can't use this without more modifications. Also, I have simple monochrome display with PCD8544 chip, which should use basically the same bus design, so it could be used for this too, with some modification. Regards, Milan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150427124841.7b8a59bc>