启动代码东北大学嵌入式.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Drivertst.c static int device_open(struct inode *inode, struct file *file) { MOD_INC_USE_COUNT; return SUCCESS; } static int device_release(struct inode *inode, struct file *file) { MOD_DEC_USE_COUNT; return 0; } static ssize_t device_write(struct file *file,const char *buffer,size_t length,loff_t *offset) { copy_from_user(Message,buffer,length); printk(device write\n\r); return length; } static ssize_t device_read(struct file *file, char *buffer, size_t length, loff_t *offset) { copy_to_user(buffer,Message,length); return length; } Drivertst.c static int Major; struct file_operations Fops={ llseek:NULL, read:device_read, write:device_write, readdir:NULL, //select:NULL, ioctl:NULL, mmap:NULL, open:device_open, release:device_release }; Drivertst.c int init_module() { //int ret_val; Major=register_chrdev(0,DEVICE_NAME,Fops); return 0; } void cleanup_module() { int ret; ret=unregister_chrdev(Major,DEVICE_NAME); } THANK YOU SUCCESS * * 可编辑 初始化流程(init.s) ;****************************************************** ;Self copy from FLASH to SDRAM ;****************************************************** LDR r0, =|Image$$RO$$Base| LDR r1, =|Image$$RO$$Limit| LDR r2, =|Image$$RW$$Base| LDR r3, =|Image$$RW$$Limit| SUB r1, r1, r0 SUB r3, r3, r2 ADD r1, r1, r3 LDR r2, =0x1000000 ;16M SelfCopy LDR r3, [r0], #4 STR r3, [r2], #4 SUBS r1, r1, #4 BNE SelfCopy ENDIF 初始化流程(init.s) 在一个简单的image里面: Image$$RO$$Base:是RO段的执行地址开始和装载地址开始,由-RO-BASE这个参数指定的 Image$$RO$$Limit:是RO段的装载地址结束的后一个地址,也就是RW的装载地址的开始。 没运行:flash中的ro段是ro-base指定的地址开始,等ro段完了后面紧接着就是rw段 运行时:flash中的ro段地址没有动,还是Image$$RO$$Base~Image$$RO$$limit-1,原来flash中的rw段移到了sdram中,地址为Image$$RW$$Base~Image$$ZI$$Base 初始化流程(init.s) ;******************************************* ;remap the memory ; FLASH 4 M(base address 0x7F000000) ; SDRAM 16M(base address 0x00

文档评论(0)

iuad + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档