项目开发中,当出现bug时,由于不知道某个变量的值,所以很难定位问题,针对此问题,串口调试脱颖而出。通过串口printf()实时将需要显示的信息打印出来,这样就很方便的定位问题。串口设置方法1.购买调试器pwlink2。参考STM32F103C8T6程序烧录方法_stm32f103c8t6如何烧录_流浪法师解剖鱼的博客-CSDN博客2.下载Power Writer烧录调试软件。3.编写代码,配置串口,编写要打印的东西,通过printf();代码部分见最后。4.连线,STM32F103C8T6我配置的PA9和PA10分别位TXRX,连接到烧录器pwlink的RX和TX端。5.下载程序。6.打开
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、ModbusTCP是什么?1.1.1ModbusTCP介绍1.1.2报文格式二、W5500配置三.读保持寄存器&&写单一寄存器函数1.代码展示2.参考资料总结前言本章节是博主学习ModbusTCP所写的一篇文章一、ModbusTCP是什么?1.1.1ModbusTCP介绍ModbusTCP是Modbus的一个分支,主要用到网口通信的,在工业上也用的很频繁,我们公司最近的项目就是用的W5500+modbusTCP来和PC端的上位机通信和交互的。虽然这个项目不是我在写代码,但是我都学了ModbusRTU了,那我也抽空学
目录一。材料准备。二。PCB原理图 三。逻辑状态图四。代码部分五。文件下载:接上:stm32f103简易4路红外寻迹小车(1)----2023西南交大电赛校赛(含stm32中文资料)小车测试视频:stm32小车寻迹小车一。材料准备。材料资料图片见上:stm32f103简易4路红外寻迹小车(1)----2023西南交大电赛校赛(含stm32中文资料)电机驱动MX1919LVCC统一接stm32系统板的3.3v。VDD接7.4V电源。电容连接如图。左侧和右侧两轮分别接2通道。利用pwm波改变占空比控制电机转速,逻辑输入接可以产生pwm的PA6,PA7,PB0,PB1(TIM3),复用推挽输出。红外
一:最近实验室有几个项目都需要用到高分辨率AD转换,于是就开始了ADS1256的开发。新手,焊得丑,见谅(能用就行)二:本以为很容易就能做完,结果被采样速率的问题困扰了很久。代码如下,使用2.5V基准源进行测试,结果在读ADS时经常出现读出0xFFFFFF的情况,只能忍住悲伤开始查找资料,后来在TI论坛上看到一位大哥说这种情况一般是SPI没有读取到数据于是直接将ADS初始化中的10SPS改成30000SPS,结果一测试OK了。voidADS1256_Init(void){ ADS1256WREG(ADS1256_STATUS,0x04); ADS1256WREG(ADS1256_MUX,0x0
目录前言一、霍尔编码器以及定时器计数原理二、使用pwm占空比对电机速度进行控制三、使用systick的中断函数进行pid和速度的计算,还有oled的显示四、常用的测速方法: 五、pid原理六、oled的实现七、蓝牙通信八、3路循迹模块总结前言经过一个月对stm32的学习,终于完成了一个小车的项目,本项目用到了pid对小车进行控速,两个电机,一个万向轮,一个3路灰度循迹模块进行循迹,0.96寸oled进行一些参数的显示,通信方式使用qt写的app传到手机,用手机与hc06蓝牙模块进行简单的通信。一、霍尔编码器以及定时器计数原理对于霍尔编码器,工作原理如下 可以得到两种输出方式,通过定时器的编码器
1、时钟选择的对不对,2、GPIO口的TX引脚应该设置为“复用推挽输出”3、中断初始化函数也不可加 4、硬件方面RXT、TXD电路接反。一直出现00的时候就要怀疑是不是线接反了。总结:大概率是代码的问题一定要仔细检查
我正在努力让CMPedometer返回任何步数数据。但是Iconfigure我得到ErrorDomain=CMErrorDomainCode=103"Theoperationcouldn'tbecompleted.(CMErrorDomainerror103.)"我正在使用swift并将queryPedometerDataFromDate查询分解为尽可能简单。letpedometer=CMPedometer()letfromDateString="2015-01-22"lettoDateString="2015-01-23"letdateFormatter=NSDateFormatte
我正在努力让CMPedometer返回任何步数数据。但是Iconfigure我得到ErrorDomain=CMErrorDomainCode=103"Theoperationcouldn'tbecompleted.(CMErrorDomainerror103.)"我正在使用swift并将queryPedometerDataFromDate查询分解为尽可能简单。letpedometer=CMPedometer()letfromDateString="2015-01-22"lettoDateString="2015-01-23"letdateFormatter=NSDateFormatte
关于MPU6050MPU6050简单介绍对于各位接触到MPU6050的同学们来说,应该不缺MPU6050的参考资料,其中有一篇《MPU-6000/MPU-6050产品说明书》——ByLeeDy.Li2013.1.7的翻译文档。正点原子、野火的开发指南都有详细的MPU6050介绍。MPU6050有3轴陀螺仪和3轴加速度传感器,还有一个第二个IIC,用于接外部磁力传感器,对于这个IIC,应该算是一个比较鸡肋的功能,磁力计直接接到主控上面是一个不错的解决方案。MPU6050自带的数字运动处理器(DMP:DigitalMotionProcessor)硬件加速引擎,可以减少MCU的负载,但是这个功能,亲
一.什么是单片机最小系统 常见的单片机最小系统为单片机能独立运行程序及控制外围电路的最简单电路,主要由单片机、晶振电路、复位电路三部分构成。Stm32f103c8t6也不例外,构成最小的运行电路也需要以上三部分。Stm32f103最小系统板原理图如下:二.最小系统电路 Stm32单片机最小系统电路有单片机、晶振电路、复位电路。1. 单片机 Stm32f103系列单片机主要资源如图: Stm32f103c8t6工作电压为2-3.6V(一般采用3.3V),内置64-128KBytes Flash,20KBytesSRAM,带有37个通用GPI