mcp2515驱动的实现_第1页
mcp2515驱动的实现_第2页
mcp2515驱动的实现_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、在配置Linux编译选项时,开启相应的SPI选项,如下所示- Device Drivers- SPI supportSPI support* SPI Master Controller Drivers *-*- Bitbanging SPI master Samsung S3C24XX series SPI Samsung S3C24XX series SPI by GPIO* SPI Protocol Masters * SPI EEPROMs from most vendors User mode SPI device driver support Infineon TLE62X0 (

2、for power switching)设置完成保存。驱动文件 mcp251x.c mcp251x.h can.h文件 mcp251x.c 放在目录 drivers/net/can/下;文件 mcp251x.h 放在目录 include/linux/can/platform/下;文件 can.h 放在目 录 include/linux/can/下添加配置文件 drivers/net/can/Kconfig在文件中添加config CAN_MCP251Xtristate Microchip 251x series SPI CAN Controllerdepends on CAN & SPIdef

3、ault N-help-Say Y here if you want support for the Microchip 251x series of SPI based CAN controllers.在drivers/net/can/Makefile文件中添加编译文件 obj-$(CONFIG_CAN_MCP251X) += mcp251x.o修改文件 arch/arm/mach-s3c2410/mach-smdk2410.c 中添加 spi 板级启动信息#include #include 包含 s3c2410_spi_info 结构体#include 包含 struct mcp251x_

4、platform_data 结构体static struct mcp251x_platform_data mcp251x_info = .f_osc = 16000000,/.oscillator_frequency = 19000000,/.board_specific_setup = myboard_mcp251x_initfunc,/.device_reset = myboard_mcp251x_reset,/.transceiver_enable = NULL,;static struct spi_board_info spi_board_info _initdata = 0 =.mo

5、dalias = mcp251x, 这个名称一定要与 mcp251x.c 驱动中/proc函数中的.name要一致.platform_data=&mcp251x_info, 上面的结构体.irq=IRQ_EINT3,中断端口号.max_speed_hz=8000000,/spi最大的速度.bus_num=0,/spi0, 1 中选择 spi0 口.chip_select=0,多个芯片选择, ;static struct s3c2410_spi_info s3c2410_spi0_platdata = .pin_cs = S3C2410_GPG2,片选端口指定.num_cs = 1,总共端口数/

6、 .bus_num = 0,;smdk2410_devices 数组中添加&s3c_device_spi0,smdk2410_init函数中添加s3c_device_spi0.dev.platform_data= &s3c2410_spi0_platdata;spi_register_board_info(spi_board_info, ARRAY_SIZE(spi_board_info);4.重新编译内核boot LoaaerParameterLinux-2.6.25 KernelRootfs Cramfsuserfs Yaffs启动信息中有如下内容,说明成功了: wxuuHtitititi

7、ti-uxtitiwjawtiti 0 x00038000-0 x0004-0000 9x09649999-9x06499999 0X00400000-0X03200000 0X03200000-0X04000000mcp251x spiG.Ei: device register at dev【252:Ei)usbmon: debugfs is not availableS3c2+I0-Ohci S3c2+10-Ohci: S3C24XX OHCIs3c2+10-ohci s3c2+10-ohci: new USB bus registered, assigned bus number 1s3c2+10-ohci s3c2+10-ohci: irq 42, io mem 0 x49000000usb usbl: configuration #1 chosen from 1 choice5 执行命令 cat /proc/devices显示 252 mcp251x添加设备文件 mknod /dev/mcp251x c 252 0执行应用程序./can_test显示如下root(aFS2410/#mknod /dev/mcp251x c 252 0 rootFS241B/#cd /home/fengwei/drive/spi/ root(3FS2410spi#. /can_te

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论