返回首页
当前位置: 主页 > 单片机学习 > PIC单片机 >

Windows下PIC 8位单片机源程序汇编和固化(二)

时间:2009-06-15 20:24来源:单片机信息网 作者:admin 点击:
笔者将以附图的PIC16C55单片机脉冲计数试验电路(计数时,RA1口为十进制码输入,RB口为二进制码输出)的源程序PIC count.ASM为例,介绍在MPLAB集成开发环境下编辑(建立)PIC单片机源程序的方法。其操
  

Windows下PIC 8位单片机源程序汇编和固化(二)

    2  在MPLAB中建立PIC单片机源程序
笔者将以附图的PIC16C55单片机脉冲计数试验电路(计数时,RA1口为十进制码输入,RB口为二进制码输出)的源程序PIC count.ASM为例,介绍在MPLAB集成开发环境下编辑(建立)PIC单片机源程序的方法。其操作步骤如下。
(1)打开MPLAB桌面(窗口)和空白编辑窗口 开启PC机,启动运行Windows,在Windows的管理程序下,用鼠标点击显示屏上的图标 Microchip(快捷),即可启动运行MPLAB集成开发软件,此时屏幕上将显示MPLAB的桌面(见今年第25期本版的《源程序的汇编和固化 (一)》文中的附图)。从已打开的MPLAB的桌面(窗口)上,用鼠标点击MPLAB菜单栏中最左边的File(文件),即可打开File的下拉菜单,再用鼠标点击下拉菜单中的命令New Source(新建源程序),即可打开一个空白的编辑窗口,在此窗口中用键盘键入PIC 16C55 COUNT.ASM源程序再对其进行编辑(以MPLAB V3.01版为例):
  LIST P=16C55
  #INCLUDE P16C5X.INC
  COUNT EQU 1EH
  ORG     0
START
  MOVLW 0
  MOVWF PORTB   ;设置B口为输出
  TRIS     PORTB
  CLRF    COUNT   ;置计数器COUNT为零
LOOP
  BTFSS   PORTA,1;判断开关K按下否?
   GOTO    INCOUNT;按下开关K,跳转执行IN-
          ;COUNT
ENDLOOP
  GOTO LOOP  ;开关未按下,继续循环
;判断
INCOUNT
    INCF COUNT,1  ;计数器COUNT+1
    MOVF COUNT,W
    MOVWF PORTB    ;从B口输出计数值
DEBOUNCE
    BTFSS PORTA,1   ;判断开关K释放否?
    GOTO DEBOUNCE ;没有释放继续判断
GOTO LOOP      ;开关K释放重新开始
ORG   0x1FF   ;复位向量
GOTO START
END
说明:在MPLAB集成开发环境下建立源程序时,其源程序文件的开始应使用伪指令List(列表选择指令)指示符,指定处理的类型(对象)。所以,上述的源程序的开始处为List P=16C55。其中的“P=”是处理类型,代表设置微控制器为16C55(芯片)。接着又用了伪指令#include P16C5X.INC,代表MPLAB应把要处理(类型)的微控器F16C55的所有已设置的文件,在需要时就读入这里的源程序中。这条伪指令就为源程序中的代码设置大为简化,例如PORTB、TRIS以及其它特殊功能寄存器,就不再用EQU伪指令给它们赋值了。
源程序中紧接着上面的伪指令为 ORG,代表存放程序的起始地址。所以在一个源程序中,可以根据需要多次使用ORG伪指令定位。在上述的源程序中,使用了两次ORG 。值得注意,在PIC系列单片机中,对初级产品PIC16C54/55的复位向量为1FFH;PIC16C56为3FFH;PIC16C57/58为 7FF;对中级和高级产品的复位向量为000H和0000H。由此可见在建立PIC单片机源程序时,使用一些伪指令是很有必要的,用它可以为建立源程序完成一些特定功能,使编制的源程序大大简化。源程序后面的各条指令功能均已在注释中给了说明,这里不再复述。

知识竞赛试题:
27.若将上文中的源程序PIC16C55.ASM移植成PIC16F84 COUNT.ASM,文中编辑的源程序应作何修改?

顶一下
(0)
0%
踩一下
(0)
0%
双击复制本文网址,发送给您QQ/MSN上的朋友:
------分隔线----------------------------
此页的访问者还关注了以下资讯:
  • ·网络单片机PIC18F97J60的开发与应用
    ·PIC中档单片机的中断总结
    ·MPASM的伪指令
    ·PIC单片机应用问答
    ·PIC单片机在线调试中的一些问题
    ·PIC单片机引脚中断程序的设计技巧
    ·PIC 单片机软件编程技巧
    ·PIC16C5X 单片机睡眠状态的退出方法
    ·PIC 中BANK和PAGE的分析
    ·PIC单片机开发的几个问题
    ·PIC 单片机选择存储体0或1的方法
    ·PIC 单片机晶振设计
    ·PIC 8位单片机芯片引脚功能
    ·PIC系列8位单片机源程序详解
    ·PIC单片机的C语言使用(一)
    ·编译通不过错误总汇
    ·PIC系列8位单片机源程序的组成
    ·PIC系列单片机数据存储器的特点和功能
    ·PIC系列单片机数据存储器的特点和功能
    ·浅谈PIC8位单片机中的RAM和汇编程序的关系
    ·PIC8位单片机汇编语言常用指令的识读(上
    ·PIC8位单片机汇编语言常用指令的识读(中
    ·PIC 8位单片机16F8X系列简介
    ·PIC系列单片机的伪指令
    ·选择PIC单片机存储体0或1的方法
    ·Windows下PIC8位单片机源程序汇编和固化(一
    ·Windows下PIC 8位单片机源程序汇编和固化
    ·Windows下PIC 8位单片机源程序汇编和固化
    ·Windows下PIC 8位单片机源程序汇编和固化
    ·Windows下PIC 8位单片机源程序汇编和固化
    ·Windows下PIC 8位单片机源程序汇编和固化
    ·Wineows下PIC 8位单片机源程序汇编和固化
    ·PIC单片机的C语言使用
    ·小议编写PIC单片机源程序应注意的问题
    ·PIC系列单片机的振荡器配置方法
    ·PIC 8位单片机的电源和时钟
    ·PIC单片机16F84的内部硬件资源(八)
    ·PIC单片机16F84的内部硬件资源(七)
    ·PIC CCS C语言程序范例
    ·PIC单片机16F84的内部硬件资源(六)
  • 您可能还感兴趣的内容:
  • 义隆、合泰、松翰、feeling、EMC、holtek、sonix各大品牌IC、单片机、芯片底价销售!(义隆大陆区总代理商)
  • 发表评论 查看所有评论
    .请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论.
    .用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任.
    .本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据·
    .请客观的评价您所看到的资讯,提倡就事论事.杜绝漫骂和人身攻击等不文明行为!
    评价:
    表情:
    用户名: 密码: 验证码:
    单片机销售业务热线
      手机:13684994966
    本站赞助商信息
    编辑推荐信息
    论坛最新讨论资讯
    本站赞助商链接