这个程序使用了中断方式编写串行口输入/输出程序,它的功能是将接串行口收到的字 符回送,即再通过串行口发送出去。

正确输入源文件、建立工程、编译连接没有错后,可进行调试,使用 Keil 自带的串行

窗口测试功能是否正确,如果正确,可以进行下一步的连机试验。

为简单实用,我们不借助于其它的硬件,而是让 PC 机上的两个串口互换数据,即 COM1 发送 COM2 接收,而 COM2

发送则由 COM1 接收,为此,需要做一根连接线将这两个串口 连起来,做法很简单,找两个可以插入 PC 机串口的 DIN9

插座(母),然后用一根 3 芯线将 它们连起来,连线的方法是:

2——3

3——2

5——5

接好线把两个插头分别插入 PC 机上的串口 1 与串口 2。找一个 PC 机上的串口终端调

试软件,如串口精灵之类,运行该软件,设置好串口参数,其中串口选择 2,串口参数设置 为:

19200,n,8,1 其含义是波特率为 19200,无奇偶校验,8 位数据,1 位停止位。 在 Keil 调试窗口的

command 页中输入:

>mode com1 19200,0,8,1

>assign com1

sout

注意两行最前面的“>”是提示符,不要输入,第二行中的“”即“小于”和

“大于”符号,中间的是字母“s”和“input”的前两个字母,最后是字母“s”和“output” 的前三个字母。

第一行命令定义串口 1 的波特率为 19200,无奇偶校验,8 位数据,1 位停止位。第二 行是将串口

1(com1)分配给串行窗口。

全速运行程序,然后切换串口精灵,开始发送,会看到发送后的数据会立即回显到窗口 中,说明已接收到了发送过来的数据。切换到

uVison,查看串行窗口 1,会看到这里的确接 收到了串口精灵送来的内容。

2、从端口送入信号

程序调试中如果需要有信号输入,比如数据采集类程序,需要从外界获得数据,由于 Keil

的调试完全是一个软件调试工具,没有硬件与之相连,所以不可能直接获得数据,为此 必须采用一些替代的方法,例如,某电路用 P1

口作为数据采集口,那么可以使用的一种方 法是利用外围接口,打开 PORT 1,用鼠标在点击相应端口位,使其变为高电平或低电平,

就能输入数据。显然,这种方法对于要输获得数据而不是作位处理来说太麻烦了,另一种方 法是直接在 command 页输入

port1=数值,以下是一个小小的验证程序。例 7:

LOOP: MOV A,P1

keil 4c语言 百度经验,Keil教程(4)相关推荐

  1. keil c语言pdf,Keil软件“C语言”与“汇编”混编 —— 相关知识整理.pdf

    Keil软件"C语言"与"汇编"混编 -- 相关知识整理.pdf Keil 软件软件C 语言语言与与汇编汇编混编混编 相关知识整理相关知识整理 用 Keil 在 ...

  2. keil 4c语言读写寄存器,【STM32单片机学习】第四课:GPIO控制LED(用寄存器编程)

    [朱老师课程总结] 第一部分.章节目录 第二部分.章节介绍 3.5.1.STM32的GPIO模块数据手册详解1 本节讲解STM32数据手册中GPIO模块相关的部分,主要是GPIO的各类模式及其配置方法 ...

  3. keil c语言浮点数,Keil MDK浮点数支持不正常的解决方案

    在调用printf调试浮点数的时候,在内存中表示正确,但是打印数据就都为0.00,其他整形数据表示正常. 经查资料得知,浮点数要求堆栈八字节对齐导致,如果系统的默认堆栈不是八字节对齐的一定会出现此问题 ...

  4. Keil C51软件的使用教程

    keil uvision2 C51软件我们在前面有所介绍,是目前功能最强大的单片机c语言集成开发环境,如果您没有此软件可以从这里下载:http://www.51hei.com/keil%CF%C2%D ...

  5. Keil(MDK-ARM-STM32)系列教程(四)工程目标选项配置(Ⅱ)

    Ⅰ.写在前面 本文接着上一篇文章"工程目标选项配置(Ⅰ)"进行讲述工程目标选项中后五项的配置,也就是C/C++.Asm.Linker.Debug.Utilities这五项配置的具体 ...

  6. Keil(MDK-ARM-STM32)系列教程(八)在线调试(Ⅰ)

    Ⅰ.写在前面 Keil在线调试的内容有很多,本文带来在线调试常用的内容:Debug Toolbar调试工具栏(复位.全速运行.停止运行.单步调试.逐行调试.跳出调试.运行到光标行.跳转到暂停行.调试窗 ...

  7. Keil(MDK-ARM-STM32)系列教程(七)菜单

    Ⅰ.写在前面 本文带来关于Keil软件菜单的内容,系列教程中前面讲述的内容都可以通过菜单而找到,只是大部分内容都可以通过快捷按钮或快捷键找到,该文就讲述主菜单里每一个子菜单的内容. Keil有些菜单在 ...

  8. Keil(MDK-ARM-STM32)系列教程(六)Configuration(Ⅱ)

    Ⅰ.写在前面 本文接着上一篇文章"Configuration(Ⅰ)"进行讲述Configuration后面三项Shortcut Keys快捷键.Text Completion代码完 ...

  9. keil c语言中断怎么写,如何利用keil C实现单片机中断功能

    直接访问寄存器和端口 定义 sfr P0 0x80 sfr P1 0x81 sfr ADCON; 0xDE sbit EA  0x9F 操作 ADCON = 0x08; P1 = 0xFF; io_s ...

  10. Keil(MDK-ARM)系列教程(八)_在线调试(Ⅰ)

    推荐 分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuang 我的网站:h ...

最新文章

  1. 关于 Git 提交这些规范,你都遵守了吗?
  2. delphi7aes加密解密与java互转_惊呆了!不改一行Java代码竟然就能轻松解决敏感信息加解密|原创
  3. 文件系统管理 之 Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍...
  4. 一起搞清楚 Spring Security 中的 UserDetails
  5. OpenCV使用Laplacian filtering和距离变换以及Laplacian滤波对重叠对象进行分段的实例(附完整代码)
  6. 【Python】Flask框架系列(一):安装、页面跳转/重定向、模板、逻辑语句、过滤器、继承/使用block、url链接/加载静态资源
  7. LeetCode 269. 火星词典(拓扑排序)
  8. 匿名内部类 java 1614965228
  9. 九度笔记之 1209最小邮票数
  10. java取整数位_java获取整数的各位数值
  11. 敏捷宣言和背后的原则 (Agile Manifesto and the principles behind)
  12. 【Java】@ResponseBody 返回JsonObject
  13. 高德地图与百度地图的经纬度偏差纠正
  14. 将连接MySQL数据库的java项目程序打包成为.jar格式
  15. 互动大屏,unity透明视频的实现方法:
  16. WIN7计算机如何清除碎片文件,win7怎么清理磁盘碎片 win7磁盘碎片整理打不开怎么办...
  17. 怎么样用云服务器进行深度学习
  18. Python调用高德地图API测距
  19. 使用Kaiju无组装计算宏基因组数据物种注释相对丰度
  20. 【思前享后】区块链架构与特点

热门文章

  1. 哈理工OJ 1184 早起一水(水题)
  2. 扫雷游戏(实现了网页版的扫雷游戏的所有逻辑)
  3. java网页版斗地主_JAVA控制台版斗地主
  4. axure rp pro 8.0 中文+破解补丁 v8.0.0.3333专业版
  5. 深度学习笔记(十一)--读李宏毅《1天搞懂深度学习》
  6. Javaweb网易云音乐
  7. 【汇编语言】DOSBox教程
  8. 数学建模:Leslie离散人口发展模型
  9. idea 谷歌翻译
  10. 谷歌浏览器无法登陆_论坛上传图片后自动退出登陆?你不是一个人,原因及解决方法来了...