- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
系统程序设计举例
系统程序设计举例 设计要求实现的功能 系统主程序 几个重要子程序 其它一些子程序 总结 设计要求实现的功能 设计一个时钟,显示时分,没有掉电和闹钟功能 时间设定,使用K0、K1、K2三键进行设定 K0键--加1键 K1键--减1键 K2键--确定/换位键,第一次按K2键进入时间设定状态,十时位闪,表示对该位赋值;第二次按K2键 确定十时位值,并进入个时位赋值,……,第五次按K2键结束时钟设定状态,回到实时时钟状态。 按K3键,进入实时通道0电压显示状态。再按K3键返回实时时钟显示状态。 系统主程序 程序流图与程序结构特点 程序组成 芯片描述、SFR定义 内部RAM、控制I/O定义与分配 主程序、中断程序、子程序 程序详解 程序流图与程序结构特点 模块化结构 复位分为两部分 所有控制量(含开关量和模拟量)集中处理,提高处理效率 在RAM建立各控制量的映射,方便各功能模块的编程,方便修改 散转结构,可实现无扰动重入 程序组成--芯片描述、SFR、RAM、I/O定义 INCLUDE PIC16F877A.INC“ #DEFINE SCK RC,3 ;数字电位器时钟 #DEFINE SI RC,4 ;数字电位器数据 #DEFINE CSB RC,5 ;数字电位器片选 WBUF EQU 20H ;W保护单元,含0A0H单元 STBUF EQU 21H ;STATUS保护单元 FSBUF EQU 22H ;FSR保护单元 PCBUF EQU 23H ;PCLATH保护单元 R0 EQU 24H ;R0~7工作寄存器 … … R7 EQU 2BH ;R0~7循环变量或中间结果 DSBUF0 EQU 2CH ;显示位选,0~3=千~个 DSBUF1 EQU 2DH ;显缓,高/低半字千/百 DSBUF2 EQU 2EH ;显缓,高/低半字十/个 DSFL EQU 2FH ;显示位闪烁控制 #DEFINE FLON DSFL,2;闪烁总控位,1~闪 KEY1 EQU 30H ;键值1,触发型 KEY2 EQU 31H ;键值2,触发型 #DEFINE K0 KEY1,0 … … #DEFINE K7 KEY1,7 ;宏定义,W,STATUS,FSR,PCLATH进栈 PUSH MACRO MOVWF WBUF SWAPF WBUF,1 SWAPF STATUS,W BCF RP0 BCF RP1 MOVWF STBUF SWAPF FSR,W MOVWF FSBUF SWAPF PCLATH,W MOVWF PCBUF ENDM ;宏定义,W,STATUS,FSR,PCLATH出栈 POP MACRO BCF RP0 BCF RP1 SWAPF PCBUF,W MOVWF PCLATH SWAPF FSBUF,W MOVWF FSR 程序详解 ;主程序入口向量 RESET_VECTOR CODE 0x000 CLRF PCLATH GOTO MAIN GOTO MAIN GOTO MAIN ;-------------------------- ;中断入口向量 INTERRUPT_VECTORS CODE 0x004 PUSH ;进栈 BANK0 CLRF PCLATH GOTO INTSEV ;-------------------------- CODE 0x0020 INCLUDE SUBROUTE.INC ;-------------------------- ;中断服务子程序 INTSEV NOP ;实际为中断程序体 POP RETFIE MAIN BANK1 ;上电复位判断? MOVF PCON,W BSF POR BTFSS POR GOTO $-2 BANK0 ANDLW 02H BTFSS Z GOTO RSTELSE ;----------------------- MOVLW 2CH ;上电复位初始化 MOVWF FSR CLRF F0 INCF FSR,1 BTFSS FSR,7 GOTO $-3 ;以上清RAM30-7FH CLRF RA MOVLW 0C0H ANDWF RB,F MOVLW B MOVWF RC CLRF RD CLRF RE ;以上IO口初始设置 RSTELSE CLRWDT CALL SFRINI MOVLW 64H ;定时5mS MOVWF TMR0 BCF T0IF MAIN1 BANK0 BTFSS T0IF GOTO MAIN1 CALL SFRSET ;特殊功存储器重置 MOVLW ;关显示 ANDWF RB,
您可能关注的文档
最近下载
- 人力资源管理课后答案德斯勒.docx
- 马克思主义新闻观十二讲之第九讲实现新闻传播权利与社会责任的统一.docx VIP
- 国际航运管理 全套课件.PPT VIP
- 财务共享服务教学课件4第四章 费用报销流程.pptx VIP
- 手术患者意外伤害预防.pptx VIP
- 2025年新人教版数学7年级上册整册同步教学课件.pptx
- 广告理论与实务:各类广告媒介PPT教学课件.pptx VIP
- 第1课 课题一《课外生活小调查·周末生活我采访》(教学设计)-2024-2025学年三年级上册综合实践活动浙教版.docx VIP
- 广告理论与实务:印刷媒体广告PPT教学课件.pptx VIP
- 铭记历史·开创未来--2025-2026学年高一上学期纪念抗日战争胜利80周年爱国主义教育主题班会.pptx VIP
文档评论(0)