摘要: 最近在用python搞串口工具,串口的数据流基本读写都要靠bytearray,而我们从pyqt的串口得到的数据都是string格式,那么我们就必须考虑到如何对这两种数据进行转换了,才能正确的对数据收发。先考虑的接收串口数据,那么格式是bytearray,下面需要处理成string格式来显示:#按st... 阅读全文
posted @ 2015-09-20 12:02 吾乐 阅读(24354) 评论(1) 推荐(1) 编辑
摘要: 一直没搞明白TI 的Instaspin的SVPWM实现原理,最后只能在Matlab里仿真看看输出波形是不是和普通的SVPWM实现输出的波形一样,用M文件实现,下面是代码:clear all;theta = 0:1:360;vd = 0.0;vq = 1.15;Valpha = zeros(size... 阅读全文
posted @ 2015-09-08 13:53 吾乐 阅读(5539) 评论(0) 推荐(0) 编辑
摘要: 最近在玩串口编程的时候觉得用有线的方式来连接在有些情况下还是相当麻烦的,总觉得不方便,正好之前我们这边有项目用蓝牙串口模块实现了数据通讯,可惜我没参与,不过原理很简单,就是用串口--》蓝牙模块---》蓝牙模块——》电脑/手机,感觉这种方式正好是我想要的,以后调试靠这个能方便很多,在一些无法连线的场... 阅读全文
posted @ 2015-09-07 09:03 吾乐 阅读(14626) 评论(0) 推荐(0) 编辑
摘要: 真的是好久没来了,写博客对我来说还真是难坚持下来,热度一过就忘了,就算什么时候想起来也懒得去敲一个字,这次真不知道能坚持多久,随心吧,想写写,不想写也不勉强自己。 最近由于工作调试需要自己写了一个带图形界面的串口工具,使用了python34+pyqt4+pyserial+matplot等实现,... 阅读全文
posted @ 2015-08-18 22:58 吾乐 阅读(1827) 评论(0) 推荐(0) 编辑
摘要: 又好久没来写blog,最近在做项目发现之前写的stm32操作都忘了,还好做了个记录,回来看了下很多忘了的就又知道怎么做了。 下面是我之前写的一个按键检测的框架,适合比较多的按键操作,从信号接收、滤波、最好处理按键任务,大体上没什么问题,不过没具体测试过到时可能会有bug。 1 /****************************************************************************** 2 * @file button.c 3 * @author wule 4 * @version 5 * @date 6 * ... 阅读全文
posted @ 2014-03-12 16:09 吾乐 阅读(1864) 评论(0) 推荐(0) 编辑
摘要: 在调试电机驱动程序的时候,是不能随便利用中断来进行一些寄存器或数据的查看的,不然你在运行的时候突然来一下,如果占空比大的话那可能直接就把MOS管给烧了,所以我们很多情况下只能使用USART(串口)来进行程序的调试和数据的监控了。 对于STM32来说,由于很多内容都是有库来实现的,那就省了很多时间,直接看个例子就可以写了,大致有4步步骤:1 1、RCC始终初始化,对端口和USARTX使能时钟2 2、初始化端口功能,RX设置为输入悬空,TX设置为复用功能的推挽输出,注意GPIO_SPEED要设置下,我没设置弄了半天都没输出3 3、设置USARTX寄存器,波特率、数据位、校验位、停止位等4 4... 阅读全文
posted @ 2013-08-06 16:20 吾乐 阅读(7562) 评论(0) 推荐(0) 编辑
摘要: 这几天一直在使用STM32来写sensorless BLDC的驱动框架,那么必须会用到TIM1的CCR1/CCR2/CCR3产生的六路互补PWM,以及用CCR4来产生一个中断,用来在PWM-ON的时候产生中断进行过零检测,以及相电流的检测等。 这几天一直在测试PWM,CCR4的中断,ADC1的采样触发+DMA等功能,现在也了解的差不多了,先记录下来,先看下我的一些设置,TIM1设置: 1 /* Time Base configuration ,init time1 freq*/ 2 TIM_TimeBaseStructure.TIM_Period = Period; 3 ... 阅读全文
posted @ 2013-08-01 10:31 吾乐 阅读(10420) 评论(0) 推荐(0) 编辑
摘要: Git是现在比较火的一款代码托管工具,之前也有在使用GitHub,是用GitHub for windows一个图形管理的界面,如果没有这个图形控制界面的话我估计自己又要放弃了。用BASH命令来实现托管对新手来说实在是比较难入手,有时还会有点难入手的感觉,可能工作对Git没需求,造成了我对Git可有可无的状态。不过现在想想如果早使用Git,那么我就能管理好自己的代码了,现在很多代码在重装系统之后都不知道去哪了。 GitHub在使用中唯一的问题就是免费用户不能创建私密项目,导致我就不能轻易把公司的项目放到GitHub上管理了,如果出现什么问题那不就悲剧了。最近发现OsChina出了个托管工具... 阅读全文
posted @ 2013-07-17 15:02 吾乐 阅读(2253) 评论(2) 推荐(2) 编辑
摘要: 之前完成了规则通道DMA的数据传输了,不过平时在使用ADC的时候可能就会遇到很多情况,不可能就这样简单的按规则通道来采样,DMA存储,使用数据的;可能有时候会需要立刻采样,那样我们就需要利用到注入通道了。文档关于注入通道的解释:1 利用外部触发或通过设置ADC_CR2寄存器的ADON位,启动一组规则通道的转换。 2 如果在规则通道转换期间产生一外部注入触发,当前转换被复位,注入通道序列被以单次扫描方式进行转换。 3 然后,恢复上次被中断的规则组通道转换。如果在注入转换期间产生一规则事件,注入转换不会被中断,但是规则序列将在注入序列结束后被执行。 将变阻器的那... 阅读全文
posted @ 2013-07-16 09:04 吾乐 阅读(20262) 评论(0) 推荐(2) 编辑
摘要: 今天尝试了下STM32的ADC采样,并利用DMA实现采样数据的直接搬运存储,这样就不用CPU去参与操作了。 找了不少例子参考,ADC和DMA的设置了解了个大概,并直接利用开发板来做一些实验来验证相关的操作,保证自己对各部分设置的理解。 我这里用了3路的ADC通道,1路外部变阻器输入,另外两路是内部的温度采样和Vrefint,这样就能组成连续的采样,来测试多通道ADC自动扫描了,ADC分规则转换和注入转换,其实规则转换就是按照既定的设定来顺序转换,而注入转换就是可以在这顺序队列中插队一样,能够提前转换了。 初始化设置: 1 //PC0 FOR ANAGLE SAMPLE 2 stati... 阅读全文
posted @ 2013-07-15 09:08 吾乐 阅读(19302) 评论(2) 推荐(1) 编辑