大家好,我是答疑助手巴扎黑,很多同学苦于没有项目经验,不知道真实的公司中的项目开发是什么样子,也未曾使用过任何版本管理工具,因此我个人有个小小的想法,给大家一个机会,也算发起一个倡议,活跃论坛氛围,诚邀有热情的学员参与一个小小的项目。 下面,我简单介绍一下这个小项目: 在毕业班视频的基础上,为JZ2440搭建一个全新的文件系统,这个项目将划分为众多小任务,供大家领取,具体的任务内容将在后面详细说明。本项目将部署在Github上,采用git 进行版本管理,领取到任务的同学建立自己的任务分支,完成任务测试完毕后提交代码推送到远程仓库,由项目管理员进行测试代码合并。 那这个项目是不是就做个文件系统那么简单?并非如此,对应的3.4.2版本的内核驱动并不完善,就算毕业班老大已经移植好了部分驱动,也并未集成到内核中去,我们的文件系统要有板级测试程序,对所有的板载硬件进行测试,因此,项目涉及驱动、应用、文件系统中各种工具的移植,比如luvcview 来预览 camera 等。 项目不需要太多人,我以及英语挂科的大牛以及前答疑助手悦光大神(美女)会参与到项目中给大家做指导,初步设想让5-8个同学参与进来。
开发板: JZ2440编译器: 采用4.4.3版本的编译器吧,稍微高一点,这个后面我会上传。uboot: 就用毕业班的2012版本内核: 3.4.2 版本,在老大最新的补丁的基础上进行完善。文件系统: 版本不低于1.21 待定
任务: 任务1:难度2 修改u-boot2012以及内核的分区,将内核分区大小统一修改为6M 任务2:难度2 U盘、SD卡自动挂载脚本 任务3:难度3 移植 ftp,将开发板作为ftp服务器,使用filezilla等工具可以登录到开发板传输文件 任务4:难度3 移植 ssh,像登录虚拟机一样登录开发板 任务5:难度5 3.4.3内核的音频驱动整合测试,移植mplayer、aplay等工具实现视频播放、录放音 任务6:难度4 移植luvcview,能够预览usb摄像头,并进行拍照 任务7:难度5 实现开发板插入网线自动获取IP的功能,busybox自带udhcp 任务8:难度5 移植 tslib qt4.8或者qt5.6 任务9:难度3 看门狗驱动以及驱动测试程序,内核中有标准的watchdog驱动框架 任务10:难度3 LED驱动以及测试程序,如果内核中原来有则去除,重新实现,通过sys文件系统创建一个接口来控制 任务11:难度4 LCD驱动集成(同时支持3.5以及4.3寸屏幕),以及LCD测试程序,通过操作Framebuffer实现画线操作,应用程序要兼容两种屏幕 任务12:难度3 LCD背光测试程序,内核中应该也有背光子系统,更改驱动,编写测试程序 任务13:难度2 按键驱动以及测试程序,打开测试程序时按下按键能够打印出按键上报的键值 任务14:难度2 蜂鸣器驱动以及测试程序,实现打开测试程序发出响声,关闭停止即可 任务15:难度2 串口测试程序,短接收发引脚,能够打印出发送的数据即可 任务16:难度4 需要有官方的硬件,具有硬件的同学领取 i2c eeprom的驱动以及测试程序,实现任意地址的读写,单字节读写,连续读写。
任务17:难度4 需要有官方的硬件,具有硬件的同学领取 spi oled的测试程序,实现显示字符、轮显等等。。
任务18:难度3
RTC 驱动移植 任务19:难度4 uboot 增加开机LOGO——百问网LOGO 任务20:难度4 uboot增加tfp一键下载菜单,仿uboot1.1.6
上述任务并不完善,大家可以回帖补充! 无论是哪一个任务,都需要撰写详细的任务书,说明你的任务是怎样完成的,大家之间相互分享共同进步。
任务周期不会太长,因为并不是很困难,看大家进度,当然会给大家充足的时间去把任务做完美~,大概一周汇总一次工作进度
人员招募直接到下周五,这个项目适合看完第2期、毕业班、正在看或者看完3期视频的同学,每个同学可以回帖来报名参与,每人只能最多选取2个任务,回帖时,请说明你已经学习过了韦老师哪些课程,是否用过git,是否创建过自己的github。 例如: 巴扎黑 任务1 任务2 目前学习过韦老师的1、2、3期以及毕业班课程,正在学习第4期,用过git,我的github地址是xxxxx
对了,我得吹吹牛,这个项目能让你学到什么东西: git 版本管理,对于一个linux开发者来说,不会git应该是不行的,但是平时学习用Git确实鸡肋,多人协作用的实战项目会让你亲身体验到Git版本管理的好处。 在公司并不会从0写驱动,一般都是从别的平台移植过来,因此我们这个项目也是这样,从2.6的内核把驱动移植到3.4.2,提高你的驱动移植能力。 让你亲手从0搭建起一个文件系统。 对了,可能用Git 以及 Github的同学并不多,后面我会分享一些文档给大家,大家也可以自行百度,没有github账号的,先去搞个github账号建个仓库提交代码体验一下。
2017-6-11目前项目已经启动,项目组成员具有 push 权限,其余同学可以下载代码,关注项目进度:kernel:https://github.com/lizuobin/linux-3.4.2-jz2440.gituboot:https://github.com/lizuobin/uboot-2012.04.01-jz2440.gitrootfs:https://github.com/lizuobin/rootfs_jz2440.gitfile:///C:\Users\hasee\AppData\Roaming\Tencent\QQ\Temp\E778066D43114763AF2661495C03279D.png
下载源码的命令如下:
认证通过的: git clone
git@github.com:lizuobin/rootfs_jz2440.git
认证未通过的:git clone
https://github.com/lizuobin/rootfs_jz2440.git
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。