4G以太网工业级DTU基础例程:01.LED闪烁

1、准备开发板

这里我选用了一块带以太网口插卡4G的DTU终端,可实现2G/3G/4G信号远距离数据透明传输通讯,以太网100Mbps有线传输通讯,通过工业RS232/485/422等接口直接连接设备进行无线远程传输。4G DTU在工业自动化上具有非常广泛的应用,而且具有传输数据量大,传输速度快,传输时延低,传输质量稳定的特点。弥补了NB模块传输速度慢、传输数据量少等缺点。尤其适合数据采集点分散、位置偏远、无人职守、有线通讯安装施工不便、成本高的行业,例如气象、环保、水利、电力、农业、交通、石油管线监控、城市管网监控、工业监控等,极大提高了数据通讯能力,节约人力物力成本,实现了数据通讯的跨越。

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

2、STM32CubeMX生成代码

在这里插入图片描述

搜索并选择芯片型号

在这里插入图片描述

配置系统时钟

在这里插入图片描述

配置Debug

在这里插入图片描述

配置GPIO

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

配置时钟树

STM32F103RE的最高主频可达到72M,最后使HCLK = 72Mhz即可:
在这里插入图片描述
在这里插入图片描述

生成工程设置

在这里插入图片描述

代码生成配置

在这里插入图片描述

生成代码

在这里插入图片描述

生成成功

在这里插入图片描述

3、在MDK中编写代码

在gpio.h中的用户代码区编写以下代码

/* USER CODE BEGIN Private defines */

typedef enum
{
    
	LED_OFF = 0,
	LED_ON,
	LED_Toggle
        
} LED_ENUM;

#define LED2_Set(status) status != LED_Toggle ? HAL_GPIO_WritePin( LED2_GPIO_Port, LED2_Pin, status != LED_ON ? GPIO_PIN_RESET : GPIO_PIN_SET): HAL_GPIO_TogglePin( LED2_GPIO_Port, LED2_Pin);	//利用define可以美化和简短我们的代码,知识点就用到了三目运算符的嵌套判断。

/* USER CODE END Private defines */

在main.c的main函数中编写以下代码

  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
    /* USER CODE BEGIN 3 */
	LED2_Set(LED_Toggle);	//翻转LED
    HAL_Delay(1000);		//延时1秒

/*   下面的代码等效于上面的代码  */
//  	LED2_Set(LED_ON);		//点亮LED
//  	HAL_Delay(1000);		//延时1秒
//  	LED2_Set(LED_OFF);		//熄灭LED
//  	HAL_Delay(1000);		//延时1秒
  }
  /* USER CODE END 3 */

编译工程

在这里插入图片描述

4、配置烧录器

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

5、烧录代码

在这里插入图片描述

6、实验现象

控制LED小灯每1秒钟闪烁一次。

7、技术交流群

群号:1005311419

8、淘宝链接

https://item.taobao.com/item.htm?id=632070883411

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值