欢迎来到我的博客https://www.cnblogs.com/veis/

https://www.cnblogs.com/veis/p/14182037.html

随笔分类 -  单片机与嵌入式开发

单片机与嵌入式开发
摘要:概述 MCP4728有4个12位dac,无论用户需要什么电压设置。它可以将dac的设置存储到内部EEPROM中。一旦保存到内部非易失性内存中,当DAC启动时,将默认加载设置。MCP4728还允许用户在两种参考电压源之间进行选择。输入电压可以用来给V上电 (CC)引脚或内部的2.048V参考电压。如果 阅读全文
posted @ 2024-10-16 14:24 veis 阅读(901) 评论(0) 推荐(0)
摘要:通信协议解析库说明 一、概述 用于上位机串口通讯协议解析,协议格式:AA len type id data 校验 帧头(1byte) 长度(1byte) 协议类型(1byte) 命令ID(1byte) 数据(xbyte) 校验和(1byte) AA x x x x 异或校验和 固定帧头:0xAA 校 阅读全文
posted @ 2024-10-16 11:47 veis 阅读(188) 评论(0) 推荐(0)
摘要:LSM6DS3TH-C 6轴传感器驱动 说明 测试平台:STM32F4 使用说明: 在platform_ReadByte、与platform_WriteByte中实现对应平台的I2C读写操作接口 默认应用接口为弱定义,定义此USER_APP_INTERFACE宏定义可以开启示例的应用接口,用户可自定 阅读全文
posted @ 2022-04-16 13:15 veis 阅读(1518) 评论(1) 推荐(0)
摘要:STM32G0低功耗介绍 一、低功耗模式介绍 1、STM32G0按照分类可以分为4种模式 (1)sleep(sleep和low-power sleep)模式:功耗高,支持任意中断/事件唤醒 (2)stop(stop0和stop1)模式:功耗较低,支持任意外部中断和RTC闹钟唤醒 (3)standby 阅读全文
posted @ 2022-03-06 21:18 veis 阅读(3161) 评论(1) 推荐(1)
摘要:bootloader与app程序二进制可执行文件合并示例demo #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> #prag 阅读全文
posted @ 2022-02-27 22:08 veis 阅读(464) 评论(0) 推荐(0)
摘要:CH9121串口转以太网模块STM32驱动 0. 简介 CH9121 集成TCP/IP 协议栈,可实现网络数据包和串口数据的双向透明传输,具有TCPCLIENT、TCP SERVER、UDP 3 种工作模式,串口波特率最高可支持到921600bps,可通过上位机软件轻松配置,方便快捷。 下图为CH9 阅读全文
posted @ 2022-02-07 21:02 veis 阅读(2746) 评论(0) 推荐(2)
摘要:STM32内部Flash读写操作 硬件平台:以STM32F103C8T6为例 固件库SDK版本:HAL V1.8.3 1、内存映射介绍 (1)stm32的flash地址起始于0x0800 0000,结束地址是0x0800 0000加上芯片实际的flash大小,不同的芯片flash大小不同。 (2)R 阅读全文
posted @ 2021-08-02 01:52 veis 阅读(4633) 评论(1) 推荐(0)
摘要:单片机实现AT调试命令 实现目的 对于日常开发过程,我们经常需要借助串口调试设备,所以增加调试指令并且易于扩展是有必要的 思路 1、串口使用中断接收用户参数到接收缓冲区,定义0x0d作为结束标志 2、调用命令类型解析回调函数AT_DeviceHandle,对命令消息进行分流,然后进入指令类型解析函数 阅读全文
posted @ 2021-08-01 11:09 veis 阅读(935) 评论(0) 推荐(0)
摘要:说明 目前主要封装了串口1的实例,采用可移植数据类型,可以同步移植到STM32、STM8等单片机; 需自行实现串口接收回调函数内容; 欢迎各位指正并分享; 头文件 #ifndef __SERIAL_H__ #define __SERIAL_H__ #include <reg52.h> #ifndef 阅读全文
posted @ 2021-04-10 12:36 veis 阅读(229) 评论(0) 推荐(0)
摘要:1、源代码 #include "list.h" // 1、创建头结点 Node * CreateHeadeNode(void) { Node *pHead = (Node *)malloc(sizeof(Node)); pHead->m_pNext = NULL; return pHead; } / 阅读全文
posted @ 2020-05-18 21:49 veis 阅读(196) 评论(0) 推荐(0)
摘要:1、源代码 #include "queue.h" /** * [CreateQueue 创建一个队列] * @param nCount [队列的长度] * @return [队列指针] */ p_queue CreateQueue(uint32_t nCount) { p_queue p = mal 阅读全文
posted @ 2020-05-18 21:26 veis 阅读(483) 评论(0) 推荐(0)
摘要:再谈C语言宏定义 [toc] 简单的宏定义 1. 简单宏定义格式 关键字 define 标识符 需要符合C语言变量命名标准 替换列表 是一系列的C语言记号,包括标识符、关键字、数字、字符常量、字符串字面量、运算符和标点符号等(注意替换列表可以为空,即简单宏可以只包含[关键字]和[标识符])。 2. 阅读全文
posted @ 2020-05-17 23:51 veis 阅读(771) 评论(0) 推荐(0)
摘要:1.在新安装的MDK5.30下,默认使用v6版本的工具链,在定义全局变量时,提示了一些类似下面的警告 warning: no previous extern declaration for non-static variable 'in' [-Wmissing-variable-declaratio 阅读全文
posted @ 2020-05-09 01:18 veis 阅读(5863) 评论(0) 推荐(1)
摘要:TSIC506驱动程序及STC15F104W单片机模拟串口和重映射printf的实现。 阅读全文
posted @ 2020-03-13 14:43 veis 阅读(667) 评论(0) 推荐(0)
摘要:虚拟串口是计算机通过软件模拟的串口,当其它设计软件使用到串口的时候,可以通过调用虚拟串口仿真模拟,以查看所设计的正确性。本文就是主要介绍如何在proteus中搭建串口通讯电路,然后在PC中使用串口助手和proteus中的MCU进行通信。 阅读全文
posted @ 2020-03-04 02:30 veis 阅读(7418) 评论(1) 推荐(1)