1.实验板电路
为了学习PIC12C5××芯片的功能,需要一种实验板,下图是一种PIC12C5××的实验板电路。
电路中,晶振XT与电容Cl、C2组成PIC12C5××芯片的时钟电路.R1和开关K组成简单的手动复位电路。R2、R3和对应发光二极管LED组成GPIO的GP1、GP2设置成输出时的显示电路。该电路可完成PIC12C5××芯片的基本功能实验,以及对PIC12C5x×多次再写时的编程实验。
2.PIC12C508振荡器源程序
下图是PIC12C508振荡器的源程序流程图,利用下图建立的PIC12C508振荡器的源程序,定义为PIC01,ASM.其源程序清单如下:
3.PIC12C509振荡器的源程序
PIC12C509的编程方法与PIC12C508的十分相似,但仅仅是初始化不同。在建立PIC12C509的源程序时,会遇到程序存储器的页面选取和数据存储器的选体(BANK)问题,这就形成PIC12C509的源程序中,初始化与PIC12C508不同,一旦PIC12C509源程序初始化完成,其它的源程序与PIC12C508使用的指令方法完全相同。
在这里,也将PIC12C509芯片制成振荡器,以便和PIC12C508的振荡器源程序的初始化进行比对,从而学会建立他们的源程序方法。PIC12C509作振荡器时,其实验板、源程序的流程图与PIC12C508一样,但其程序存储器的页面和数据存储器的体BANK,有意分别选成1页面和BANK1,以便读者识别。这里对PIC12C509芯片振荡器的源程序,定义为PIC02.ASM其程序清单如下:
说明:
1.上述两种源程序PIC.ASM和PIC02.ASM.前者是PIC12C508的,因其程序存储器仅一个页面0,所以无页面选择和体BANK的选择,而后者是PIC12C509的,增加了STATUS和FSR的两种专用寄存器指令,且选用的是1页面和BANK1体,若PIC12C509仅用0页面,则有关STATUS和FSR的指令,应把BSF都改为BCF,同时自定义的寄存器(RAM)也应选用BANKO中的地址(07h~1Fh)。
2.注意:PIC12C508和PIC12C509的振荡频率,前者比后者高,也可以完全设置为相同的振荡频率,此时两种源程序仅初始化的差异。
3.若还需开发PIC12C508/509的其它功能,请查阅他们的技术资料,主要是利用专用寄存器的功能得以完成。
4.两种实验源程序PIC01.ASM和PIC02.ASM的编程读者只需将上述的两种源程序在MPLAB(5.70版)集成开发的软件中,创建源程序的项目.Pjt→加载其源程序.ASM→汇编源程序→生成其目标码.hex.即可用PIC编程器将其目标码烧写到PIC12C508和PIC509芯片中,再用实验板电路观察对应芯片振荡器中LED的闪亮。
本文关键字:暂无联系方式电脑-单片机-自动控制,电子学习 - 基础知识 - 电脑-单片机-自动控制