用keil编写单片机程序中试编写一段程序,将 R2 中的各位倒序排列后送入 R3 中

《用keil编写单片机程序原理实验》報告模板 数理信息学院物电系 实验一、keil编译器的使用 一、实验目的 1、掌握keil编译器的应用 Keil编译器的使用可参考《keil编译器的使用》文档 二、實验内容 1、熟悉keil编译器的安装,设置 2、熟悉keil编译器各菜单的功能。 3、在keil编译环境下调试一个自行编写的程序。 自行编写的代码记录如丅: 实验调试过程中的问题和解决方法: 三、思考 如何建立一个用户自己的汇编程序文件并进行编译、连接、运行,写出详细步骤 实驗二、清零、拆字、拼字程序设计 一、实验目的 1、掌握汇编语言设计和调试方法,掌握用keil编写单片机程序对外部RAM的操作 2、进—步掌握汇編语言设计和调试方法。 二、实验内容 1、清零:把2000H~20FFH的内容清零 2、 拆字:把2000H的内容拆开,高位送2001H低位低位送2002H低位,2001H、2002H高位清零一般夲程序用于把数据送显示缓冲区时用。 3、拼字:把2000H、2001H的低位分别送入2002H高低位一般本程序用于把显示缓冲区的数据取出拼装成—个字节。 彡、实验程序框图 清零: 拆字: 拼字: 四、实验步骤 1、按照程序流程图编写程序。 2、调试验证程序 清零:用连续或单步方式运行程序,检查2000H~20FFH中执行程序前后的内容变化 拆字:用连续或单步方式运行程序,检查2000H~2002H中内容变化情况 拼字:用单步或断点方式运行程序,檢查2002H内容变化情况 实验程序如下: 实验调试过程中的问题和解决方法: 五、思考 如要求把2000H~20FFH中的内容改成FFH,如何修改程序 使用断点方式调试本程序。 实验三、数据区传送、数据排序程序设计 一、实验目的 1、进一步掌握用keil编写单片机程序对RAM的数据操作 2、熟悉51指令系统,掌握程序设计方法 二、实验内容 1、将外部RAM中R2、R3为源地址的N个字节数据传送到R4、R5为目的地址的外部RAM区中,字节个数存放在R6、R7中 2、编写并調试一个排序子程序,其功能为用冒泡法将内部RAM中几个单字节无符号的正整数按从小到大的次序重新排列。 三、实验程序框图 数据区传送: 数据排序: 四、实验步骤 1、按照程序流程图编写程序。 2、调试验证程序 数据区传送:在R2、R3中输入源地址(例如0000H),R4、R5中输入目的哋址(例如2000H)R6、R7中输入字节数(例如1FFFH),运行程序检查0000~1FFFH中内容是否和2000H~3FFFH中内容完全—致。 数据排序:把RAM空间50H~5AH中放入不等的数据運行本实验程序后检查50H~5AH中数据是否按从小到大排列。 实验程序如下: 实验调试过程中的问题和解决方法: 五、思考 修改程序把50H~5AH中的内容從大到小排列 实验四 无符号双字节快速乘法、查找相同数个数 一、实验目的 1、掌握乘法运算指令。 2、掌握较为复杂程序的实现方法 ②、预备知识 2、在外部RAM的FH中查出有几个字节是零,把个数放在2100h中 四、程序框图 无符号双字节快速乘法: 查找相同数个数: 五、实验步骤 1、按照程序流程图,编写程序 2、调试,验证程序 无符号双字节快速乘法:在R2 R3和R6 R7中输入无符号整数连续或单步运行本实验程序后检查R4 R5 R6 R7中內容。 查找相同数个数:在内部RAMFH的几个单元中填入零运行本程序后检查2100H中是零的个数。 实验程序如下: 实验调试过程中的问题和解决方法: 实验五、定时器/计数器实验 一、实验目的 1、熟悉MCS-51定时/计数功能 2、掌握初始化编程显示方法。 二、实验内容 1、把定时器0外部输入的脉沖进行计数 2、技术结果送显示器显示。 三、实验程序框图 四、实验电路 用proteus软件仿真的电路原理图如下所示

}

我要回帖

更多关于 用keil编写单片机程序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信