stm32开发笔记
文章平均质量分 72
Mr_liu_666
keep coding
展开
-
LWIP的tot_len长度修改后发生错误_IP帧格式_UDP帧格式_STM32移植LWIP后的使用问题_UDP帧格式WireShark抓包详解
协议号IPV4和UDP包头长度20Bytes数据包总长度,38,数一数:一行16Bytes,总共4行,64-4=60Bytes,其中含有以太网的14+8=22Bytes,正好,换言之,整个以太网包共有60bytes,其中22Bytes是UDP内容,也就是以太网的数据段,这个UDP包里面有地址和端口信息和真正要传输的数据。跳数,再跳255次这个包就删了。IP之上使用的是UDP的协议。源IP和目的IP源IP的端口和目的IP的端口,注意FFFF是65535,所以端口号不..原创 2021-04-23 20:39:40 · 785 阅读 · 0 评论 -
Please select first the target STM32F4xx device used in your application (in stm32f4xx.h file)
参考了不少文章https://blog.csdn.net/weixin_39560549/article/details/79514303不过有一些解释原文没有给出:Please select first the target STM32F4xx device used in your application (in stm32f4xx.h file)这句话的意思是:在你的工程里选你用到的芯片(首个STM32F4xx型号的芯片),用人话讲就是在编译的时候,编译器不知道你用的是什么芯片,看原创 2021-04-05 01:12:53 · 7580 阅读 · 7 评论 -
好的示波器可以显示正常的方波,自己制作示波器只有正弦波
(今天开始用自己的stm32f429,液晶屏,自带的ADC做一个示波器)众所周知,我们用示波器是测试波形的,我们当然不希望它失真,如果一个10KHz的方波输入我们的示波器,我们看到的是一组正弦波,就会显得wired,太奇怪了,我们做的也没毛病啊,采样率也达到了5倍了啊,为啥出来的是不标准的方波甚至是正弦波呢,一切波都是基波和多个频率的正弦波合成出来的,方波是基波加奇次谐波合成出来的,我们取...原创 2019-01-28 23:50:17 · 5266 阅读 · 0 评论 -
#define HC574_PORT *(uint32_t *)0x64001000是啥
0x64001000明显是一个uint32_t 的指针,前面再加一个 * 就是一个uint32_t 的变量,这个变量的地址是0x64001000,改变这个变量的值就可以改变地址为0x64001000的值。而这个0x64001000就是FMC的输出地址,换言之就是改变这个变量就能使FMC的并口输出变成那个,而FMC的输出通过D触发器574连接到了LED和AD什么的外设,这里对于574,就是并口直...原创 2019-02-06 09:42:21 · 1706 阅读 · 0 评论 -
EmWin学习课堂_小白EmWin_EmWin快速入门_EmWin动态内存,显示和触摸屏_EmWin基础配置
一、先说说什么是EmWin,它就是一款中间软件包,弄好了之后,我们的界面设计就会变得很简单,在电脑GUI_Builder上做一个界面,生成.c文件,复制到自己的工程里面,我们的显示屏就能得到一模一样的功能。二、在我们使用一个带触摸和显示器的系统的时候,首先就是驱动他们,做完了就应该是这样的:也就是说我们的系统首先得有一个带触摸(不带也行)的系统,接着就是把这两个东西和EmWin关联起来...原创 2019-02-11 23:48:35 · 13930 阅读 · 10 评论 -
stm32计算器_EmWin计算器_使用栈_带括号
本文使用EmWin,如果不使用EmWin,本文也很有参考价值,只是将触摸屏拆解成键盘和显示而已。我使用的是安富莱V6的板子,如果是其他板子的话,参照https://blog.csdn.net/Mr_liu_666/article/details/87007357进行最基础的EmWin的移植就可以使用EmWin。总体来说,代码分为两部分,一部分是GUI,负责算式的输入和结果的显示,用GUIB...原创 2019-02-23 11:06:57 · 2078 阅读 · 1 评论 -
EmWin学习课堂_小白EmWin_EmWin快速入门_EmWin用Button控件显示文本
说到EmWin显示文本,大概就是设置字体大小,设置背景颜色,清屏(背景颜色更新),设置文本颜色,设置文字显示格式,再就是显示了:GUI_SetFont(&GUI_Font8x16);GUI_SetBkColor(GUI_BLUE);GUI_Clear();GUI_SetColor(GUI_RED);GUI_SetTextMode(GUI_TM_NORMAL);GUI_Dis...原创 2019-02-19 17:46:44 · 3879 阅读 · 1 评论 -
CreateProcessfailed,Command : 'E:\Keil5\…'stm32编译例程不通过 KEIL5 OPtions for target After Build/rebuild
学习FPGA的时候,我们选择了一款“古典的”板子,黑金iBoard电子学堂,东西很好,但是想尝试往ARM里面烧录的时候,弹出了这一句错误提示:After Build - User command #1: 'E:\Work\…………'*** Error: CreateProcess failed, Command: 'E:\Work\…………'".\Obj\iBoard_demo.axf"...原创 2019-04-20 15:26:14 · 2627 阅读 · 0 评论 -
如何阅读datasheet(数据手册)(1)
记得最开始的时候,老师交给我一个模块,告诉我它叫啥名字,就让我拿arm去调试了,我啥也没有啊,老师就叫我查datasheet,我下载下来一看,英文的,正好英语不错,不慌,上眼一看,专业词汇短语有点多,上Google Translator,依旧不慌,但是最终我看的时间很长,做东西调试的时候还有很多点不知道,回头看datasheet里面还有,原来我是缺少了一个datasheet的合理阅读方法,最近看到...原创 2019-01-23 11:36:19 · 3737 阅读 · 0 评论 -
安富莱V6供电问题,突然黑屏
安富莱V6做的是真的好,输入电压范围极其宽,9-40V,这是因为他们使用了优秀的2596S5.0,这个芯片本来就这么宽,我用的是12V的锂电池供电,然后在看完了一部分STemWIn之后打算睡觉,突然V6黑屏了,前所未有的恐惧you know?三步:step 1 :确定没有芯片烧毁:用手触摸2596,温热正常,手指背面触摸F429,基本等同于室温,正常step 2 :嗅,嗅,没有芯片烧焦的糊...原创 2019-02-01 23:58:20 · 292 阅读 · 1 评论 -
stm32菜单设计——面向对象——结构体化
很多朋友在编写单片机的时候都会涉及到液晶的显示,如果独立开发一个系统的话,必然也就会涉及到界面化,有很多的朋友嫌麻烦,会采用不断检测按键,之后按下这个就显示这一张界面,哪一张就显示哪一个,但是事实上程序小的时候问题不大,程序一旦变得很大,界面很多,跳来跳去就会令人十分头疼,MRLIU在这里学习了一种有点面向对象的意思的程序,具体内容如下#include "menu2.h"#include"rat...原创 2018-07-12 09:04:40 · 1154 阅读 · 0 评论 -
stm32f030烧录一次程序就不能检测到解决方法
这几天在做一个小项目,需要用到stm32f0系列的单片机,画好的板子引出swd,方便调试和烧写程序,可是第一次swd烧写程序后,想再次烧写,发现keil里始终找不到设备,而且我的程序里也并没有复用swd的两个引脚,很是疑惑。上网找了很多方法,我试了几个发现,只有一个对我这个情况有用。步骤:将单片机reset脚拉低,keil即可找到设备,此时将reset脚拉高,进行swd烧写,成功。 ...转载 2018-07-18 09:02:57 · 10157 阅读 · 7 评论 -
ads1115 IIC接口 stm32 解决
#include "stm32f0xx.h"#define WR_REG 0x90#define RE_REG 0x91/***********************************??????**********************************************/#define DATA_RE...原创 2018-07-15 20:08:46 · 3841 阅读 · 0 评论 -
stm32单片机确定好不好使方法
不管是多么简单的最小系统,上面基本上除了电源指示灯以外都会有一个其他的指示灯,就比如PC13 PC15之类的。在开发的过程中,我们很多时候要例行检查一下,烧进去没有啊,烧进去之后运煤运行啊,单片机能不能正常工作啊?好了,我们只需要初始化PC13 或者 15 ,让他输出高低高低,就行了,看看能不能看到闪烁,有的话就是单片机没问题,不好使的话,就闷头该程序把。测试过的代码在下面,代码不难...原创 2018-07-31 17:08:10 · 2487 阅读 · 0 评论 -
如何解决在一个文件里声明了的东西在另一个文件里extern时的编译错误
首先,我们在一个.h中定义了一个变量或者数组,在另一个文件里引用,没问题,但是如果我们引用两次就会说我们redefine,如果我们单纯的定义一个,在另一个.c里面extern,可行,但是会很乱有时会出现不知名的错误。笔者发现了一个方法,具体就是:/*这个是在c文件里面的定义,很常规*/#include "RandomKey.h"u8 KeyCode[KEY_NUM_MAX]; ...原创 2018-10-27 16:47:19 · 964 阅读 · 0 评论 -
使用KEIL5和HAL库将程序写进STM32之后无法单步调试的解决
在stm32f1xx_hal_msp.c文件中有这么一句__HAL_AFIO_REMAP_SWJ_DISABLE();该语句使JTAG-DP和SW-DP同时失能了, 我用的是STLINK下载器,使用SW Device的是SW-DP。这就导致了调试device失能关闭就不能调试了,注释或删除该语句,点击调试按钮->点击RUN发现错误窗口就不会出现了。--------------------...转载 2018-12-13 15:08:30 · 2779 阅读 · 0 评论 -
关于SPI总线的时钟极性(CLKPolarity)和时钟相位(CLKPhase)以及时钟计算
有一些文章写得上升沿下降沿真的不如第一个边沿和第二个来的易懂原创 2018-12-13 21:24:59 · 8153 阅读 · 0 评论 -
如何阅读datasheet(数据手册)(2)
现在接着说说之后的部分怎么进行阅读,我们又能获得什么有意思的资料(8)Absolute Maximum Ratings://得看 绝对最值,讲了到了此值就会损坏,而不是正常运行极值 包括烧毁电压,烧毁功率,运行时候温度使之损坏的最值,保存的最值,焊接温度信息最大值 (9)Electrical Characteristics//得看...原创 2019-01-23 19:42:53 · 2048 阅读 · 0 评论 -
例程有error,程序崩溃,文件找不到
本文是关于stm32,KEIL编程的,但是对于一些其他的IDE一般来说也具有普适性。例程到手统统都是0error,0warnings,然而,在一次使用安富莱V6的例程的时候,我发现在编译的时候通不过,都是error ,原因显示文件找不到,现象如下:黄色惊叹号表示:找不到你这个文件,我于是就看了一下包含的文件目录,看看是不是没把目录包括进去:每一个都有,比如说startup.s,...原创 2019-01-26 23:29:27 · 358 阅读 · 0 评论 -
关于 stm32f103 JLX12864液晶显示的小错误
void Draw8x16(u8 page,u8 column,u8 *dp){ u8 i,j; for(j=0;j<1;j++) { SetAddress(page+j+1,column); for (i=0 ; i < 8 ; i++) { LcdWriteData(*dp); /*????LCD,?????8 ????????...原创 2018-07-09 10:59:27 · 1570 阅读 · 0 评论