自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (1)
  • 收藏
  • 关注

原创 NRF52840 Reset 复位后板子起不来及解决方法

本文禁止转载。正常情况下,任何一块电路板,在复位的时候,都是要求板子能重新起来的。我们的复位电路如上图所示,默认采用了nrf52840 P0.18管脚进行复位。上图是我们的电源电路,我们的电源电路 POWER_EN 管脚与nrf52840连接。启动时,需要把POWER_EN管脚拉高,这样电源电路才会导通,电路才可以正常工作。reset之后,一般单片机的情况,管脚都是进入到高阻态。但是,NRF52840的在reset之后,管脚的状态是未知的!!!!具体的可以查看下面的官网的网址

2022-01-14 10:15:21 3759

原创 电子学中国际单位的换算

2022-01-07 18:35:39 361

原创 unnamed prototyped parameters not allowed when body is present

写了一段代码,本以为没什么问题,结果报错:: error: #141-D: unnamed prototyped parameters not allowed when body is present结果查看了一下,使用的一个第三方库里面,居然把code定义成了一个宏更改一下刚才函数的局部变量定义即可发生这种错误,一般是变量和宏名称冲突导致的...

2021-12-27 10:15:08 6371

原创 GD32 F3 管脚映射的问题 SW 接口不能烧写的问题

使用了GD32F303作为开发一不小心,硬件设计那边,使用了PA15端口作为SPI 的CS 管脚起初调试的时候,发现SPI读写时序不对,没有数据然后就注释掉所有的代码,单独的设置PA15的端口但是发现软件可以设置,也可以读取这个PA15的高电平还是低电平但是,硬件测量下来,发现就是抓取不到这个管脚的低电平或者高电平,不稳定最后跟踪下来才发现,PA15这个端口,默认被作为JTDI 使用,如果要使用作为普通的IO口的话,需要映射一下才可以使用gpio_pin_remap_co

2021-12-20 18:05:10 1135

原创 GD32 F4系列程序移植到 GD32 F3系列的注意点

GD32 F3 移植

2021-12-17 13:27:36 2250

原创 如何理解2进制补码表示负数

首先,如果表示正数那么N位 ,表示的最大正数就是2^N -1也就是说,如果是一个字节,8bit, 最大表示的正数是255如果表示为负数 最大表示范围是 -2^(N-1) ~ 2^(N-1) - 1也就是说,如果按照绝对值计算,负数的绝对值加上正数的绝对值,2^(N-1) + 2^(N-1) - 1 就变成了2^N -1求负数的2进制补码表示形式,先求正数的二进制形式,然后每一位再反转,然后再加1即可。...

2021-12-09 17:19:30 816

原创 C语言嵌入式中 异或 XOR的意义

按位操作分为 : 与 ,或,非但是为什么要出现一个异或?与: 两个都是1,才是1,否则为0.或:只要有一个是1,就是1,两个都是0,输出才是0非:0变1,1变0以前上课时候,老师跟我们讲与的作用,是为了让某个bit用来清零或的作用,是为了让某个bit置1但是没有讲异或的作用异或: 相同为0,不同为1异或的最经典的应用,就是寄存器的清零。最经典的就是x86架构中,经常应用的寄存器清零首先,读取这个寄存器的值,然后让这个值和这个寄存器再异或,就可以清零整个寄存器

2021-12-09 14:38:25 679

原创 MATLAB 几点经验总结

1、在一个目录下面新建了一个plot.m文件然后正好我的命令行终端的工作目录正好和这个plot.m目录处在同一个目录下然后我在命令行终端下 敲plot() 命令绘图时,出现以下错误:matlab报错:尝试将 SCRIPT plot 作为函数执行后来把plot.m 修改成my_plot.m 解决了该问题2、由于之前安装MATLAB的时候,不知道为什么,安装成了中文版本的结果我在用notepad++ 编写.m 文件的时候,出现了很多乱码事实证明,MATLAB 对中文的支持并不是十

2021-12-08 11:13:18 931

原创 不要用memset 来给浮点型的数进行清零

Is it legal to use memset(,0,) on array of doubles?c - Is it legal to use memset(…,0,…) on an array of doubles? - Stack Overflow安全做法,老实点,用for循环给浮点型的数组进行清零。否则会造成不可预知的后果。...

2021-12-06 15:27:43 782

原创 关于keil ARM编译器bug --- Internal fault: 0xb3b91b

本文禁止转载。本文提供了几种不切换ARM编译器版本的情况下解决该问题的方法。在编写程序时,大概编写的即使这样一个程序,这个96个字节的变量定义在main函数内部,上面还定义了一些其他变量编译的时候遇到错误:Build started: Project: ble_app_uart_pca10056_s140*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'Build

2021-11-29 17:30:25 5878

原创 STM32 高系列程序向低系列程序的移植关注点

本文禁止转载。有的时候,为了节约成本,MCU需要更换,程序需要移植本文主要介绍了STM32 F4系列程序移植到STM32 F0 系列中,SPI移植的一个关注点首先,就是时钟问题。F4最高是200MHZ的时钟,F0最高是48MHZ的时钟.这里的时钟,是指的系统时钟,SYSTEM CLOCKSPI接口通常是挂在APB1或者APB2上的通常,APB1的时钟速率要比APB2的时钟速率要高F4: APB1的时钟是系统时钟的一半,即100MHZ.APB2的时钟是系统时钟的四分之一,即50MH

2021-11-24 10:26:44 2780

原创 ADC 采样芯片级联的问题

SPI 接口读取ADC 级联芯片程序不正确的问题

2021-11-23 14:02:56 387

原创 STM32F030F4Px SPI读写的潜在问题

本文禁止转载。代码在从STM32F4系列移植到STM32 F0系列的过程中,初始化SPI接口后发现SPI数据读取不出来,读取出来的不是自己想要的值具体的跟踪下来,发现程序陷死在这个while循环中。也就是说,RX接收数据不对。发现,STM32在移植过程中,需要加入下面的第二条,也就是配置SPI1的Rx FIFO的阈值,配置它按照8位进行接收。这里面的一个主要原因就是,在STM32F1系列及以上,配置了TX的数据传输为8bit之后,RX默认也就是8bit,但是F0系列需要自己手..

2021-11-22 14:55:05 1221

原创 自己搭建一个 BCI 脑电EEG 头环,采集脑电

本文禁止转载.本文内容为脑机接口BCI 部分。本文的目的是给初高中的学生进行课外研学使用,或者作为初高中青少年科普读物。本文也可以作为大学本科生的科创项目或者学期课程设计有需要使用到我们的设备,或者希望获取文档的,可以联系:QQ: 895029070邮箱:sgmcy@126.com...

2021-11-15 16:28:10 2540 2

原创 数码管显示0~F

本文禁止转载:分共阴极还是共阳极分带小数点还是不带小数点的(1)共阳极不带小数点:unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};(2)共阳极带小数点:{0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0e};

2021-11-09 10:47:33 2563

原创 keil5 不支持STM32 F0 系列的在线仿真

首先插线芯片型号,是STM32 F0系列的然后设置仿真参数:设置完之后,发现还是仿真不了,进入不了main函数,在时钟初始化系统中运行:然后找了一个帖子:MDK支持软件仿真stm32f030吗-OpenEdv-开源电子网所以应该是keil5 还是不支持STM32 F0 系列的仿真如果有能在线仿真的,可以联系我QQ: 895029070邮箱: sgmcy@126.com谢谢...

2021-11-04 14:36:53 1386 3

原创 keil中下载按钮和调试按钮灰掉了

在制作lib库过程中,一切制作OK然后制作完毕之后,希望在工程中调用lib库发现下载俺就和调试按钮灰掉了原因是自己之前制作lib库过程中点击了create lib选项,恢复成create hex选项即可...

2021-11-04 13:53:43 3604

原创 keil中创建lib库,使用lib库

在keil5 MDK 中,为一段代码封装LIB库首先,创建一个工程,该工程选的芯片型号和原先的工程保持一致。然后,导入源码,导入的源码不需要添加main.c 或者main()函数入口lib库的名称最好和工程名称保持一致编译,就会在output目录输出lib库把输出的lib库文件和要提供给工程的.h文件添加到工程中在新的工程中包含liba.h 调用liba.h 提供的接口就可以了...

2021-10-21 14:57:56 4138 1

原创 DM634学习小结

DM634是一款恒流驱动芯片,也就是说,可以通过这款芯片,恒定的输出电流。这在某些应用中非常有用。比如LED电子显示屏。比如交通灯。比如室内播放视频的LED大屏幕。DM634 芯片的管脚可以大致分为如下几类:算了,不高兴写了,后面有时间再补充吧有问题可以联系QQ:895029070email:sgmcy@126.com...

2021-08-10 11:03:33 1173

原创 测试AFE4490 SPI接口读取数据都为0的问题

最近一个项目需要做到AFE4490在github上面找了一个基于STM32 + AFE4490的参考用例。整个工程没有太大的难度然后把这个参考用例移植到我的MCU小板上面移植的过程都是正确的但是在实际测试的时候,就是发现SPI读取出来的寄存器数值都为0。软件这块,调取的SPI读写函数的接口,初始化SPI的接口,都是正常返回的,没有返回任何错误。采用示波器抓取,发现只能抓取SPISIMO管脚上的数据,SOMI的数据没有所以初步判断,SOMI上的数据没有,就导致我读取出来的数据都为0

2021-07-14 10:49:11 3120 3

原创 CH552 单片机示例代码打开很卡的问题

开始接触CH552单片机。从官网上下载了示例工程之后:nanoCH55x\nanoCH55x\nanoCH55x\examples\led因为示例工程是keil4的,只能按照官网下载的keil4安装包,这个安装包支持CH552系列的单片机安装keil4之后,打开上述示例工程,发现整个工程会变得特别卡。这个进程的CPU占用会达到22%甚至更多删除掉这个文件之后,就可以了。再次打开工程,整个工程就不卡了之前在网上查看到一个说法,是说因为屏幕界面设置了淡绿色保护色,导致整个系统工程变得很卡

2021-07-13 13:22:59 592

原创 如何解决 HC-06 波特率设置为1382400

有个项目要蓝牙传输数据看了蓝牙转串口模块,就使用了HC-06模块。当时为了测试在不丢包的情况下最大的传输速率,设置了串口的波特率为921600然后想继续提高传输速率,就脑残+手残的设置了串口波特率为1382400(官方文档提供的)不知道HC当时是怎么想的,也不知道他们是怎么测试的,可能他们测试最大支持的波特率就是1382400可是1382400是个很不常见的波特率基本上所有的串口软件都不支持1382400这个波特率基本上都需要自己定制特殊的波特率设置完新的波特率.

2021-07-12 15:45:56 2634 2

DM634 Demo测试代码.c

本代码包含了如何驱动DM634芯片,如何通过DAI往移位寄存器输入数据,且数据如何移动到锁存寄存器中,如何切换到GCK模式,如何设置GBC明亮度

2021-08-26

空空如也

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

TA关注的人

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