
单片机
RuiJey
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【STM32】一次F105 USB OTG驱动填坑记录
使用MCU为STM32F105VC,新建工程,使用Keil 自带STstd库,以及ST Legacy usb otg库,问题一为VBUS检测的设计疏漏问题二为usb device无法正常枚举,使用库中参考工程也是一样情况,使用CubeMX生成工程验证了硬件正常,最终使用Legacy工程和HAL工程运行对比工作状态发现Legacy中的异常状态,检查各处差异,发现驱动中读取到的系统时钟数值异常,跟踪时钟初始化代码并对于CubeMX中时钟树,发现整个usb的时钟都是异常的,按照CubeMX中的值调..原创 2020-12-25 14:18:09 · 1687 阅读 · 0 评论 -
【STM32】STM32F302CB串口驱动异常排查
一、环境1.STM32F302CB的单片机,串口使用默认接口PA9/10;2.工程从F103C8移植而来;2.std驱动库二、情况描述1.最开始配置为验证正常的BOOT + 新移植的rtt APP2.现象为串口输出乱码;3.验证旧APP串口功能正常,对比新旧APP串口初始化无明显差异;三、排查故障1.去掉rtt相关初始化代码,只跑串口初始化和打印:现象无明显变化...原创 2019-04-23 21:45:46 · 1566 阅读 · 0 评论 -
【RT-Thread】学习笔记-01-为Keil Pack: nano msh添加串口驱动
一、需求分析 当前项目状态较多,总线指令也持续较多,bug定位不是难事,难在主动发现bug,且原模块之间关联性较复杂,排查和改动都比较麻烦。所以决定在RTOS上重构代码。 RTOS方案选择有uCOS, Keil RTX, Free RTOS, RT-Thread。二、方案选择 uCOS有稳定的主要优势,Keil RTX有开发上手简单顺畅的优势,Free RTOS是...原创 2019-03-08 16:32:49 · 1830 阅读 · 0 评论 -
【RT1052】入坑笔记
1. 组成架构1. CPU:ARM-CM7; 32KB I-cache/32KB D-cache; FPU; MPU; 512KB TCM/OCRAM; 96KB ROM(Bootloader);2. 核心外设: ...原创 2018-10-04 15:03:26 · 8479 阅读 · 0 评论 -
【STM32】时钟配置被重定义导致的跑飞排查
STM32F407,下载一例程,如往常一般检查晶振是否正确时候编译烧录。#if !defined (HSE_VALUE) #define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */#endif /* HSE_VALUE */好,跑飞。1. 第一次尝试 检查使用的晶振,确...原创 2018-05-27 20:19:40 · 2190 阅读 · 0 评论 -
【RT-Thread】学习笔记-01-搭建第一个RTT基本工程
听说RTT有一点时间了,翻了下硬盘里的存档,发现第一次下载的资料都已经是15年了,额。。。也有一段时间没在写STM32的代码了,过去花了太多时间在底层驱动上面,没有有方向性地往前学习,止步不前。如愿成了一名所谓的硬件工程师,不过到现在也依然没法给自己所做的工作下一个较为明确的定义,嵌入式硬件,跟平时认识到的技术含量高的那些射频、电源、信号调理等领域的大牛相比差得不是一点点。以单片机为主控的嵌入式硬...原创 2018-05-13 21:17:40 · 3667 阅读 · 0 评论 -
【笔记】STC12C ADC与串口的冲突
博客搬家,原贴日期:2015-04-23MCU:STC5A60S2配置: 串口ADCP4口中断优先级: 外部 1串口2定时器3BUG: 当使用过ADC之后,串口只能接受并响应一次。不能再回传数据包原因: 具体不明当切换到非ADC模式时关闭ADC后一切正常原创 2018-01-04 16:15:37 · 2865 阅读 · 1 评论 -
C语言中浮点数取余
博客搬家,原贴日期:2015-04-23在KEIL C51中遇到的浮点数取余问题,编译器将'%'提示为不识别的标记,原因为被操作数为浮点数时,不能进行取余操作;实际使用中如果需要去浮点数的各位数,应先将被操作数显式强制转换为整形。原创 2018-01-04 16:13:28 · 8415 阅读 · 0 评论 -
【学习笔记】STC 12C系列1T单片机主频配置
博客搬家,原贴日期:2015-02-27寄存器CLK_DIV用来配置CPU主频,默认值为0x00,不分频原创 2018-01-04 16:12:27 · 1685 阅读 · 0 评论 -
【学习笔记】KEIL中C51printf函数的用法
博客搬家,原贴日期:2015-02-27C51中printf函数通过调用putchar函数实现串口打印,部分代码如下: while (!TI); TI = 0; return (SBUF = c);它会等待TI置位之后才真正发送数据;因此,在使用printf函数时需要先将TI置1再使用printf函数发送数据同时,printf函数参数的使原创 2018-01-04 16:11:17 · 2289 阅读 · 1 评论 -
【学习笔记】在KEIL中stm32移植51代码时位定义变量的替换
网易博客搬迁,原贴时间:2015-02-13在C51代码中,时常会使用 bdata定义可位定义的变量如:u8 bdata Status;sbit IT = Status^0;......这是因为:"51架构的单片机都有一段可位寻址的区域,位于20H~2FH,总共128位。 在C51中编程时,分配的bit型变量都会定位到这段区域里。 如果某个原创 2018-01-04 16:00:53 · 3850 阅读 · 0 评论