
嵌入式
文章平均质量分 61
爱写代码的猫
目前在一家科技公司做嵌入式开发,分享内容包括但不限于编程技术、单片机、硬件等。欢迎一起交流,互相学习。
展开
-
如何对单片机程序进行加密(防止别人破解)
本文主要介绍两个方法防止别人从单片机中获取程序。一、通过STM32 ST-Link Uility开启单片机fash读保护。二、程序上面通过单片机ID号将程序进行绑定,从而达到加密程序的左右。也讲述了使用STM32 ST-Link Uility解锁STM32被锁的问题。原创 2024-09-03 23:26:11 · 3880 阅读 · 0 评论 -
STM32外部中断(总结了易出现的BUG)
本文主要讲述了,本人在使用STM32F103C8T6做项目时,使用到按键触发外部中断时,发现无法触发外部中断。通过查看寄存器找出问题的过程,并总结了出现该问题的原因。原创 2024-09-01 21:58:17 · 2895 阅读 · 0 评论 -
GPIO基本原理(STM32)
一、GPIO基本结构二、GPIO 8种工作模式一、输入浮空/上拉、下拉模式当配置为输入模式时:1、输出被禁止2、施密特触发器被激活3、对输入寄存器访问可获取IO状态4、配置为浮空输入模式时,上下拉电阻都断开;配置为上拉模式时,上拉电阻被连接;配置为下拉模式时,下拉电阻被连接。二、模拟输入当IO口被设置成模拟输入时:1、输出缓冲器被禁止2、施密特输入触发器被禁止3、弱上下拉被禁止4、读取输入寄存器的值为0三、开漏/推挽...原创 2021-11-29 16:52:50 · 959 阅读 · 0 评论 -
循迹黑线和红线的区别
以前我们做一些循迹的项目基本都是循迹黑线。一般都是用红外对管,相比其他循迹方案它具有简单、稳定、不容易受光线影响等优点。厉害的大佬都是用摄像头,摄像头有它无法比拟的优点,但是入门难度大,需要前期有一定的研究。这次循迹的是红线,我们起初的方案是使用红外对管(带ADC的)循迹红线,后面发现红外对管无法区分红线和白线,红外对管只能用来循迹黑线。1、改用openMV识别红线,具体代码我就不贴出来了,因为openmv循迹官网有具体的例程,只要适当修改和训练就行了。我们最终的方案是采用openmv来识别红线。原创 2021-11-23 10:58:13 · 5269 阅读 · 1 评论 -
RS485通信接口
简介:RS-485是美国电子工业协会在1983年批准的一个新的平衡传输的标准。RS是推荐标准,485是标识号。RS-485又名TIA-485-A, ANSI/TIA/EIA-485或TIA/EIA-485,但我们仍继续使用RS-485来称呼。半双工通信:接收的时候不能发送,发送的时候不能接收。接收和发送不能同一时刻发生。RS485采用差分信号负逻辑差分信号:传输信号时两根信号线的电压差负逻辑:输入的逻辑1,输出逻辑0。输入逻辑与输出逻辑始终相反。逻辑电平:+2v~+6v表示逻辑0,-原创 2021-11-22 13:04:59 · 3035 阅读 · 0 评论 -
RS232与TTL电平的区别
RS23S通信接口简介: RS表示推荐标准,232是标识号。RS232接口个人计算机上的通讯接口之一,是一种串行通信接口,由电子工业协会(Electronic Industries Association,EIA) 所制定的串行通信的标准,主要方便不同设备之间的通信。通常 RS-232 接口以9个引脚(DB-9) 或是25个引脚 (DB-25) 的型态出现,对每个引脚的信号内容加以规定,还对信号电平加以规定。但是工业控制的RS232接口一般只使用RXD、TXD、GND三条线。...原创 2021-11-21 23:39:34 · 5799 阅读 · 0 评论 -
报错 implicit declaration of function “ “ is invalid in C99
我在做一个项目时,发现编译后没有错误也没有警告,但是代码中有如下图中红色的错误。并且初始化代码并没有错误。,说明是找不到这个函数,那么可能是函数没有声明,应该是.h文件中出了问题。发现下面红圈内的重名了。出现下面这种warning。原创 2021-11-08 10:35:10 · 12283 阅读 · 0 评论 -
单片机串口不够用怎么办?
扩展串口一、为什么要扩展串口?一块单片机的串口是有限的,一般2~4个。当我们做一个项目时需要连接多个外设时跟单片机通讯时,且通讯都是以串口形式。那么我们只能去扩展串口来满足我们的应用需求。二、解决方法1、选择拥有更多UART芯片。2、外部添加接口转换芯片。SP2538芯片,它可轻松的将任意单片机(如89C51)或DSP等现有的RS232串口扩展成5个全新的全新的全双工RS232串行口(所有串口可独立接收数据),具体使用可查询芯片手册。3、选择RS485的外设代替RS232外.原创 2021-10-24 21:26:03 · 12088 阅读 · 0 评论 -
MCU、MPU、DSP、FPGA是什么意思
MCU 物控制单元(MkroControllerUnit,Мcu),是把中央处理器(CentralProcesИUnit:cPU)的频率与规格做适当缩减,并将内存(memory )、计数器(Timer ),USB,A/D 转换,UART,DMA,LCD等周边接口都整合在单一芯片上,形芯片级计算机。俗称单片机,之所以称之为单片机(iSimgleChipMicr).是因为为不同于其它处理器,它将各种外设资源集成到一块芯片上,这个芯片就是一个完整...原创 2021-10-01 17:23:26 · 2230 阅读 · 0 评论 -
CCS编译器 报 error: expected a “)“ 的错误
使用CCS 进行m430f5529的开发过程中,编译器报error: expected a “)” 的错误。当时以为是自己少了括号,但是认真检查后发现无误,经过反复的尝试,发现只要函数的输入参数为N时就报错,经过在网上搜索资料,给出的回答是宏定义与函数的参数同名了。后面为方便找出错误,我直接新建了一个新工程,但是发现输入函数为的参数为N还是报错最终发现,msp430f5299的底层的代码宏定义了解决办法,修改入口参数名,我将N改成了n 就没有错误了...原创 2021-07-31 12:05:53 · 6888 阅读 · 3 评论 -
STM32最小系统搭建(原理图)
下面主要介绍STM32F103c8t6单片机最小系统的外围电路的搭建,这款芯片是入门学习stm32单片机非常值得推荐的芯片。具有性能强大,价格便宜,市面上现成的最小系统开发板也就20块钱左右。虽然单片机内部集成了很多外设,但是它不是直接上电就能使用的,需要一些外围电路来辅助它工作,例如复位电路、时钟电路、下载电路等。原创 2021-10-08 11:20:49 · 52842 阅读 · 9 评论 -
keil5新建工程(图解)
本文主要介绍keil5新建stm32工程的教程,主要以STM32F103C8T6为例,全程手把手图解教程,非常详细。原创 2021-10-07 20:56:02 · 36951 阅读 · 3 评论 -
麦克纳姆轮PID控制原理
麦克娜姆轮是一种常见的全向轮,本文主要介绍了麦克娜姆轮的组成、运动分析和运动控制算法。原创 2021-10-06 22:35:01 · 24182 阅读 · 9 评论 -
你的代码编写真的规范吗?
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言学校教会了我们如何写代码,但是却没有教会我们如何规范的书写代码。一份好的代码规范的代码给人第一感觉逻辑清晰,规范的代码也利于他人的阅读和后期的维护。下面介绍如何书写一份规范的代码。提示:以下是本篇文章正文内容,下面案例可供参考一、排版1、程序块尽量采用缩进风格编写,缩进的空格数为4 说明:...原创 2021-10-04 11:58:48 · 264 阅读 · 0 评论 -
MPU6050姿态融合解算(DMP)
mpu6050是一个六轴传感器包括三轴陀螺仪和三轴加速度,分别可以测得三轴的角速度、加速度。但是一般传感器的原始数据都不能直接直接拿来用,都需要滤波和姿态融合解算。对于初学者来说卡尔曼滤波和姿态融合解算有一定的难度。但是MPU6050芯片内自带了一个数据处理子模块DMP,已经内置了滤波算法,可以直接输出横滚角、航向角、偏航角。下面我们给出相应的基于stm32的DMP初始化代码,在项目中添加相应的文件就可直接使用。http://链接:https://pan.baidu.com...原创 2021-10-03 09:00:00 · 6218 阅读 · 5 评论