Firefly开源社区

打印 上一主题 下一主题

firefly-rk3288 SPI OLED 小屏驱动

1186

积分

1

威望

3

贡献

中级创客

Rank: 4

积分
1186
QQ

firefly-rk3288 SPI OLED 小屏驱动

发表于 2016-2-18 11:54:25      浏览:147510 | 回复:127        打印     [复制链接] 楼主
本帖最后由 madman 于 2016-2-18 12:01 编辑

       刚好手头上有个OLED的小屏,就写了个小驱动尝试了下,学习下spi的接口。还是蛮好玩的这种小屏,有以前玩单片机的感觉;P。是在3288 android4.4 pad版的基础上写的,因为这个oled小屏是3线spi模式的(这里的3线只是没有接rx线是了),驱动还是按照通用的4线写的,也就是这里只验证了发数据。比较要注意下的是数据的大端小端格式的问题,还是拿示波器把数据一个个抓出来才发现的。不过也留了收数据的接口,应该也差不多的。刚好有可以接发设备的朋友的可以试试。      
     下面是dts的配置和驱动的代码:
  1. &spi0 {
  2.            status = "okay";
  3.         max-freq = <48000000>;
  4.          spidev@00 {
  5.                 compatible = "spi,oled";
  6.                 reg = <0x00>;
  7.                 spi-max-frequency = <48000000>;
  8.                 spi-cpha = <1>;
  9.                 spi-cpol = <1>;
  10.                 poll_mode = <0>;
  11.                 type = <0>;
  12.                 //enable_dma = <1>;
  13.                 spi-rst = <&gpio5 GPIO_C0 GPIO_ACTIVE_LOW>;
  14.                 spi-dc = <&gpio7 GPIO_B1 GPIO_ACTIVE_LOW>;
  15.           };
复制代码
CPOL:表示时钟信号的初始电平的状态,0为低电平,1为高电平。
CPHA:表示在哪个时钟沿采样,0为第一个时钟沿采样,1为第二个时钟沿采样
spi-max-frequency:此处设置spi使用的最高频率。
spidev@00:由于本例子使用的是SPI0,且使用CS0,故此处设为00,如果使用CS1,则设为01。
具体wiki上有
面是oled的效果{:3_51:},虽然有点小~:


1.png (279.35 KB, 下载次数: 563)

1.png

2.jpg (797.34 KB, 下载次数: 543)

2.jpg

spi-rockchip-oled.c.zip

6.06 KB, 下载次数: 694, 下载积分: 灯泡 -1 , 经验 -1

驱动

回复

使用道具 举报

1186

积分

1

威望

3

贡献

中级创客

Rank: 4

积分
1186
QQ
发表于 2016-3-23 10:15:00      沙发
Vera 发表于 2016-3-23 09:24
@zhansb 与 @ madman : 请问你们这个驱动 哪个Driver 路径?  Makefile 与 Kconfig 能告知吗?

一般是将附件的驱动放在kernel/drivers/spi/ ,然后自己添加好对应的Makefile和Kconfig就可以了
回复

使用道具 举报

1186

积分

1

威望

3

贡献

中级创客

Rank: 4

积分
1186
QQ
发表于 2016-4-5 09:16:06      板凳
qingfeng623 发表于 2016-4-1 17:18
请教楼主,为什么适配后,cmd和reset角始终是低电平,拉高也不生效。

reset是小屏要用到的控制脚,驱动里用io控制,你说的cmd是片选csn?拉高不生效应该是你没控制到io
回复

使用道具 举报

1186

积分

1

威望

3

贡献

中级创客

Rank: 4

积分
1186
QQ
发表于 2016-10-26 10:14:36      地板
东曦曦 发表于 2016-10-25 16:14
大神可以做一个Ubuntu14.04系统到适配官网7.8寸液晶屏的驱动么

添加方法kernel跟android差不多的,对比参照下官网的方法就好了,我手上没7.8屏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表