自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

占毛毛

是这样的 理解一下

  • 博客(29)
  • 收藏
  • 关注

原创 open62541_arm_linux移植

open62541_arm_linux移植

2024-02-04 17:10:56 118

原创 ST MCSDK笔记

1.安装ST MCSDK 一定要安装最新版本(6.0以后),否则生成代码时会和Cubemx版本冲突,无法生成代码。2.选择FreeRTOS时,要在Cubemx的高级选项中使能允许新库,否则电机一转就报警,还瞎报警。3.速度要和时间匹配,否则速度报警。

2023-12-13 18:00:09 138

原创 协议笔记,

从站通过TPDO来返回应用数据,可以设置个周期,一直发TPDO即可,注意COBID要和主站的RPDO一样,发送类型要设置成异步(0xFE)。从站的Transmission_Type 设置为 1~10:主站要发SYNC(canid 为0x80)来触发从站TPDO。从站的Transmission_Type 设置为 远程帧触发(0xFC 0xFD):主站要发远程帧 IN要对上才能触发。发送时数据转义:遇到0X7E变成 0X7D 0X5E 遇到7D变成0X7D 0X5D。如果需要制定透传协议,按照以下规则制定。

2023-12-13 17:52:52 45

原创 BLE传输速率分析

BLE传输速率分析

2022-08-12 17:16:55 1922 1

原创 NXP BLE SOC低功耗模式调试总结

NXP BLE低功耗

2022-08-03 10:57:31 716

原创 功耗排查总结

低功耗控制

2022-07-01 15:42:26 234

原创 NXP串口高波特率踩坑记录

最近使用NXP9080MCU的串口,使用921600波特率通信,发现几个大坑,记录之~。坑1:波特率不准调试过程中发现,115200可正常通信,修改波特率为921600后出现各种问题。抓取波形后确定为MCU问题。遂查看datesheet:908x的串口时钟来源:外部或内部晶振->systemcore时钟->AHB->Flexcomm接口->USART 。这里较于其他MCU比较特殊的是有一个Flex接口,多通信方式接口(SPI I2C)。可通过配置FRG寄存器来获取更精确的波特

2021-12-31 10:51:21 5131

原创 基于NXP的蓝牙BLE协议栈代码分析

1.profile 规范。包含有service服务,如电量。2.service,每一个服务可能包含一个或多个特征值。3.characteristic 特征值。通信载体,电量为20%,20%即是特征值的value。主从机之间通信,通过读写特征值实现。4.UUID 统一识别码。刚才提到的service和characteristic,都需要一个唯一的uuid来标识。连接与通信过程中,用到协议栈这两层GAP 主要进行建立连接的过程,类似握手。GATT 传输的数据段通用规范。

2021-11-18 15:17:06 1504 2

原创 航顺HK32 芯片BUG文档

链接:https://pan.baidu.com/s/1Y0gSdlZ-otRBwX7rwE2ipg提取码:1234官网只有复制ST的数据手册,居然没有该重要文档,隐藏在论坛深处

2021-08-17 10:10:09 245

原创 VS+QT入门总结

VS扩展QT插件到 下载地址下载VS扩展插件

2021-08-10 19:28:54 1978

原创 Uboot启动流程

2021-06-17 17:07:08 86

原创 STM32F1串口最高波特率问题

查看datasheet,最高支持4.5M查看代码中波特率变量说明可以看到波特率取决于PCLKx,IntegerDivider,FractionalDivider即总线时钟,整数分频,小数分频。查看BRR寄存器这个地方的用词Mantissa应该不准确,Mantissa译为小数,这里其实是整数的分频配置。对于寄存器具体配置无需仔细查看,只要将波特率设置好即可。但在使用最高波特率时,要将总线时钟配置为最高72M。修改系统时钟时发现无法设置为72M 最大只能设置为64M,原因是没有开启外部高速时钟

2021-06-17 16:54:09 8800

原创 国产GD32开发问题总结

一.BOOT设置和STM32不一样,BOOT0需10K电阻下拉二.使用STM32CUBEIDE开发时,需要跳过ST的芯片型号检测:1.更改调试方法,点击Debug Configurations的调试器,在调试探头下选中“ST-LINK(OpenOCD)”2.找到芯片的配置文件:stm32f1x.cfg如果你的软件安装的是默认位置,那么应该在:C:\ST\STM32CubeIDE_1.3.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.debug.o

2021-04-07 09:48:16 6198 3

原创 STM32CUBEIDE的一个严重BUG

使用STM32CUBEIDE生成代码时,不能勾选否则IDE会直接卡死,并把工作空间所有的代码清空,后悔莫及。

2021-04-07 09:40:11 1181

原创 DSP入门

CMD文件的2大功能:1.指示存储空间2.分配段到存储空间一.MEMONY 指示存储空间{PAGE 0:程序存储空间PAGE 1:数据存储空间}二.RUN:定义输出段会在哪里运行的关键字

2021-04-07 09:29:48 1183

原创 CMSIS-RTOS手册

CUBEIDE生成的freeRTOS代码是经过CMSIS封装过的,与原版freertos有些许差异。如果用生成的代码还是得看CMSIS的手册https://arm-software.github.io/CMSIS_5/RTOS2/html/group__CMSIS__RTOS__Message.html#gaa515fc8b956f721a8f72b2c505813bfc...

2021-03-22 16:45:53 724

转载 裸机开发警钟

我们在程序开发过程中几个忌讳的问题:1、 delay(死等)这类函数应该只在实验室验证某个功能过程中用到,或许是在一些初始化时序使用到,而不会用来控制整个的程序运行架构,在实际的产品开发时无论是主循环while中,还是其调用的函数中,亦或是中断服务程序中几乎是不可能看到的。2、 产品设计的各个相对比较独立的子模块之间的逻辑关系太强,例如:必须等待播音完毕才能读卡进入下一步操作等。我们讲,产品设计中只有各个事件处理模块间的逻辑关系弱化,才能更加灵活的进行处理。例如:两个事件A和B,如果程序开发时将A做成

2021-03-19 17:15:48 126

原创 Ubuntu交叉编译环境配置

1.新建文件,以后这个目录就不能随便删掉了cmd: sudo mkdir /usr/local/arm2.进入下载的工具链目录,将压缩包拷贝到刚刚新建的目录下cmd: sudo cp gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/3.解压压缩包cmd: sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.

2021-03-12 22:23:39 170

原创 FreeRTOS列表项顺序问题记录

1.vListInsert() 列表项插入函数经过查资料及实验,证明插入位置是根据列表项的列表项值(xItemValue)的大小插入,升序插入。但是源码注释写的是降序2.vListInsertEnd() 向列表尾部插入列表项这里的列表尾部,并不是列表的xListEnd这一列表项。而是列表的索引(pxIndex)的前面,也就是说这个函数,插入到尾部 = 插入到列表的索引指向的列表项的前面...

2021-03-08 17:10:22 170

原创 记录FreeRTOS移植过程

一段时间不建工程,容易忘掉,在此记录1.拿到正点原子移植好的工程(工作中为了迅速)或官网的源码中有Demo。FreeRTOS/ Source2.portable MemMang里是内存管理的5个.c,在Keil里添加时添加heap_4.cRVDS里是匹配编译器的.c,添加对应芯片的3.添加FreeRTOSConfig.h4.编译,改掉错误...

2021-03-03 14:31:41 141 1

原创 RS232接口电平

232电平特点:1.和串口一样,每一个byte,都有起始位和停止位。起始位1,停止位0,但注意是反逻辑。2.电平信号是反逻辑!3.每个byte,是从低位向高位逐位传输,也就是LSB先传,依次传输到MSB。(为什么这样设计)...

2020-11-04 09:21:04 2471

原创 git最基本操作

1 . git clone+ HTTP网址2 . cd + … //进入克隆出的文件夹3 . 修改内容后git add . //添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件git commit -m “firstcommit”//把添加的文件提交到版本库,并填写提交备注git push origin master//第一次推送后,直接使用该命令即可推送修改...

2020-09-17 09:37:01 81

转载 FreeRTOS中的变量,函数命名规则(u.v.x.p什么意思)

写在前面初学FreeRTOS时,每次打开函数列表都一脸懵逼?根本不知道这什么prv,v,ux是什么意思,虽然平时使用也不需要知道这么多东西,因为它不怎么影响开发,但是理解总比疑惑好,我们还是把它理清楚一下跟好。命名规则u :代表unsigned。s :代表short。c :char。所以类似uc,us类的变量就是unsigned char,unsigned short,分别对应uint8_t,uint16_t。x :为用户自定义的数据类型,比如结构体,队列等。常看到ux开头的函数,就是uns

2020-09-08 10:30:01 1585 1

原创 MCU裸机软定时器例子

MCU软定时器例子

2020-09-02 17:34:18 211

原创 STM32G0 ADC中断+DMA中断模式的问题

今天在调试STM32G0 ADC+DMA中断时发现一个问题:ADC配置为连续采样模式,调试时发现程序一直在中断中运行。导致主循环不运行,猜测是因为中断触发频率过高导致。ADC改为单次触发模式,果然问题解决。为什么连续采样模式会这样呢?目前没空查找。 将采样速度调低,不知道能不能解决。...

2020-08-20 15:39:25 2493 1

原创 更新MDK的Jlink版本

今天在使用NXP的RT1052时,出现MDK识别不到芯片的问题(每次换芯片基本都会出现 FK)。经过排查,2个问题导致:1.必须要用Jlink给芯片3.3V。这个应该是硬件问题,画的板子有缺陷。2.之前没用过M7内核的芯片,我的MDK的Jlink版本是4.9,里面没有支持M7内核的DLL。解决方法:下载高版本Jlink驱动,如6.2。将J-Link V6.2安装目录下的JLinkARM.dll替换掉MDK安装目录下Keil_v5\ARM\Segger的JLinkARM.dll,至此,问题得到解决

2020-07-30 15:46:01 2251

原创 FreeRTOS内核函数xTaskResumeAll

调度器恢复函数①调度器挂起嵌套计数器uxSchedulerSuspended–;②某任务在等待队列时,如果调度器处于挂起时队列来了,将任务添加到xPendingReadyList里(而不是pxReadyTasksLists),调度器恢复时再添加到pxReadyTasksLists中。xPendingReadyList----------备胎pxReadyTasksLists----------正房欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果

2020-07-29 10:16:01 599

原创 AD4112使用CRC注意

最近使用ADI的一款AD的CRC校验时,发现了一个隐藏的问题1.配置AD寄存器时,一般情况不必考虑各个寄存器先后顺序(我之前没考虑,也没发现什么问题)。但在使用CRC时,要先使能控制CRC使能位的寄存器,如AD4112的interface寄存器要先配置。而且配置该寄存器时不能加CRC帧。原因:因为芯片上电默认失能CRC,如果先配置其他寄存器加了CRC帧,帧结构会错乱,导致配置数据错乱,AD工作异常...

2020-06-24 13:45:34 459 1

原创 STM32 在线升级功能(IAP)总结

在开发产品完成之后,用户使用过程中可能提出新要求(Fuck客户),或出现BUG(肯定的)。需要使用一种较为方便的方法给MCU或外挂flash更新程序。目前接触过的接口有:1.串口2.USB(DFU)3.网口3种方式的原理基本一样。都是写一个bootloader程序,在MCU上电时判断某引脚电平,选择进入bootloader程序还是APP程序。第一种这种方式原子哥的历程中讲解很详细且有源码。第二种这种方式是使用ST做好的DFU功能进行升级。需要用到2个上位机软件:1.DFU file Ma

2020-06-04 14:51:46 698 1

open62541-arm-linux服务器

open62541_arm_linux

2024-02-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除