单片机嵌入式笔记
文章平均质量分 58
单片机、嵌入式相关笔记
Cc1924
这个作者很懒,什么都没留下…
展开
-
IMU相关概念
文章目录1.误差与分辨率的概念区分2.ADC量程与分辨率3.什么是LSB4.参数实例:MPU60504.加速度的方向问题1.误差与分辨率的概念区分 以使用尺子测量长度为例:误差就是指尺子准不准,使用它测量出 10 厘米,与计量机构标准的 10 厘米有多大区别。若区别在 5 毫米以内,我们则称这把尺子的误差为 5 毫米。而分辨率是指尺子的最小刻度值,假如尺子的最小刻度值为 1 厘米,我们称这把尺子的分辨率为 1 厘米。它只能用于测量厘米级的尺寸,对于毫米级的长度,这就无法用这把尺子进行测量了。如果把尺原创 2021-10-24 21:14:38 · 1962 阅读 · 1 评论 -
MPU6050/ICM20608寄存器笔记
文章目录0.前言1.MPU6050/ICM20608相同的重要寄存器1.电源管理寄存器12.电源管理寄存器23.加速度计配置寄存器4.FIFO使能寄存器2.MPU6050/ICM20608相同但有区别的重要寄存器1.陀螺仪配置寄存器1.MPU60502.ICM206082.陀螺仪采样率分频寄存器1.MPU60502.ICM206083.配置寄存器1.MPU60502.ICM206084.ICM多出来的加速度配置寄存器23.初始化总结1.ICM206082.MPU60500.前言 在使用MPU6050原创 2021-10-24 21:13:04 · 4728 阅读 · 0 评论 -
STLink-V2输出3.3V给单片机供电并下载程序
1.硬件设备如图所示的STLink下载器,一般这种大的都是正版的。2.硬件连线如图所示为STLink的接口图中1234一般就是接到最小系统板的对应引脚上,比如常见的blue pill STM32F103C8T6最小系统板的四个下载引脚。但是注意,这里的1脚TVCC是用来检测目标板的电压的,而不是供电的。也就是这是个输入引脚而不是输出引脚。所以如果这时候想要给单片机下载程序就需要在额外供电3.3V,这就比较麻烦了。实际上,STLink上也具有3.3V输出的引脚,也就是19脚。有的图中可能标的是5原创 2021-05-20 22:03:59 · 11709 阅读 · 4 评论 -
STM32Duino 下载 https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.jso
1.官方参考wiki2.在第2步这里就出现了错误,也就是标题所报的下载.json文件失败3.科学冲浪使用PAC模式,仍旧下载失败。切换手机热点,还是失败。最后测试科学冲浪使用全局模式,下载成功。4.其他资料看到一个比较好的资料,也很新,应该可以解决这个问题,我没试。Arduino Board Manager stm32duino下载失败的解决方法...原创 2021-05-15 13:29:08 · 1672 阅读 · 0 评论 -
Arduino烧录程序出现avrdude: stk500_getsync() attempt x(1-10) of 10错误
1.问题在使用最普通的Arduino UNO用USB烧写通过串口烧写程序时,本来很正常可以使用的,但是突然烧录就一直出现以下错误:avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x4davrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x4favrdude: stk500_getsync() attempt 3 of 10: not in sync: r原创 2021-05-15 11:17:18 · 20862 阅读 · 7 评论 -
使用J-Link的J-Scope功能查看数据实时波形
0.前言0.1.参考资料Jlink使用技巧之J-Scope虚拟示波器功能0.2.使用串口打印波形的不便之处对于要查看的实时变量,一般可以用串口打印到可以查看波形的上位机上。但是这种办法有几个不方便的地方:需要根据配套上位机的通讯协议,在单片机上编写上传数据的代码单片机CPU需要浪费部分时间在串口数据上传上对于很高频率的变量,比如IMU的数据,可能上传速率会达到200HZ,也就是5ms上传一次。单片机这边仅测试,上传数据应该没问题。但是此时上位机上由于并不是响应很快的RTOS系统,可能会导致部原创 2021-05-12 15:08:30 · 3544 阅读 · 3 评论 -
Keil警告:warning: #223-D: function “xxx“ declared implicitly解决
原因:这种情况下很可能是头文件的预定义声明重复了。比如写了两个LED文件,一个是LED1.c,另一个是LED2.c。他们俩都是从LED.c移植过来的,然后头文件忘了修改,里面的预定义都是#ifndef __LED_H_#define __LED_H_ ........#endif这时候如果在在main.c中包含头文件时,先包含了LED1.h,后包含了LED2.h,在头文件预定义防止重复包含的作用下,就会导致LED2.h中的函数和变量声明失效,从而导致上面的警告。同理,如果先包含了LED2h,原创 2021-03-27 19:16:58 · 41046 阅读 · 6 评论 -
Altium Desinger搜索并添加3D模型、导出3D模型到SolidWorks
寻找AD的3D模型:https://blog.csdn.net/sinat_25400221/article/details/92783258解决导入AD的3D模型全是白色:https://blog.csdn.net/shuiyihang0981/article/details/104942192将下载的STEP模型导入AD:https://blog.csdn.net/quinn1994/article/details/88963787AD导出3D模型到Solidworks: ht..原创 2021-04-17 18:40:46 · 660 阅读 · 0 评论 -
Arduino Atmega328P烧写bootloader及熔丝
文章目录0.前言1.硬件配置2.烧录步骤2.1.安装AVRDUDESS软件2.2.检测MCU2.3.烧录bootloader2.3.烧录熔丝0.前言 买到的新的Atmega328P芯片,需要对其烧录bootloader和熔丝才能正常使用,此处记录我烧录的过程。 参考资料11.硬件配置AVR下载器,如图:Atmega328P最小系统,且留出ISP接口,即5V,MISO,MOSI,SCK,GND,RESET连接AVR和Atmega328P的相应引脚其中,AVR下原创 2021-04-15 21:53:57 · 14750 阅读 · 8 评论