由于Microchip推出的PIC系列8位单片机是朝着超小型、低功耗、低成本方向发展的,这些产品无功能堆积而以多品种方式来满足各种应用层次的要求,所以PIC 8位单片机的型号特别多,正因为如此,给初学者带来学习上的不便,易使初学者在阅读单片机书籍时,面对PIC 8位单片机众多的型号无法阅读。笔者的学习方法是先了解PIC单片机的内部硬件基本模式,学习汇编语言的写法,再结合典型汇编语言实例学习PIC单片机主要的汇编语言指令等,然后再深入下去。
由于PIC的源程序没有规定严格的编写形式,在一定范围内有较大的灵活性。在完成同一种功能时,往往不同的人其程序的表达方式也不一样。造成上述的原因之一,笔者认为是在PIC数据存储器的表达方式上。
PIC数据存储器RAM,从功能上可分为操作寄存器、I/O口寄存器、通用寄存器和特殊功能寄存器等。在汇编语言中其数据存储器RAM都当作寄存器来处理和使用,并常用FXX表示,其中F代表寄存器,XX表示相应的地址。如第5个RAM单元是PIC的A口(I/O口),可用F5表示;第3个单元是PIC的STATUS(状态寄存器)可用F3表示,以使指令中的寻址大大简化。不仅如此,有时还直接给出寄存器的名字如COUNT(计数器)来表示寄存器。不过这种表达式的随意性是由汇编语言程序开始时由伪指令预先赋值或自定义的,以保证汇编时PC机能识别。
打赏帖 | |
---|---|
【Zephyr】使用Zephyr外设初始化过程解析被打赏30分 | |
【S32K146】S32DS watchdog 配置使用被打赏20分 | |
【Zephyr】使用 IAR 调试 Zephyr 镜像被打赏20分 | |
赚取电动螺丝刀+电源电路理论知识分享1被打赏5分 | |
我想要一部加热台+分享常见运算放大器电路的应用被打赏5分 | |
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
我想要一部加热台+常见的MOS管驱动电路被打赏5分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下串口调试printf输出记录被打赏29分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 |