
单片机开发
文章平均质量分 61
aerror
这个作者很懒,什么都没留下…
展开
-
Arduino 1.8 无法启动,闪屏过后,卡死,不出主界面解决方案
6.折腾了好久,我觉得可能是arduino ide2.x安装一些东西,而arduino 1.8.9也使用了这些东西,导致问题。7. 最后在C:\Users\youuser\appdata\Local找到两个ariduino开头的文件夹,有一个文件夹很大,先多东西,把他们都删除了,发现问题解决!4.发现安装了arduino ide2.x, 顺便卸载了,然后再重新安装Arduino 1.8.9,也是一直的现象, 无效。突然打不开了,闪屏过后,不出主界面,一直这样,任务栏有图标。原创 2024-10-19 20:34:02 · 500 阅读 · 0 评论 -
如何编译BLHELI 及BLHELI_S
开头改成SilabsPath和 RaisonancePath你安装所在路径。BLHELI_S目录下,修改一下MakeHesfiles.bat。3. BLHeli目录下修改MakeHesfiles.bat。开头,改成KeilPath你安装 的目录。就可以双击编译BLHELI_S了。下载Ride和RKit-51。就可以双击编译BLHELI了。这里只说silab的两个版本。原创 2024-02-27 23:58:45 · 546 阅读 · 3 评论 -
开源BLHELI-S 代码详细解读(三)
如果不满足,则跳到run_to_wait_for_power_on_fail,这里上一篇有详细读了,是一些失败的检查,最坏会跳回init_no_signal。B. 否则就是在启动的阶段(STARTUP_PHASE),这里会将Startup_Zc_Timeout_Cntd减1(超时次数,wait_before_zc_scan会把它设置成2),要是它还不是0,就跳到comp_check_timeout_extend_timeout,再调用setup_zc_scan_timeout。原创 2024-02-06 19:36:56 · 1175 阅读 · 2 评论 -
开源BLHELI-S 代码详细解读(一)
Pgm_Beacon_Delay会和Power_On_Wait_Cnt_H相减,要是借位,就会开始beep f4, beep一次Power_On_Wait_Cnt_H会减1,就是Power_On_Wait_Cnt_L是255的时候beep一次了。如果有信号(Rcp_Timeout_Cntd不是零),同时New_Rcp(油门)不是零跳到 wait_for_power_on_nonzero, 再检查一次Rcp_Timeout_Cntd是不是零,要是不是零,那就跳到init_start。这个代码在inc里。原创 2024-01-29 15:52:24 · 2884 阅读 · 5 评论 -
开源BLHELI-S 代码详细解读(二)
DIR_CHANGE_BRAKE没有设置的话,就跳到run_to_wait_for_power_on,不是的话,清除DIR_CHANGE_BRAKE的标志,清除PGM_DIR_REV标志,要是RCP_DIR_REV有设置,那么设置PGM_DIR_REV,然后把当前的阶段设置回INITIAL_RUN_PHASE。run_to_wait_for_power_on_fail是由前面的wait_for_comp_out_low和wait_for_comp_out_high的异常读取触发的。原创 2024-02-04 17:28:14 · 2434 阅读 · 3 评论 -
高通Qualcomm处理器的手机或设备进EDL 9008模式的办法
由于我们有很多基于 Qualcomm 的设备,其中一些设备可能会古怪地猜测如何进入 EDL 模式,或者如何正确进入。例如,对于 Alcatel,您必须先按住两个音量键,然后再按住其中一个,对于 CAT B35,您必须按住 * 和 #,对于 8110,您必须按住 Up 和 Down,在此期间您必须插入电缆。因此,一个非常简单的电缆模块(一个穷人的夹具)就派上用场了,它根本不需要焊接。1. 拿一根备用的 microUSB 数据线,剥去中间某处的绝缘层。3.将USB端连接到PC,按住剥开的线约5秒钟。原创 2023-01-18 16:57:40 · 4238 阅读 · 0 评论 -
一个无线鼠标的HID Report Desc
【代码】一个无线鼠标的HID Report Desc。原创 2023-01-12 15:58:15 · 803 阅读 · 0 评论 -
富斯,迈克,天地飞4合1接收机说明书
(上图,飞机用的接收机)(上图,车用的接收机) A: 一 首先遥控器开机进入对码模式, 二 接收机上电, 三 静待45秒,即可自动完成对码。 一 关闭遥控器 二 接收机上电三 静待40秒,直到接收机进入每1秒1亮1灭慢闪四打开遥控器,接收块闪,然后常亮,对码完成A: FLLYSKY,天地飞:一. 关掉原来的摇控器, 二. 关掉接收机电源 三. 打开新的遥控器开机进入对码模式 四. 接收机上电, 五。 静待45秒,即可自动完成对原创 2022-06-21 11:41:36 · 13885 阅读 · 2 评论 -
MC6C迈克/FLYSKY富斯/WFLY2天地飞二代接收机远程刷固件教程
1. 安装ch341的驱动程序CH340/CH341 Windows串口驱动安装 - 南京沁恒微电子股份有限公司CH341SER.EXE - 南京沁恒微电子股份有限公司2.ch341的跳线跳到usb To ttl3.接收机飞线4.连接5v, RX, TX GND 到接收机的+,3, 1 ,G5.下载stm32isp程序安装6. 接上ch341到电脑7. 打开stm32isp程序8.输入密码,密码找卖家要,点击登录9.点击下载10. 拆除接收机飞线........原创 2022-05-16 16:21:21 · 3616 阅读 · 0 评论 -
富斯/MC6接收机说明书
正面 反面1. PWM输出通道多达6个, 可以自由切换7种模式,自由选择无刷,有刷,差速,炫酷的RGB全彩灯带等,自由玩耍。2. 集成两个5A有刷电调,通过模式选择,可以双发,可差速,支持8250以下的空心杯有刷电机3. 支持16通(MC6/7C 14通)sbus(第15通是RSSI),9通ppm(第9通是RSSI),可以接飞控,飞fpv. 4. 支持Failsafe失控保护,只需要直接在摇控器的Fail...原创 2022-04-20 15:09:42 · 12008 阅读 · 0 评论 -
自制2.4G ELRS接收机,不需要打板,容易制作
制作难度:中等,主要是器件太小,焊接需要耐心一。硬件材料1.LoRa射频模块,sx1280 : E28-2G4M12S2.MCU Wifi模块:ESP-01F3.各色硅胶软线若干4.1k电阻5. TTL转串口 CH341 (CH340或FTDI随便一个即可。)6. DC-DC3.3v降压模块7. LED灯一个。二。软件:1. EpressLRS Configuratorhttps://github.com/ExpressLRS/ExpressLRS-Configu..原创 2022-01-03 10:54:52 · 9871 阅读 · 6 评论 -
STM32 LL库使用SPI读写
void Rfchip_Spi_Init(void){ LL_GPIO_ResetOutputPin(GPIOA,LL_GPIO_PIN_5); LL_GPIO_ResetOutputPin(GPIOA, LL_GPIO_PIN_7); RFChip_Disable;}void Rf_Spi_Write_Byte(uint8_t dat){ LL_GPIO_ResetOutputPin(GPIOA,LL_GPIO_PIN_5); LL_GPIO_Se...原创 2021-12-31 15:51:02 · 3411 阅读 · 0 评论 -
STM32 LL库 操作FLASH 保存数据
#include "string.h"#include "stm32f1xx_ll_system.h"#define FLASH_PAGE_SIZE ((uint32_t)0x00000400)#define LL_FLASH_GET_FLAG(__FLAG__) (((__FLAG__) == FLASH_FLAG_OPTVERR) ? \ (FLASH->OBR & FLASH_OBR_OPT...原创 2021-12-31 15:50:09 · 1927 阅读 · 0 评论 -
Freescale 飞思卡尔使用UART中断,单线UART
1void setup_crsf_serial_port(uint32_t baud,crsf_read_cb_t read_cb){ if(g_crsf_read_callback==0) { g_crsf_read_callback = read_cb; //uart_single_init(bdrate,DEFAULT_SYSTEM_CLOCK,bdrate);//Set single wire mode. SIM->SCGC4 |= S原创 2021-12-31 15:46:27 · 525 阅读 · 0 评论 -
STM32 使用 LL库进行I2C读写
为什么要使用LL库,因为生成的固件大小可以小很多很多,MCU贵呀,可以省很多成本了。uint8_t i2c_read_len(I2C_TypeDef *I2Cx, uint8_t Addr , uint8_t Reg, uint8_t len,uint8_t *buf);uint8_t i2c_write_len(I2C_TypeDef *I2Cx, uint8_t addr , uint8_t reg, uint8_t len,uint8_t *buf);实现这两个函数,理论上全...原创 2021-12-31 15:46:45 · 6636 阅读 · 3 评论 -
MacOS Arduino开发环境搭建和编译minimosd-extra
1.从arduino官方网站:https://www.arduino.cc/en/Main/Software下载mac平台的IDE2.安装Arduino Makefile , git clone https://github.com/sudar/Arduino-Makefile.git3. 下载minimosd-extra源代码git clone https://github.com/night-ghost/minimosd-extra.git4.下载Sing...原创 2021-11-10 14:21:27 · 448 阅读 · 0 评论 -
STM32F103C6Tx CubeMx HAL I2c不工作原因
发现使用STM32F103C8 i2c是可以工作了,要是cpu选STM32F103C6Tx发现生成代码i2c不工作,多次尝试和比较发现,STM32F103C6Tx生成的i2c的msp初始化gpio的时候少了一个速度的配置: GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;加上这行就正常工作了。汗。void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle){ GPIO_InitTyp...原创 2021-11-01 22:03:56 · 2434 阅读 · 6 评论 -
新唐n76e003单片机遥控PWM信号检测控制航灯系统
第一次使用学习单片机编程, 使用了n76e003, 主要在检测pwm的信号问题上花了比较多的时间,最后是使用了timer2的0通道来捕捉上升缘,1通道来捕捉下降缘来检测pwm的宽度。接收机是0-2000us pwm输出,500-1000是基础的pwm, 就是说没有信号也定期输出500(舵机)或1000(油门),这样单片机可以检测到有无信号.timer0来控制led的开关和闪烁,timer0使用10khz, timer2使用16m的时钟.#include "N76E003.h"#incl.原创 2021-05-19 21:15:21 · 1318 阅读 · 1 评论