自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 backtrace in gdb

用法: Backtraces 多线程用法: Debugging Programs with Multiple Threads call stack相关: FP寄存器及frame pointer介绍 ARM: Call stack generation with no frame pointer

2016-12-12 10:48:59 529

原创 git杂记

merge merge合并的是改动,而不是内容 merge合并的是从选中的提交到base提交这一段的所有改动 cherry_pick可以只合并一个提交

2016-12-08 14:58:32 370

原创 gdb + openocd 调试嵌入式软件

1.openocd是硬件层次的调试,gdb是源码层次的调试。2.在gdb中可以使用monitor发送openocd的命令,例如monitor reset;halt3.JTAG有4种复位方式: There are many kinds of reset possible through JTAG, but they may not all work with a given board an

2016-12-06 23:16:22 8310

原创 gdb

作用: 流程控制 - 单步,断点,全速 环境查看 - 变量,内存文档: GDB十分钟教程 100-gdb-tips (这个github上有很多实用的文档,例如100-gcc-tips,可以看一下)

2016-12-03 23:02:52 412

原创 macbook pro问题

现象:force touch突然没有力反馈了。 解决方法:重置SMC click here 原因: System Manager Controller(系统管理控制器)控制着电脑内的很多硬件模块,如背光灯,按键检测,触控板管理等。 2015款的RMBP使用的是TI的Stellaris LM4FS1EH芯片作为SMC。 相关链接: Mac无法开机怎么办?苹果Mac重置SMC方法详细介绍 重置

2016-11-23 10:25:07 573

原创 linux上使用openocd的问题

32-bit的openocd在64-bit OS上使用时会报错: Error while loading shared libraries: libftdi.so.1: cannot open shared object file: No such file or directory解决方法: 安装32-bit的libftdi库 $ sudo apt-get install libf

2016-11-22 14:00:51 1872

转载 TCP 的那些事儿(转)

TCP 的那些事儿

2016-11-01 17:32:41 294

转载 MicroPython - 硬件

在MicroPython的源码中,已经包含了NUCLEO-F411RE开发板,只要编译一下,将固件下载进去就可以运行。 STM32F411是有USB功能的,但是NUCLEO-F411RE开发板没有预留USB接口。这样就无法使用PYBFlash磁盘,很多驱动程序就无法直接复制进去。还好它将USB的GPIO引出来了,我们通过一个microUSB转接板就可以使用USB功能。具体接线如下: PA12 -

2016-10-18 17:31:18 1200

原创 MicroPython - 问题整理

Creating Pyb Modules Is 32kByte enough for micropyhton? Wanted: Porting guide / developer guide

2016-10-18 09:13:32 1786

原创 MicroPython - 下载

使用NULCEO_F411RE,根据文档说明,有3种下载方式: 1. DFU:makeBOARD=NULCEOF411REdeploy2.ST−LINK: make BOARD=NULCEO_F411RE deploy 2. ST-LINK: make BOARD=NULCEO_F411RE deploy-stlink 3. OPENOCD:$ make BOARD=NULCEO_F411R

2016-10-17 11:16:18 1826 1

原创 What is HEAD in Git?

What is HEAD in Git? Why git can’t do hard/soft resets by path?

2016-10-14 11:49:42 225

转载 [转]git checkout 命令详解

原文链接:git checkout 命令详解

2016-10-14 11:28:18 1014

原创 git教程

git - 简明指南 Git Community Book 中文版

2016-10-13 17:27:13 251

原创 ABI(Application Binary Interface)

wikipedia

2016-10-12 22:03:55 528

转载 Linux下开发STM32

Ubuntu下使用Makefile开发STM32

2016-10-11 09:23:28 532

原创 netif的linkoutput和output

linkoutput实际指向low_level_output,由IP和ARP层调用, output实际指向etharp_output,由IP层调用 它们功能上的区别是:linkoutput是发送ETH包,output是发送IP包。 所以它们本质上的区别是,linkoutput是在已知目的MAC地址时调用,而output则相反。

2016-10-09 17:17:24 2280

原创 LwIP代码目录结构

所有的内核头文件都放在include目录下,而需要port的部分则由用户自己组织。FreeRTOS也是这样,这样的好处是便于管理和使用。

2016-09-29 16:34:15 1166

原创 TLS学习笔记

在TLS中,非对称加密的作用有2个: 1.验证数字证书 2.传递对称加密的密钥

2016-09-28 20:27:00 643

原创 mbedtls使用笔记

以 mbedtls_ssl_conf 开头的API函数被调用后,还需要调用mbedtls_ssl_setup来使其生效;以 mbedtls_ssl_set 开头的API函数被调用后会立即生效

2016-09-28 16:49:33 5293

原创 wireshark如何分析加密的WIFI数据包

使用wireshark抓到的wifi数据包如果是加密的,就只能显示密文,无法得到真正的数据。 如果知道AP和SSID和key,就可以解密wifi数据包,显示上层协议的数据。 在wireshark中设置如下: Edit -> Preferences -> Protocols -> IEEE802.11 -> Edit。 点击“+”新建一个entry,以我的AP为例,Key type选择wps-

2016-09-28 16:39:40 20686 4

原创 LwIP控制块

控制块其实是协议栈运行的核心,不同层对应着不同的类型的控制块 用户层:netconn 传输层:pcb 网络层:netif

2016-09-26 22:43:55 531

原创 SSL/TLS从入门到庖丁

初次了解: SSL/TLS协议运行机制的概述 图解SSL/TLS协议 进一步了解SSL handshake的过程和细节: 证书的应用之一 —— TCP&SSL通信实例及协议分析(中) SSL握手协议 有关数字证书知识: 那些证书相关的玩意儿(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等) 官方文档: RFC 5246: The Transport L

2016-09-26 10:11:44 545

原创 LwIP有无操作系统的区别

netif的input是由网卡驱动在收到以太网包后调用 在无操作系统下: netif的input是ethernet_input,里面直接调用LwIP的内核函数来处理以太网包 在有操作系统下: netif的input是tcpip_input,里面仅仅是将收到的数据包封在TCPIP_MSG_INPKT消息内,然后发给LwIP内核线程(tcpip_thread),在LwIP内核线程调用内核函数来处

2016-09-25 20:48:28 2918

原创 LwIP的操作系统模拟层移植

移植操作系统模拟层,本质上就是完成操作系统接口函数的编写:信号量,邮箱,互斥量和线程。 信号量,邮箱和互斥量的操作:new,free,write,read 对于信号量,邮箱,额外四个操作:try_write,try_read,valid,invalid 线程的操作:create

2016-09-25 20:35:01 1083

原创 LwIP和FreeRTOS的头文件冲突问题

LwIP和FreeRTOS都有一个timer.h头文件,可能会造编译错误(没有找到正确的头文件),lwip的作者似乎已经考虑到了这一点,在lwip的源码中,都是以#include “lwip/timer.h”的方式来包含头文件,这样就可以找到正确的头文件了

2016-09-25 15:05:39 1046

原创 NETIF_FLAG_LINK_UP的意义和作用

NETIF_FLAG_LINK_UP字段主要由DHCP和IP模块使用: DHCP:在dhcp_start中,判断网卡是否link up来决定是否直接发discovery包 IP:在ip_route中,判断网卡是否link up来选择一个有效的网卡发IP包时会判断link up,收到IP包不用判断,因为既然能收到IP包,那就说明网卡一定是link up的

2016-09-19 10:07:58 1976

原创 LwIP调试输出

LwIP调试输出有3个开关: LWIP_DBG_ON:总开关 LWIP_DBG_TYPES_ON:类型开关 LWIP_DBG_MIN_LEVEL:等级开关 LWIP_DBG_TYPES_ON和LWIP_DBG_MIN_LEVEL是在lwipopt.h由用户定义的 一个调试类型的debug值可以是这样形式定义的: LWIP_DBG_ON | LWIP_DBG_TYPES_ON | LWIP

2016-09-14 23:06:12 3737

原创 dhcp_start

dhcp_start会检查当前网卡的链路是否active,若是,则直接调用dhcp_discovery,否则,设置dhcp的state为INIT。 用户应该在在网卡active后调用netif_set_link_up,netif_set_link_up判断网卡是否设置了DHCP的flag来调用dhcp_network_changed,dhcp_network_changed内判断网卡当前的DHCP

2016-09-14 09:45:35 1557

原创 netif_set_link_up和netif_set_up的区别

netif_set_up是使能网卡,设置NETIF_FLAG_UP标志位,必须在网卡被使用前用户来调用 netif_set_link_up是当网卡链路层active时由网卡驱动来设置的,如,station关联上AP后就应该调用netif_set_link_up

2016-09-14 09:36:34 5822

原创 NETIF_STATUS_CALLBACK何时会被调用

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-09-13 17:54:16 1509

原创 我的技术路线

RTOS和TCP/IP是核心,应该重点研究编译和调试是工具,应熟悉熟练

2016-08-13 22:45:38 425

原创 书单

前记: 有很多好书,看后慢慢就忘记了,甚至连名字都忘了,就在这里记下那些曾经看过的好书。

2016-08-13 17:39:06 226

原创 7 - 9月学习计划

make 时间:7月DAP-Link 计划时间:8, 9月

2016-07-10 18:29:04 233

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-07-10 18:20:27 222

转载 Make 命令教程

原文链接:http://www.ruanyifeng.com/blog/2015/02/make.htmlMake 命令教程作者: 阮一峰日期: 2015年2月20日代码变成可执行文件,叫做编译(compile);先编译这个,还是先编译那个(即编译的安排),叫做构建(build)。Make是最常用的构建工具,诞生于1977年,主要用于C语言的项目。但是实

2016-07-08 14:23:33 376

原创 架构师和程序员的区别

架构师 = 建筑设计师程序员 = 砌砖工

2016-07-08 09:16:12 1432 1

原创 CMSIS-DAP和OpenSDA的关系

根据NXP官方介绍

2016-07-05 17:15:48 2939

转载 MAC和PHY的区别

转载地址:http://www.cnblogs.com/feitian629/archive/2013/01/25/2876857.html一块以太网网卡包括OSI(开方系统互联)模型的两个层。物理层和数据链路层。物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制

2015-03-26 22:33:25 608

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除