- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE1
PAGE1
PIC18系列编程模型
在上一节中,我们已经了解了PIC18系列的基本架构和特点。本节将重点介绍PIC18系列的编程模型,包括其存储器结构、寄存器配置、指令集和编程方法。通过本节的学习,您将能够更好地理解如何在PIC18系列单片机上进行高效编程。
存储器结构
PIC18系列单片机的存储器结构是分段的,主要包括以下几个部分:
1.程序存储器(ProgramMemory)
程序存储器用于存储单片机的指令。PIC18系列单片机的程序存储器通常使用闪存(FlashMemory),可以多次编程和擦除。程序存储器的地址空间通常为16位,最大可达64KB。
2.数据存储器(DataMemory)
数据存储器用于存储程序运行时的数据,包括寄存器、变量和栈等。PIC18系列单片机的数据存储器分为以下几个部分:
通用寄存器(GeneralPurposeRegisters,GPR):用于存储程序中的变量和临时数据。这些寄存器通常位于RAM中,地址空间为14位。
特殊功能寄存器(SpecialFunctionRegisters,SFR):用于控制单片机的各种功能,如定时器、中断、I/O端口等。这些寄存器通常位于特定的地址空间中,可以通过读写操作进行配置。
间接寻址寄存器(IndirectAddressingRegisters):用于访问数据存储器中的任意地址。PIC18系列单片机通常有两个间接寻址寄存器,分别为FSR0和FSR1。
3.配置寄存器(ConfigurationRegisters)
配置寄存器用于设置单片机的工作模式、时钟源、复位配置等。这些寄存器在程序的开始部分进行配置,并在运行时保持不变。
4.EEPROM存储器
EEPROM存储器用于存储需要长期保存的数据,如校准值、配置参数等。EEPROM存储器可以在程序运行时进行读写操作。
寄存器配置
1.特殊功能寄存器(SFR)
特殊功能寄存器(SFR)是PIC18系列单片机中用于控制各种功能的重要寄存器。每个SFR都有特定的地址,并且可以通过读写操作进行配置。以下是一些常用的SFR及其功能:
TMR0H和TMR0L:定时器0的高8位和低8位寄存器。
T0CON:定时器0控制寄存器。
PORTA和TRISA:I/O端口A的数据寄存器和方向寄存器。
PORTB和TRISB:I/O端口B的数据寄存器和方向寄存器。
INTCON:中断控制寄存器。
2.配置寄存器(ConfigurationRegisters)
配置寄存器用于设置单片机的初始配置,包括振荡器类型、复位配置、电源管理等。以下是一些常用的配置寄存器:
CONFIG1L和CONFIG1H:用于设置振荡器类型、看门狗定时器、电源管理等。
CONFIG2L和CONFIG2H:用于设置复位配置、代码保护、调试模式等。
指令集
PIC18系列单片机的指令集是RISC(精简指令集计算机)架构的,包含大约35条指令。这些指令可以分为以下几类:
1.数据传送指令
数据传送指令用于在寄存器之间、寄存器和存储器之间、以及存储器之间进行数据的移动。常见的数据传送指令包括:
MOVF:将文件寄存器的内容移动到W寄存器或另一个文件寄存器。
MOVF:将W寄存器的内容移动到文件寄存器。
MOVWF:将W寄存器的内容移动到文件寄存器。
MOVLW:将立即数移动到W寄存器。
2.算术和逻辑指令
算术和逻辑指令用于执行基本的数学运算和逻辑运算。常见的算术和逻辑指令包括:
ADDWF:将W寄存器的内容与文件寄存器的内容相加,并将结果存入文件寄存器。
SUBWF:将文件寄存器的内容减去W寄存器的内容,并将结果存入文件寄存器。
ANDWF:将W寄存器的内容与文件寄存器的内容进行按位与运算,并将结果存入文件寄存器。
IORWF:将W寄存器的内容与文件寄存器的内容进行按位或运算,并将结果存入文件寄存器。
3.控制转移指令
控制转移指令用于改变程序的执行顺序。常见的控制转移指令包括:
GOTO:跳转到指定的程序地址。
CALL:调用子程序。
RETURN:从子程序返回。
RETFIE:从中断服务子程序返回。
4.位操作指令
位操作指令用于对特定的位进行设置、清除或测试。常见的位操作指令包括:
BSF:设置文件寄存器中的某个位。
BCF:清除文件寄存器中的某个位。
BTFSS:测试文件寄存器中的某个位,如果位为0,则跳过下一条指令。
BTFSC:测试文件寄存器中的某个位,如果位为1,则跳过下一条指令。
5.字节操作指令
字节操作指令用于对字节进行操作。常见的字节操作指令包括:
CLRF:清除文件寄存器中的内容。
CLRW:清除W寄存器中的内容。
CLRWDT:清除看门狗定时器。
您可能关注的文档
- Siemens 系列:S7-200 系列_(51).代码优化.docx
- Siemens 系列:S7-200 系列_(52).调试技巧.docx
- Siemens 系列:S7-200 系列_(53).错误处理.docx
- Siemens 系列:S7-200 系列_(54).S7-200安全与防护.docx
- Siemens 系列:S7-200 系列_(55).硬件安全措施.docx
- Siemens 系列:S7-200 系列_(56).软件安全措施.docx
- Siemens 系列:S7-200 系列_(57).网络安全措施.docx
- Siemens 系列:S7-300 系列_(2).硬件架构与模块介绍.docx
- Siemens 系列:S7-300 系列_(3).CPU模块功能解析.docx
- Siemens 系列:S7-300 系列_(4).I-O模块选择与配置.docx
- 2025冶金工业技能鉴定高分题库附答案详解【培优】.docx
- 2025甘肃省公务员行测附参考答案详解【能力提升】.docx
- 2025年上海市公务员行测真题含答案详解(培优A卷).docx
- 2025年伊犁州公务员行测真题带答案详解(B卷).docx
- 安全生产法律法规考试(四十八)(带答案A3带密封线紧凑页面下载打印就用).doc
- 电梯安全管理员考试(四十八)(带答案A3带密封线紧凑页面下载打印就用).doc
- 2025阿拉善盟公务员行测附参考答案详解【突破训练】.docx
- 2025年锡林郭勒盟公务员行测及参考答案详解【突破训练】.docx
- 2025年辽宁省公务员行测含完整答案详解(有一套).docx
- 2025年银川市公务员行测含完整答案详解(有一套).docx
最近下载
- 《化学前沿与创新》课程教学大纲.docx VIP
- 北京城市学院教师招聘考试真题2022 .pdf VIP
- 提高领导干部决策水平的演讲稿.pptx VIP
- 五年级暑假个人学习计划.pptx
- 2024年黑龙江省大庆市中考地理试题卷(含答案解析).docx
- 《Power-BI-数据分析与可视化》第四章-DAX语言数据建模.pptx
- 2025年春季学期国家开放大学《毛泽东思想和中国特色社会主义理论体系概论》终考任务二:大作业试卷3参考作答.docx VIP
- 贵州省贵阳市2023-2024学年八年级下学期7月期末历史试卷(含答案).docx VIP
- 现行市政工程规范大全.pdf VIP
- 视觉定位PPT课件.pptx VIP
文档评论(0)