JZ2440 ---移植中景园Oled驱动

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_27516841/article/details/87932418

问 :怎么确认接口

JZ2440 V3原理图 如下

添加spi_device 

1.配置内核使用主控驱动 spi-s3c24xx.c
-> General setup 
     [*] Prompt for development and/or incomplete code/drivers

-> Device Drivers
   -> SPI support
        <*>   Samsung S3C24XX series SPI 

SPI_device 结构体:包含硬件信息属性,例如片选  最大频率 spi_mode

                  <<<-------- spi_register_board_info(); 注册设备

                                   <<<------  spi_info_jz2440_init

                                             <<<-----spi_info_jz2440

 spi_info_jz2440.c只能被编进内核,而无法作为模块使用  ---->>之前已经配置 <*>   Samsung S3C24XX series SPI        
 cp spi_info_jz2440.c /work/system/linux-3.4.2/drivers/spi/
 修改drivers/spi/Makefile,添加这行:
 obj-$(CONFIG_SPI_S3C24XX) += spi_info_jz2440.o

nSS_SPI 片选--->>GPF(1)

OLED 的 D/C#E 脚  --->GPG(4)
 

问编译一直出错提示如下:

 cp spi_info_jz2440.c /work/system/linux-3.4.2/drivers/spi/
 修改drivers/spi/Makefile,添加这行:

发现是写成了 spi-info_jz2440.o ,重新编译OK!

root@book-virtual-machine:/work/system/linux-3.4.2# cp arch/arm/boot/uImage /work/nfs_root/uImage_OLED

nfs 32000000 192.168.2.102:/work/nfs_root/uImage_OLED; bootm32000000

ifconfig eth0 192.168.2.5

mount -t nfs -o nolock,vers=2 192.168.2.102:/work/nfs_root/fs_mini_mdev_new /mnt

下一步编写测试程序

出错,发现应该改为

执行应用程序 oled_test. 发现屏幕并没有任何反应

为什么 spi驱动,在/sys/bus/spi/devices中没有文件spi.0 spi.1 呢??????

但是在plat里面有,这个应该是master 主机cpu的的驱动

看到网友的留言如下:移植spi的时候没法在dev下生成设备文件,求助,怎么移植啊???

现在问题是加载驱动后/dev目录下无spi设备,/sys/bus/spi/devices/及/sys/bus/spi/drivers/文件下也为空。
请问问题在哪?

暂且先在jz2440上用 裸机程序看看 OLED的状态

(二)先用JZ2440裸跑 OLED 试试看

模仿 下面这篇文章,写oled 裸机程序

https://blog.csdn.net/W1107101310/article/details/80294596

调试裸机程序过程中,发现编译make后,经常出现 重复定义(multiple definition of 'XXX')”的错误提示的还会携带 “未定义错误( undefined reference to ` XXX ')

比如:重复定义,可以根据关键词 搜索在那几个文件出现,去掉其中某一个include文件就可以

grep "关键词xx" * -nR

猜你喜欢

转载自blog.csdn.net/qq_27516841/article/details/87932418