【基于DAVE的英飞凌XMC4200的RS485通讯】

设备明细:

单片机:英飞凌开发板XMC4200 Platform2Go;
开发软件: DAVE;
测试设备:示波器。

调试PIN

TX: PIN 2.14

接线

TX PIN 2.14:接示波器信号端
GND:接示波器地端
Debug口USB:接电脑端USB口

DAVE

新建项目

在这里插入图片描述
在这里插入图片描述

选择对应的板子型号

在这里插入图片描述

添加APP

在这里插入图片描述
添加完之后的界面如下
在这里插入图片描述

rename the added APP

右击UART_0 ----> Rename instant label
在这里插入图片描述
在这里插入图片描述
改完名之后显示如下
在这里插入图片描述

配置PIN

右击UART,选择Manual PIN Allocator
在这里插入图片描述
Receive PIN 配置为P2.15,
Transmit PIN 配置为P2.14。
其实重要的是Transmit PIN,因为现在我没有RS485的 transceiver,所以还没有办法与其他设备通信。
在这里插入图片描述

生成代码

在这里插入图片描述
点开项目文件夹 testRS485 —> DAVE —> Generated —> UART,可以看到生成的代码
在这里插入图片描述

打开main.c,编写代码

在这里插入图片描述

/*
 * main.c
 *
 *  Created on: 2023 Aug 07 12:51:00
 */


#include "DAVE.h"                 //Declarations from DAVE Code Generation (includes SFR declaration)

/**

 * @brief main() - Application entry point
 *
 * <b>Details of function</b><br>
 * This routine is the application entry point. It is invoked by the device startup code. It is responsible for
 * invoking the APP initialization dispatcher routine - DAVE_Init() and hosting the place-holder for user application
 * code.
 */

int main(void)
{
	  DAVE_STATUS_t status;
	  uint8_t send_data[8] = {0, 0x55, 0, 1, 0, 1, 0, 1};

	  status = DAVE_Init();           /* Initialization of DAVE APPs  */

	  if (status != DAVE_STATUS_SUCCESS)
	  {
	    /* Placeholder for error handler code. The while loop below can be replaced with an user error handler. */
	    XMC_DEBUG("DAVE APPs initialization failed\n");

	    while(1U)
	    {

	    }
	  }

	  /* Placeholder for user application code. The while loop below can be replaced with user application code. */
	  while(1U)
	  {
		  /* Transmit the message */
		  UART_Transmit(&RS485, send_data, sizeof(send_data));
	  }
}

编译

在这里插入图片描述
编译完成界面
在这里插入图片描述

调试

将板子通过调试端口USB与电脑连接
在这里插入图片描述

点击debug按钮
在这里插入图片描述
选择调试器
在这里插入图片描述
在这里插入图片描述
调试界面
在这里插入图片描述
选择上图按钮可让程序一直跑。

测试结果

  1. 通过示波器测量TX pin 端发出的信号,图中白线是GND, 粉线是TX P2.14

在这里插入图片描述

  1. 示波器端波形
    在这里插入图片描述

参考资料

大家可以去英飞凌官网查找资料 Infineon product training

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

六月悉茗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值