免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1453 | 回复: 0
打印 上一主题 下一主题

关于使用C编写设备驱动在有操作系统的板子上运行的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-09-30 16:22 |只看该作者 |倒序浏览
最近开始接触驱动程序,主要参考书就是《嵌入式LINUX开发完全手册》,因为手头就是一个2440的板子。在最简单的GPIO编程中,点亮LED的程序很容易理解,但书上的例子是连接成BIN文件,指定代码段地址,开发板启动后在这个地址运行,其MAKEFILE内容如下:
led_on_c.bin : crt0.S  led_on_c.c
    arm-linux-gcc -g -c -o crt0.o crt0.S
    arm-linux-gcc -g -c -o led_on_c.o led_on_c.c
    arm-linux-ld -Ttext 0x0000000 -g  crt0.o led_on_c.o -o led_on_c_elf
    arm-linux-objcopy -O binary -S led_on_c_elf led_on_c.bin
    arm-linux-objdump -D -m arm  led_on_c_elf > led_on_c.dis
clean:
    rm -f led_on_c.dis led_on_c.bin led_on_c_elf *.o
这个makefile编译生成一个BIN文件,但有一个汇编写的文件,用于板子启动后将程序正确的引导到MAIN函数。问题是,这个例子是用于裸板的,而现在的2440已经烧了一个YAFFS进去,是可以正常运行的,我希望这个程序象普通C程序样,编译完成后通过FTP下载到开发板,然后在开发板的终端中敲入执行程序名,就可以运行,要怎么做呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP