嵌入式系统学习笔记(2)——单片机的硬件结构:引脚、CPU、存储器

  • 8大部件,单一总线:微处理器、数据存储器、程序存储器、I/O口(P0-P3)、特殊功能寄存器、中断系统、定时/计数器、串行口 在这里插入图片描述
  • P0-P3是4个8位并行I/O口,其中P0口数据地址分时复用,要特别注意
  • 串行口是全双工异步串行的,可以同时输入和输出
  • 51系列有2个16位定时/计数器,52系列有3个
  • 51系列有5个中断源,2个优先级
  • 51系列一共有21个特殊功能寄存器
  • 双列直插只能背面焊接,方形封装有4个NC引脚是无用的,可以表面焊接,但是双列直插用得比较多,因为更适合插仿真头 在这里插入图片描述
  • 在这里插入图片描述
  • 外接晶振的时候,如果是无源晶振,需要和内部震荡器共振,需要接XTAL1和XTAL2,有源晶振自带振荡器,只需要接XTAL2,此时XTAL1接地 在这里插入图片描述
  • ALE是用于地址锁存允许,P0用于传输地址时,需要在该引脚输出脉冲的下跳沿,作为地址锁存允许信号,当P0用于传输数据时不输出下跳沿 在这里插入图片描述
  • 虽然P0/P2口可以作为I/O口,但是最好还是先把他们当作数据地址总线,因为许多仿真软件确实只把它们当成数据地址总线。P1口完全面向用户,所以需要I/O口时,应该优先考虑P1。P3口有其它复用功能,当没有使用到它的其它功能时,可以和P1等效使用。 在这里插入图片描述
  • P3口的特殊功能引脚如下:其中,当对单片机外扩设备时,除了外扩数据存储器,还有其它一些外壳设备如AD-DA转换器等,51单片机把这些外扩设备都当成外部数据存储器,所以需要通过P3.6和P3.7进行读和写。当没有外扩设备时,可以把P3.6和P3.7当成普通I/O口使用来检测按键输入或者输出信号等,但是有些仿真系统不支持,它就把P3.6和P3.7当成单纯的WR、RD口,所以我们也要尽量避免将P3.6和P3.7D当作I/O来使用 在这里插入图片描述
  • 因为51单片机的ALU通常只与A交换数据,所以成为程序运行速度的瓶颈,新一代的单片机已经没有这个问题,其它的RAM也可以和ALU 交换数据 在这里插入图片描述
  • 在这里插入图片描述
  • PSW.1位是给厂家预留的,对于用户没有什么用 在这里插入图片描述
  • 在这里插入图片描述
  • 51系列的单片机采取的是哈佛结构,即程序存储器和数据存储器单独编址,所以如果说存储器为64K,指的是程序存储器或者数据存储器为64K。现在许多其它的单片机采取冯诺依曼结构,程序存储器和数据存储器共同编址,所以64K指的是程序和数据存储器和为64K。此外,51系列单片机是把I/O口和片外RAM统一编址的。这就意味着,如果你片外扩张了64K的RAM,那么你已经没有空间给I/O口了
    在这里插入图片描述
  • 位寻址区一般存放用户自定义的状态变量,通用RAM区一般作为堆栈区和数据缓冲区(存放运算中的一些中间结果)使用
    在这里插入图片描述
  • 存放常数是为了节约RAM空间,51单片机对ROM查表的支持较好。5种中断源处理时的第一条指令必须放在中断入口地址所指向ROM,并且在第二或三条指令加一条跳转指令(因为不够放,要跳转到别的地方去)。并且注意主程序不要写到这个区间来,所以0000H的程序启动地址应该是放一条跳转指令,跳转到0023H后面的后面去,一般是0060H之后。 在这里插入图片描述
  • 51的特殊功能寄存器一共只有21个字节,离散地分布在128个字节的RAM区域,剩下的128-21=107个字节由厂家保留,不允许用户使用,后来的单片机慢慢拓展特殊功能寄存器的数量,有更多的功能,但也是在这128个字节的区域中。此外,对于SFR中字节地址末位为0H或者8H的特殊功能寄存器,支持按位寻址,其它只能按字节寻址 在这里插入图片描述
  • 保护断点指的是对PC的值压栈,现场保护指的是对寄存器的值压栈。复位后SP的值为07H,如果不改写,堆栈的时候就会占用工作寄存器的空间,所以复位后需要改写SP的值,一般赋值为60H,放到内部RAM区的高位区去;对于DPTR,一般用来指示片外RAM的地址,当不这么用时,可以当作两个8位寄存器来暂存数据;对DPTR有专门的16位的操作 在这里插入图片描述
  • 在这里插入图片描述
  • 51单片机有211个寻址位,其中128个位于位寻址区,83个位于SFR,位寻址区的字节地址和位地址如下:操作字节的时候应该用字节地址,操作位的时候用位地址,切注意此处字节地址并非首位的位地址
  • 在这里插入图片描述
  • 在这里插入图片描述
  • 52系列单片机的内部存储空间如下所示,主要区别在于内部多了128个字节的RAM,其它的地方都一样。但是SFR和多出来128字节的RAM的地址是重叠的,为了解决这个问题,要求对SFR采取直接寻址而对多出来的RAM采取间接寻址。
  • 在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值