
硬件开发
李工电子说
资深硬件工程师,软硬兼通。
展开
-
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET){}卡死
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET){}卡死while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) != SET){}卡死原创 2022-08-11 20:59:04 · 2504 阅读 · 0 评论 -
STM32有关I2S录音有噪声噼里啪啦及其他应用注意PCM1808
1、用PCM1808录音,只用右声道录音,24位左对齐,调了很久,都有噪声,噼里啪啦响,特别大,以为时钟不对,软件配置不对。调了很久,结果发现是左声道用了一个电阻接地,影响到右声道了。正确方法是悬空。2、常用声音采样率是44100、48000、96000,如果你用8M的晶振,不管怎么配置都有误差。解决方案就是换晶振,11.0592MHz,22.1184MHz。...原创 2022-06-16 19:38:23 · 2602 阅读 · 3 评论 -
关于WCH沁恒以太网透传芯片CH9121的波特率问题
最近在做一个项目,计划用CH9121做音频传输,音频采样率是48KHz,每帧数据是16位,串口设置8N1,一个字节相当于10bps,然后48K*2*10=960000>921600,咋怎?退而求次,采用44.1K的采样率,可行。1、关于波特率的误差CH9121的数据手册没有明显告知921600时的波特率误差,我在用单片机调试时,配置了单片机波特率也是921600,但是中间通讯数据错误很多。后来想,波特率的的产生机制都是一样,无非就是系统频率和某个寄存器值的商,误差是因为和主频不是整数关系。那我原创 2022-05-18 15:54:51 · 2467 阅读 · 0 评论 -
STM32F030系列 HAL库FLASH读写(当EEPROM用)
此处已STM32F030F4P6为例,HAL库版本为Keil.STM32F0xx_DFP.2.1.11、解锁:程序下载后,默认Flash空间是保护的,所以要先进行解锁。大家都知道,解锁就是对FLASH_KEYR寄存器写两次数据,第一次是0x45670123,第二次是0xCDEF89AB,对应有现成的HAL库函数直接使用,HAL_FLASH_Unlock()。2、擦除:关于Flash闪存的电气特性:flash编程原理只能将1写成0,不能将0写成1,等同于按位与的关系。比如经过擦除后的存储状态是0xFF原创 2022-05-15 20:56:09 · 6561 阅读 · 2 评论 -
关于长波中波短波厘米波毫米波
1、甚低频,3-30 kHz,VLF,万米波,甚长波,100km-10km2、低频,30-300 kHz,LF,千米波,长波,10km-1km3、中频,300-3000 kHz,MF,百米波,中波,1000m-100m4、高频,3-30 MHz,HF,十米波,短波,100m-10m5、甚高频,30-300 MHz,VHF,米波,超短波,10m-1m6、特高频,300-3000 MHz,UHF,分米波,100cm-10cm7、超高频,3-30 GHz,SHF,厘米波,10cm-1cm原创 2021-05-05 17:31:22 · 3785 阅读 · 0 评论 -
树莓派3B+如何输出用PWM输出音频AUDIO
树莓派3B+用的芯片是Broadcom公司的BCM2837芯片,通过查看树莓派3B+核心板数据手册,发现3B+核心板并没有音频接口。那3B+该怎么实现音频输出呢?其一:HDMI,如果你所用的显示器没有额外带喇叭或者音频接口,那么很遗憾。其二:PWM。PWM怎么实现音频输出呢?其实,树莓派官方的开发板就是用PWM来实现的。看下面两张图。略有遗憾的是官方开放的原理图是简图,没有指出其PWM用的是哪个GPIO口,但是驱动是有的,不过配置文件中也没有体现用的是哪个IO口。我想说的是,确实原创 2020-12-21 21:10:29 · 3186 阅读 · 3 评论 -
关于同步开关电源和异步开关电源
关于同步开关电源和异步开关电源,关于同步开关电源和非同步开关电源,关于开关电源同步和异步,关于开关电源同步和非同步,关于开关电源同步升压和异步升压,关于开关电源同步升压和非同步升压,如下图所示:...原创 2020-12-18 11:35:12 · 2662 阅读 · 0 评论 -
编程笔记:IIC通信I2C传输数据:高位到低位!高位到低位!高位到低位!
略长时间没用IIC I2C了,最近重写I2C代码,结果犯了基本错误。数据传输是高位到低位!数据传输是高位到低位!数据传输是高位到低位!重要的事情说三遍,警记!原创 2020-07-24 07:00:59 · 4045 阅读 · 1 评论 -
MDK V5下载STM32F0程序是提示Error: Flash Download failed - “Cortex-M0“
我在用Keil uVision5(MDK V5)调试一个STM32F030的板子,用ST-Link的SWD模式下载程序时弹出窗口,调试Error: Flash Download failed - "Cortex-M0"。我的板子上的STM32F030单片机是从另外一个板子上换过来的,之前有烧写过程序。而且之前的程序设置的是外部晶振,现在的板子上是没有晶振的,当前程序是设置为内部晶振。烧写不进去,参考了一些网上的解决方法,MDK里面相关的FLASH地址等设置是没问题的。最后的解决方法是:先用ISP下.原创 2020-07-24 06:58:42 · 3177 阅读 · 0 评论 -
锡铋-铋锡-焊锡的缺点
如下图所示,图1是某创商城卖的焊锡,几乎都是这个牌子的。这个就是锡铋成分的,所谓的低温焊锡丝,熔点130多度。LED灯珠也不耐高温,所以贴片锡膏也大都是锡铋成分的。低温特性好,不过也有缺点。缺点就是不牢固,不适合用于焊接较大个器件,不适用于焊接接插接口类,用久了以及在受力时容易形成脱焊。所以,要牢固可靠,还是锡银铜的好。...原创 2020-02-29 15:31:31 · 3415 阅读 · 0 评论 -
ESP8266安信可ESP12用AT+CWJAP_DEF连接开放网络WIFI无密码怎么办?
如题,基于ESP8266的安信可WIFI模组ESP12,正常情况下,用AT指令连接有密码的WIFI网络,指令如下:AT+CWJAP_DEF="网络SSID","密码"现在,如果要连接的WIFI是开放网络,是没有密码的网络,怎么办?很简单,密码为空,是空,不是空格,双引号还是要的,指令如下:AT+CWJAP_DEF="网络SSID",""...原创 2020-02-10 11:25:52 · 8025 阅读 · 0 评论