【郭天祥TX-1C增强版51单片机开发板试用体验】+个人自学笔...

  • heaton426
  • LV4工程师
  • |      2017-07-25 23:16:15
  • 浏览量 1271
  • 回复:0
本帖最后由 heaton426 于 2017-7-25 23:19 编辑 学习单片机,个人人为开始时不用过多的去深究它是什么,也就是说不用刻意的去理解它是冯诺依曼体系结构还是哈佛结构,不用去记忆它是由中央处理器、中断控制器、震荡电路、程序存储器、数据存储器、定时器、I/O接口等部分构成,也不用去记cpu由算数逻辑单元(ALU)、寄存器、控制器等构成。单片机,你把他看成和你的PC机一样就成。当然这里的一样只是原理上的类同,都是通过程序达到一定功能的电路,只不过PC相对来说功能显示的更直接,单片机的效果需要通过搭设专门的外接电路来表达。 学习单片机个人认为最重要的不是去看这个教程,那个教程,而是去仔细阅读厂家的datasheet,教程能教给你用at的51点灯,能够交给你单一的芯片,但教不会你活学活用的方法,以至于很多人学习了一遍教程感觉自己会了一些东西,然而再实际的项目里又感觉什么也不会。因为看别人的教程其实就是再吃别人嚼过的馍,虽然吃着方便,却没有嚼的过程。照着别人的东西做固然方便,但却很容易发生变个样就不会的状况。所以回过头来仔细阅读厂家的datasheet,未尝不是一个好的学习方式,能让你更直观的理解单片机。 另外说一下个人一个不一定正确也不成熟的观点,学单片机其实就是学习对寄存器的操作,单片机的各种功能的实现,其实都可看作对不同的寄存器进行配置而直接或者间接实现的。stm32需要对i/o接口进行相关配置才能工作,51看似不用,没有涉及寄存器,但i/o接口的寄存器实际也是存在的,只不过因为通常不需要配置的关系被忽略。 寄存器是什么?本质上,寄存器和ram,rom没有区别,都是存储器,但根据功能,又分为工作区寄存器与特殊功能寄存器。特殊功能寄存器(SFR)其实就是一些用来控制定时/计数器、串行I/O口等器件的独立的存储单元。 在郭老师的开发板上,用的是stc89C52RC,首先我们下载stc官网的stc89C52的datasheet,来看一看这款芯片SFR的相关内容。 该芯片的SFR与高128字节的RAM地址是一样的,都是80h~ffh,貌似地址空间是重叠的,但是再物理上是独立的,需要是通过不同的寻址方式来区分,SFR必须使用直接寻址指令访问。当然这些指令一般情况下大家是接触不到的,因为我们通常使用的是高级语言,这些事情编译器都替我们做了。我们可以看一下这款芯片的sfr及其地址映射,操作单片机其实就是对这些sfr的操作,也就是通过寻址然后赋值完成sfr的配置,使其完成相应功能。在我们学习单片机各项功能的过程中其实就是在学习sfr的操作配置,学习GPIO,就是在学习P0P1P2P3P4这四个寄存器的操作,定时器、串口、中断也是在学习相关操作而已。这些SFR中有一部分和计算有关和实际功能无关,比如程序计数器PC,累加器ACCB寄存器、程序状态字寄存器PSW,堆栈指针SP,数据指针DPTR等,这些寄存器我们暂时并不需要关注,因为编译器的关系,我们书写的高级语言(C语言)被自动翻译了,不需要像汇编一样人工去操作这些。
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:0
x
收藏成功!点击 我的收藏 查看收藏的全部帖子