您的位置:网站首页 > 电器维修资料网 > 正文 >
编辑PIC12C5××源程序的方法
来源: 日期:2013-12-17 21:35:55 人气:标签:
编辑pic12c5××的源程序,和编辑pic其它芯片的源程序一样,是在mplab(5.70版)集成开发环境软件下进行,以便进行编程的一体化操作,即编辑pic单片机的源程序.asm一创建源程序的项目.pjt→加载源程序.asm→汇编源程序生成源程序的目标码.hex.
1.编辑pic12c5××源程序的固定格式在建立pic12c5××的源程序时,同其它pic单片机一样,应使用列表伪指令和给通用寄存器赋值。即:list p=12c5××;选芯片型号include p12c5xx.inccountl equ 08h;自定义寄存器地址count2 equ 09h;以便读写自定义寄存器的内容(数值)如果使用mplab较低版本,程序中要用的专用寄存器也需用伪指令ec)u定义其地址,即使用mplab5.70版,如果状态寄存status被派上用场(如pic12c509需选页面)时,也应用伪指令equ定义其地址(包括status对应位的地址)。
2. 110口gpio(地址:06h)的表示方法pic12c5××只有一个i/o口,命名为gpio的专用寄存器,在编辑其源程序时,gpio的位表达式如下表所示。
下表的用途:供pic12c5××编辑源程序时,供“位”指令的书写依据。
3.pic12c5××的专用寄存和初始化编辑pic12c5××的源程序时,除了上述简介的固定格式外,接着是对选定芯片的初始化。对pic12c5x×的初始化,需用相关的专用寄存器完成,现介绍如下:
(1)tris方向控制寄存器。专用寄存器tris是管理gpio口线的输入或输出的。tris位中的1信号,会将i/o口线(对应位)设置为输入态(高阻抗),o信号为其输出态。有两点例外,gp3只能是输入态,gp2还要受专用寄存器option的tosc位的限制,可使gp2为输入态而不管tris的设置。对pic12c5××,用户不能对tris寻址(数据存储器图3上无tris的地址)的,所以设置gpio的i/o口线输入或输出时,应通过trisgpio的这条指令进行设置,此时w(工作寄存器)的内容会自动置入tris中,为此设置i/o口线的输入或输出的指令应为:movlwb‘××××××××’trisgpio
两条不可分割的指令。上式中的“×”代表用户设置的输入或输出0或10
(2)option参数定义寄存器。option是一个8位的专用寄存器,其功能是用来定义芯片的工作参数,其特点与tris相似,对pic12c5××,用户不能对option寻址的(数据存储器图3上无option的地址)。option的内容也是由w的内容置入,其置入的指令为movlwb‘×××××××בoption
option的位功能,如下图所示。
说明:1.图中未列出的位-pic16f84相似,目前’暂不用.所以未列出。
2根据option已列出的位,要使gp2为输出,除了tris设置外,还应外加
movlw b'11000000'
option
的两条指令。
(3)fsr(地址:04h)选择寄存器。fsr和indf(间址寄存器)配合完成间接寻址,目前暂不用该功能。fsr寄存器宽度为5位,其中fsr<4:0>(0~4位)用来寻址32个寄存器( ram),而fsr<5>位,则用来选择寄存器体(bank),这点与pic16f84完全不同。对pic12c508不存在体选问题,可不设置,而对pic12c509,因存在bank0、bankl.需要其体选,所以对pic12c509,当fsr( 5)=0时,选bank0,fsr( 5)=1时,选bankl。
上述介绍的几个专用寄存器tris、option、fsr,其主要目的是为了编辑pic12c5×x gpio口基本功能源程序时,所需的必备的知识,了解上述专用寄存器的用途,即可快速切入pic12c5××的编程方法。
【看看这篇文章在百度的收录情况】
相关文章
- 上一篇: C/Ku波段复合高频头
- 下一篇: PIC12C5××实验源程序