1 APB总线

core8051s内核支持APB3总线,APB writebuffer 为{XWB3, XWB2, XWB1, ACC};

写访问

对FC00以上地址写值,即表示APB写操作,值为(XWB3, XWB2, XWB1, ACC)。

MOV DPTR, #0FC20H

MOVX @DPTR, A

读访问

MOV DPTR, #0FC20H

MOVX A, @DPTR即可更新 (XWB3, XWB2, XWB1, ACC)。

2 APB汇编示例

FC00-FFFFH空间映射了1个1K的SRAM,通过APB总线来读写。

apb3.asm

    XWB3 EQU   9CH
XWB2 EQU 9BH
XWB1 EQU 9AH XRB3 EQU 9FH
XRB2 EQU 9EH
XRB1 EQU 9DH main:
MOV R7, #0H
MOV DPTR, #0ff40H
MOV XWB3, #10H
MOV XWB2, #10H
MOV XWB1, #10H
MOV ACC, #10H LOOP:
MOVX @DPTR, A ;apb write MOVX A, @DPTR ; apb read ;display
MOV SBUF, XRB3
MOV SBUF, XRB2
MOV SBUF, XRB1
MOV SBUF, A INC DPTR
INC R7
INC XWB3
INC XWB2
INC XWB1
MOV ACC, #10H
ADD A, R7 CJNE R7, #010H , LOOP SJMP $

执行结果:

write op @f40: 10101010
read op @f40: 10101010
write op @f41: 11111111
read op @f41: 11111111
write op @f42: 12121212
read op @f42: 12121212
write op @f43: 13131313
read op @f43: 13131313
write op @f44: 14141414
read op @f44: 14141414
write op @f45: 15151515
read op @f45: 15151515
write op @f46: 16161616
read op @f46: 16161616
write op @f47: 17171717
read op @f47: 17171717
write op @f48: 18181818
read op @f48: 18181818
write op @f49: 19191919
read op @f49: 19191919
write op @f4a: 1a1a1a1a
read op @f4a: 1a1a1a1a
write op @f4b: 1b1b1b1b
read op @f4b: 1b1b1b1b
write op @f4c: 1c1c1c1c
read op @f4c: 1c1c1c1c
write op @f4d: 1d1d1d1d
read op @f4d: 1d1d1d1d
write op @f4e: 1e1e1e1e
read op @f4e: 1e1e1e1e
write op @f4f: 1f1f1f1f
read op @f4f: 1f1f1f1f

  

最新文章

  1. Java中final的作用
  2. [原]unity5 AssetBundle打包
  3. python集合类型set
  4. Z.XML第二次迭代分数分配
  5. uva 11234 Expressions 表达式 建树+BFS层次遍历
  6. Vijos_1218_数字游戏_(划分型动态规划+环状动态规划)
  7. IP定位 C#
  8. eclipse插件maven的使用,web打包成WAR,tomcat下直接运行
  9. [转载]关于网传JDK1.7语法层次支持集合的问题
  10. Vue.js 系列教程 4:Vuex
  11. Linux 踩过的坑系列-01
  12. 知识点:Mysql 索引原理完全手册(1)
  13. IDEA或者WebStorm关闭JS文件的黄色提示
  14. Java常用API、Math类介绍
  15. 实例应用 自定义页面taglib标签
  16. 转:ios导航栏设置
  17. POJ.2763 Housewife Wind ( 边权树链剖分 线段树维护区间和 )
  18. java 内省(Introspector)
  19. {Azure} 常用链接
  20. Codeforces Round #292 (Div. 1) C - Drazil and Park

热门文章

  1. python获取上周的起始日期
  2. JAVA的注释和变量名称
  3. (性能测试笔记)逻辑IO和物理IO的区别
  4. 15. 测试环境部署-linux
  5. C#如何判断文件是否存在
  6. 2023Hgame
  7. JS 代码片段 / 预编译/预解析 /执行上下文/ECG/EC/ECS/GO/VO/AO
  8. 《【转载】ChatGPT创始人,给我们上的8堂课》 回复
  9. php框架之odp-环境部署安装
  10. 如何完整卸载catia?