STM32F4-DISCO 学习之LWIP TCP学习
TCP比UDP就复杂多了,UDP就像串口一样发发随便奶奶,但是TCP不是,有监听啊,查询啊什么,可以看看电脑的TCP连接,多得呢. 所以,在官方的例子你们,TCP Client就是6个函数: static err_t tcp_echoclient_recv(void *arg, struct tcp_pcb *tpc...
TCP比UDP就复杂多了,UDP就像串口一样发发随便奶奶,但是TCP不是,有监听啊,查询啊什么,可以看看电脑的TCP连接,多得呢. 所以,在官方的例子你们,TCP Client就是6个函数: static err_t tcp_echoclient_recv(void *arg, struct tcp_pcb *tpc...
如果已经移植好LWIP,就可以开始使用RAW API,如果上操作系统,还能做NETCONN呢,不过操作系统我还没搞上.所以,就只好用一些RAW API.对于UDP来说,主要函数就那么几个: udp_new 创建一个udp块. udp_bind 绑定IP,端口. udp_recv 接收数据. ...
之前使用针对Discovery的移植,实在版本太老,LWIP是6年前的,但是EVAL的是新的,所以,可以尝试移植EVAL的.详细的文件就是STSW-STM32070.得到的文件列表. 首先删掉_htmlresc文件夹,这个文件夹只是各种LOGO,没什么用. 打开Project文件夹,...
我也不知道为什么叫Bitband,但是Bitband这个东西是效率高,直接操作绝对内存. 因为Bit-Banding是M4的特性,所以应该看M4的开发指南(感叹一句:现在就是科技进步太快,所以东西跟不上了.) 上面有权威说明Bit-Banding区域: 对照手册,支持B...
STM32F4有DSP和FPU,FPU很容易就能开启了,在system_stm32f4xx.c就有设置: /* FPU settings ------------------------------------------------------------*/ #if (__FPU_PRESENT == 1) && (__FPU_USED == 1) SCB->CPACR |= ...
对于ULPI,其实并没有什么高深的地方,和使用普通USB 1.1一样,只不过处理速度更快呢,需要外置PHY芯片,外置PHY可以选择类似USB3300这些,都是通用的,没什么配置的.但是USB2.0要求的IO也比较多,而且要求AHB大于30MHz,我是猜想啊,8个IO,每个...
关于以太网这个,原来真是费事,先是下载LWIP.然后开始对着去写ETH驱动,也没ETH库,都快骂ST不厚道了,然后突然发现一个神奇的网址,原来是我自己眼瞎.ST本身提供很好地库.地址是: http://www.st.com/web/catalog/tools/FM147/CL1794/SC961...
这次为了让CS43L22叫起来,需要花点功夫,接下来就是软件上的WAV解码了,跟这个关系就没想象中密切了.软件就是把WAV解码出来,把数据放到播放缓存你们,就OK了. 这个芯片特性,我就不罗嗦,大家可以到官网看看.http://www.cirrus.com/cn/prod...
DMA具备双缓冲机制,可以让数据在传输时候不断流,也就是我们所谓的PING-PONG-BUFFER,也就是说有AB两个BUFFER,DMA访问A时候,CPU访问B,DMA访问B时候,CPU访问A.这种实现导致总线矩阵相对复杂,所以,一般低端MCU也不会有这个机制.但是在做这...
首先本来不用那么烦人的,但是因为之前SD卡驱动有问题,导致f_write时候总是出错0x01,DISK_ERROR,然后自己想办法重写了那个驱动后,就没什么问题了,归根结底,我一开始就拿了微雪他家的代码,因为我连接方式跟他的一样,结果发现各种BUG,这...