




已阅读5页,还剩70页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 S3C2410主要外设功能部件 ARM汇编指令 UART异步串口通信 通用I/O端口 Nand Flash控制器 NOR Flash接口电路 1. ARM汇编指令 加载/存储指令 LDR:LDR条件目的寄存器, 用于将存储器中的一个32位的字数据传送 到目的寄存器中;常用于从存储器中读取32 为的字数据到通用寄存器。 ldr r0,=rPCONE /寄存器地址存放到通用寄存器中 STR:STR条件源寄存器, 用于从源寄存器中将一个32位的字数据传 送到存储器中。 ldr r0,UARTADD str r1,r0 /向UART中存入数据 数据处理指令 MOV:MOV条件S目的寄存器,源操作数 用于完成从另一个寄存器、被移位的寄存 器或将一个立即数加载到目的寄存器;S项决 定指令的操作是否影响CPSR中条件标志位的 值,当无S时,指令不更新CPRS中条件标志位 的值。 mov r9,r2 movs r0,#oxFF00 CMP:CMP条件 操作数1,操作数2 用于把一个寄存器的内容和另一个寄存器 的内容或立即数进行比较,同时更新CPSR中 条件标志位的值。该指令只进行一次减法运 算,但不存储结果,只更改条件标准位。 cmp r0,#oxFF00 跳转指令 用于实现程序流程的跳转;可以完成从当 前指令向前或向后的32MB地址空间的跳转; (超过要使用直接向程序计数器PC写入跳转 地址值的方式)。 B 跳转指令 BL 带返回的跳转指令 BLX 带返回和状态切换的跳转指令 BX 带状态切换的跳转指令 WAKEUP_SLEEP ;Release SCLKn after wake-up from the SLEEP mode. ldrr1,=MISCCR ldrr0,r1 bicr0,r0,#(79 /page address 也可以这么认为,一个Nand Flash地址的A0A7是它的 column_addr,A9A25是它的Page Address。 #define rNFCONF (*(volatile unsigned *)0x4e000000) /nand flash configuration #define rNFCMD (*(volatile char *)0x4e000004 /nand flash command #define rNFADDR (*(volatile char *)0x4e000008 /nand flash address #define rNFDATA (*(volatile char *)0x4e00000c /nand flash data #define rNFSTAT (*(volatile unsigned *)0x4e000010 /nand flash opreation status #define rNFECC (*(volatile int *)0x4e000014 /nand flash ecc #define rNFECC0 (*(volatile char *)0x4e000014 #define rNFECC1 (*(volatile char *)0x4e000015 #define rNFECC2 (*volatile char *)0x4e000016 现在举一个例子,假设要从Nand Flash中的第5000字节处开始读取1024个字 节到内存的0x30000000处,这样调用read函数: nf_read(5000, 0x30000000,1024); 分析5000这个src_addr,根据 : column_addr=src_addr%512; page_address=(src_addr9); 可得出column_addr=5000%512=392 page_address=(50009)=9 于是可以知道5000这个地址是在第9页的第392个字节处。 于是nf_read函数将这样发送命令和参数 column_addr=5000%512; page_address=(50009); NF_CMD=0x01; 从2nd half开始读取 NF_ADDR= column_addr 1st Cycle A7:0 NF_ADDR=page_address 2nd.Cycle A16:9 NF_ADDR=(page_address8) 3rd.Cycle A24:17 NF_ADDR=(page_address16) 4th.Cycle A25 向NandFlash的命令寄存器和地址寄存器发送完以上命令和 参数之后, 就可以从rNFDATA寄存器(NandFlash数据寄存器) 读取数据了. 下面的代码进行数据的读取. for(i=column_addr;i 9); unsigned char * buf = desc_addr; while(unsigned int)buf 255) NF_CMD(0x01); else NF_CMD(0x00); NF_ADDR(cloumn_addr /column address A7:0; NF_ADDR(page_address /page address A16:9 NF_ADDR(page_address 8) /A24:17 NF_ADDR(page_address 16) /A25; for(i=0;i10;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数控技术应用试题及答案
- 2025年北京个人房屋租赁合同范本官方版下载
- 2025官方版股权投资合同范本
- 2025年高二【数学(人教A版)】两条平行直线间的距离公式-学习任务单
- 2025抵质押物的借款合同范本
- 公园养护基本知识培训总结
- 公司职工财务知识培训课件
- 高职卫生专业招生面试题库
- 2025关于汽车租赁的合同样本
- 市场调研与创意策划的关系面试题及答案解析
- 2025年景泰蓝工艺瓶行业深度研究报告
- 呼出气一氧化氮检测流程及临床应用的专家共识(2025版)解读课件
- 场景理论的内容框架及应对策略研究
- 《血液肿瘤免疫及靶向药物治疗相关性感染预防及诊治中国专家共识(2025年版)》解读
- 标准厂房混凝土预制构件施工现场的环境保护措施
- 电缆井及过轨管施工技术交底1
- 苏豪控股集团招聘笔试题库2025
- 肿瘤标志物临床应用试题及答案
- 高校辅导员考试全面解析试题及答案
- 超星尔雅学习通《脑洞大开背后的创新思维(大连理工大学)》2025章节测试答案
- 护理服务规范与礼仪标准:护理服务规范礼仪标准及考核评分标准
评论
0/150
提交评论