摘要: memcpy函数: c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。 用法:void *memcpy(void *destin, void *source, unsigned n); 举例: char 阅读全文
posted @ 2018-12-17 15:35 白菜没我白 阅读(5961) 评论(0) 推荐(0) 编辑
摘要: STM32的ADC转换还是很强大的,它具有多个通道选择,这里我就不细说,不了解的可以自行百度,这里只是选取单通道,实现ADC转换。在文章开始之前,我说一下数据左对齐跟右对齐的差别,以前一直糊里糊涂的,记录下来以免以后自己忘记。12位二进制最大值为 0x0FFF 左对齐操作后的结果是 0xFFF0,右 阅读全文
posted @ 2018-11-29 16:15 白菜没我白 阅读(41350) 评论(0) 推荐(1) 编辑
摘要: 今天下载的时候,插入下载器,查看Debug可用看到“internal command error”,一直找不到原因,后来查看上一个工程才发现,上一个程序禁用了Seral Wire 引脚,导致的。 解决方法: 有复位按钮的话,将复位按钮按住不放,然后在Keil点击程序下载/调试按钮,约0.5~1秒后松 阅读全文
posted @ 2018-11-23 16:24 白菜没我白 阅读(15047) 评论(0) 推荐(0) 编辑
摘要: 这里记录一下如何做一个USB下位机,这里主要分3部分:1、建立工程;2、添加报文描述符;3、数据的传输。这里就不讲USB的理论知识了,有想要了解的百度一下就可以了。 建立工程:工程建立参考:https://www.cnblogs.com/libra13179/p/7193375.html 1、首先打 阅读全文
posted @ 2018-11-07 11:15 白菜没我白 阅读(30642) 评论(8) 推荐(4) 编辑
摘要: 这里就不对STM32的PWM进行讲解了,想要了解的可以百度一下,这里主要说怎么实现。 1、建立工程,我选的是STM32F103zet6芯片,选择定时器的PWM功能 2、配置时钟,我这里配的是内部时钟,没有配外部时钟,而且不是最大时钟,有需要的可以自己改 3、配置定时器,这里的话默认就可以,因为代码里 阅读全文
posted @ 2018-11-05 18:45 白菜没我白 阅读(27470) 评论(1) 推荐(2) 编辑
摘要: 最近才发现原来我把定时器里的配置参数代表的意义给搞混了,这里记录一下,防止以后自己忘记。 以建立一个定时1mS定时器为例: 1、先打开定时器 2、配置好时钟 3、配置定时器设置 重点来了,以前在这里我一直以为这里配置的就是时间,然后在调频率的时候,一直不对劲,知道查阅了硬石的资料才发现,这里配置的是 阅读全文
posted @ 2018-11-02 17:37 白菜没我白 阅读(41083) 评论(0) 推荐(3) 编辑
摘要: 1、项目开始前先考虑好如何开始这个项目,如何验证这个项目,以及如何调试这个项目 2、项目过程中,要计划好时间,什么时候完成什么功能 3、若跟别人一起调试的项目,要督促好别人,不能出现因为别人的原因而让自己太被动,要给自己缓存时间 4、项目调试过程中,出现问题要敢于怀疑,先排除硬件的原因,再排除软件的 阅读全文
posted @ 2018-10-30 15:12 白菜没我白 阅读(677) 评论(0) 推荐(0) 编辑
摘要: 最近在写USB通信的上位机,调用了windows里的DLL,开发环境:64位WIN7 、VS2015、NET4.5.2;开发完成后在自己的电脑可用,在32位电脑、NET其他版本以及WIN10的环境下不可用,检测发现问题在于DLL的调用不成功,为了解决这个问题,查阅了几天的资料,现在终于解决了,记录下 阅读全文
posted @ 2018-10-30 14:54 白菜没我白 阅读(2351) 评论(0) 推荐(1) 编辑
摘要: 最近做了个USB跟上位机的通信,需要软件对MCU进行复位,复位后如果USB没有拔插,PC就不会重新枚举USB为了解决这个问题,我做了软件复位跟,软件模拟USB拔插。 1、软件复位 这里我用的是HAL库的软件复位,复位前先把中断关掉,再复位,在你需要复位的代码处添加下面代码即可,代码如下: __set 阅读全文
posted @ 2018-10-29 18:28 白菜没我白 阅读(6180) 评论(1) 推荐(2) 编辑
摘要: 我们做USB通信时,通信成功后,往往要检测USB设备的拔插状态,这里就USB拔插进行一下说明。 参考:https://www.imooc.com/article/17438 先说明一下,我这里只是用C#写上位机的自定义USB设备的检测,是调用window的DLL来实现USB设备通信的,具体通信过程说 阅读全文
posted @ 2018-10-25 09:40 白菜没我白 阅读(8864) 评论(1) 推荐(2) 编辑