推荐阅读最新更新时间:2024-03-16 16:20
利用VSPD、串口调试助手、Keil做串口调试
下面详细介绍下如何用虚拟串口调试串口发送接收程序。 需要用到三个软件:KEIL、VSPD XP5(virtual serial ports driver xp5.1虚拟串口软件)、串口调试助手(个人感觉2.1比较好用)。 1、首先在KEIL里编译写好的程序。 2、打开VSPD,界面如下图所示: 左边栏最上面的是电脑自带的物理串口。点右边的add pair,可以添加成对的串口。一对串口已经虚拟互联了,如果添加的是COM3、COM4,用COM3发送数据,COM4就可以接收数据,反过来也可以。 3、接下来的一步很关键。把KEIL和虚拟出来的串口绑定。现在把COM3和KEIL绑定。在KEIL中进入DEBUG模式。在最下面的C
[单片机]
Keil C51 的printf
在Keil C51 中使用printf ,首先需要重新实现 putchar(char c)函数。此函数在 char putchar (char c) { ES=0; SBUF = c; while(TI==0); TI=0; ES=1; return 0; } 我们先分析一下上面这个程序哈, 关闭串口中断 发送单字节数据 等待发送完毕 清除TI标志 开启串口中断 在main函数里可以直接使用printf函数进行输出了。 但是,我一直存在这样一个疑惑: void main() { unsigned char test1 = 55; printf( the
[单片机]
N76E003 工程创建教程
一、准备工作: 1、下载编译工具keil c51 2、下载N76E003提供的 板级支持包(BSP),可到 nuvoton上下载 二、开发环境搭建 1、安装keil c51,然后和谐。。。不能随便发链接所以软件需要自己网上找一下,很多。 2、安装N76E003 keil支持包Nuvoton_8051_Keil_uVision_Driver_v2.00.6561.exe(在N76E003提供的 板级支持包(BSP)中),这样可以在keil 的device中找到N76E003 3、安装nu-link驱动 NuMicro NuLink Command Tool 2.00.6561.exe(在N76E003提供的 板级支持包(BSP)
[单片机]
Keil5中常见错误总结
..\OBJ\HZ.axf: Error: L6218E: Undefined symbol EXTI_ClearITPendingBit (referred from stm32f10x_it.o). 意思是EXTI_ClearITPendingBit 是未定义的标识符( Undefined symbol ),referred from stm32f10x_it.o意思是在stm32f10x_it.o文件里参考。 该错误常见的原因就是定义该标识符的C文件没有包含进工程,可能是.c文件在工程里,但是相关头文件没有写,也有可能是头文件写了也声明了,但是.c文件不在工程里,这个是十分容易被遗忘的,很有可能找了很久也找不到。下面
[单片机]
STM32CubeMX(Keil5)开发之路——8Flash读写
运行环境 Windows10 STM32CubeMX___Version 5.0.0 Keil5(MDK5)___Version 5.15 简介 本例程主要讲解如何对芯片内的Flash进行读写,用芯片内部Flash可以对一些需要断电保存的数据进行保存,无需加外部得存储芯片,本例程采用的是STM32F103ZET6,512K大小的Flash。 STM32CubeMx基本配置 基础配置过程请参考 STM32CubeMx(Keil5)开发之路—配置第一个项目 printf重定向例程请参考 STM32CubeMx(Keil5)开发之路——3发送USART数据和printf重定向 代码修改 1——选择main.c文件 2——添加全局
[单片机]
谈谈Keil 中C51的内存分配与优化
看到这篇C51的内存分配和优化的文章,个人觉得分析的十分到位,在这里转给大家 C51的内存分配不同于一般的PC,内存空间有限,采用覆盖和共享技术。在Keil编译器中,经过编译后,会形成一个M51文件,在其内部可以详细的看到内存的分配情况。 C51内存常见的两个误区: (1) 变量超过128字节后必须用COMPACT模式。 其实,只要不超过256字节,都可以用SMALL模式 (2) 内部RAM,128字节以上的是SFR用,不给程序用。 其实,由于C51寻址的不同,高128字节也可以用来存储变量,虽与SFR地址相同,但寻址的方式不同。 下面通过几个程序来看内存的分配。 *************************
[单片机]
Keil MDK3.20的stm32调试方法
1. 程序在RAM中运行 要点: (1)程序的下载地址改到RAM空间中 (2)程序的debug之前要设定SP,PC指针到Ram空间 新建工程,选择STM32 的具体型号,我买的万利的开发板,选择stm32f103Vb。 设定程序下载地址,如下图所示,IROM1的地址指向了STM32的ram空间。 空间大小如何分配取决于自己的需求。本款处理器内部ram大小为20K,分配16K给只读区,4K给可读可写区。这样IROM设定的大小为0x4000,IRAM1的起始就变为0X20004000,大小只剩下0X1000。 Debug标签选择ULINK1 Cortex Debugger(软件采用yjgyiysbCC兄crack方
[单片机]
Keil C51中对双数据指针的支持情况及代码生成
在8051体系中,数据指针DPTR作为一个特殊的16位寄存器,用于寻址64 KB的XDATA或CODE空间,通常它被当作一个16位指针,指向一个常数表。双数据指针可以改善同时有两个16位指针使用时的性能。作为一种增强特性,有许多8051派生型器件支持双数据指针。以宏晶科技STC89系列的产品为例,DPTR被增强为DPTR0和DPTR1两个,仍然使用原来的地址,用另外一个SFR AUXR1的0位DPS来切换。当DPS位为0时,所有对DPTR的操作使用DPTR0;当DPS位为1时,所有对DPTR的操作使用DPTR1。这样,通过一个简单的INC AUXR1指令,就可以来回切换两个数据指针。 1 Keil C51对双数据指针的支
[单片机]