关闭

Trace32使用之基本语句和关键字

首先介绍一下Trace32脚本概貌: Trace32提供了强大的脚本控制功能,可以做到所有的GUI的工作,还包括GUI无法完成的工作。 正因为其脚本提供的功能过于强大,导致很多功能在Trace32软件上你找不到,这部分得用脚本来驱动使用。更多的trace32使用请参考http...
阅读(4776) 评论(0)

MIPS 指令集(共31条)

MIPS 指令集(共31条) MIPS 指令集(共31条) 助记符 指令格式 示例 示例含义 操作及其解释 Bit # 31..26...
阅读(42920) 评论(1)

P2P穿透NAT原理

论坛上经常有对P2P原理的讨论,但是讨论归讨论,很少有实质的东西产生(源代码)。呵呵,在这里我就用自己实现的一个源代码来说明UDP穿越NAT的原理。首先先介绍一些基本概念:         NAT(Network Address Translators),网络...
阅读(887) 评论(0)

edn stumpy 的博客 ST-LINK 仿真器修复

周末不小心烧坏了一个st-link,悲剧,在网上找到下面的文章,据说可以修好。  ST-LINK 仿真器修复    ST-LINK损坏,可能是无意将+12V电源线接到了仿真器TVCC引出线上了。表现的症状是能正常连接电脑,能出现可移动磁盘,但接到目标板时会造成...
阅读(1823) 评论(3)

使用Wiz发blog的设置

API地址:http://blog.csdn.net/[userID]/services/MetaBlogApi.aspx  userID就是自己的账号通过 Wiz 发布...
阅读(1507) 评论(5)

lwip ARP相关处理(3)

终于说到(1)中提到的update_arp_entry函数了这个函数比较简单,调用之前说的find_entry找到一个可用的ARP表项索引,然后更新之,插入最新的MAC地址,对于之前是pending并且有缓冲项的,就把缓冲项指向的数据包发送出去。 再来看看etharp_query这个函数,etharp_output向指定ip发包的时候,会调用之。如果在ARP表项中找到stable的,就直接发出去,否则就创建一个,并且把这个包挂在缓冲项下,发送一个ARP请求出去,收到应答才把缓冲项的数据包发出去。注意在挂接数...
阅读(2169) 评论(0)

lwip ARP相关处理(2)

这里说一下find_entry这个函数,这个函数主要是查找ARP表和在ARP表中申请一个empty的表项 这里有必要先翻译一下开头的注释:函数有两个参数,一个ip地址,一个flag如果ip地址有效,就返回一个pending或者stable状态的表项索引。如果找不到,就创建一个新的,并把这个ip地址设置上去,状态变为empty。状态有上层调用函数去改变。 如果ip地址是空的。也返回一个empty的表项索引 上面的都不符合并且flasg标志为ETHARP_TRY_HARD,那么就尝试从ARP表中删除一个最早的表...
阅读(1940) 评论(0)

lwip ARP相关处理(1)

参数如下netif表示收到数据包的网络接口,ethaddr是MAC地址,其实也是netif里面的,p就是收到的数据包了这个函数有一些不正要的东西被去掉了 void etharp_arp_input(struct netif *netif, struct eth_addr *ethaddr, struct pbuf *p){  struct etharp_hdr *hdr;  struct eth_hdr *ethhdr;  /* these are aligned properly, whereas the...
阅读(2323) 评论(0)

STM32中重定位printf到串口输出

#include "stdio.h" #ifdef __GNUC__/* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf     set to 'Yes') calls __io_putchar() */#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)#else#define PUTCHAR_PROTOTYPE int fputc(int ch, FI...
阅读(4393) 评论(0)

交换原理

交换机功能(至少):地址学习转发/过滤防止回路 交换机通过内部MAC地址表做出转发/过滤的决定这个表存在交换套片的内部初始化的MAC是空的。交换机收到数据帧之后,查找MAC表,如果没有相应的表项,就把数据帧发到(flood)所有的端口上。通过读取回应帧的源MAC地址,来构造一下对应表,下次就不需要flood了。直接查表发数据。如果某一端口长期没有发送数据,对应端口的表项就会因超时而清空。冲突域,由交换机隔开的一个个网络广播域,由路由器隔开的一个个网络 交换机的每一个端口所连接的网段都是一个独立的冲突域交换机...
阅读(545) 评论(0)

Intel82541内部phy.rtf

MII即媒体独立接口,它是IEEE- 802.3定义的以太网行业标准。它包括一个数据接口,以及一个MAC和PHY之间的管理接口MII总线是一种用于将不同类型的PHY与相同网络控制器(MAC)相连接的通用总线。网络控制器可以用同样的硬件接口与任何PHY MII口是用4根线来传输数据的,GMII是用8根线来传输数据的。 网卡是IEEE兼容的,所以PHY使用GMII/MII接口和内部的MAC通信。速度是2.5M-125M. GMII/MII都是使用MII的管理接口,和寄存器,大多数的MII和GMII信号使用同样的...
阅读(797) 评论(0)

Intel82541 Phy和MAC的初始化.rtf

       82541上电复位时候,82541会根据默认的寄存器配置初始化自己。如果有EEPROM,会根据EEPROM的配置字来初始化自己并立即进行自适应。       可以通过GMII和MII接口来控制PHY进行link配置。        当不能自适应link的时候,必需使用软件去配置link。        下面将研究内部对PHY的link设置问题: 自协商:        自协商是两个接口间相互交换信息。来达到接口通信速率,全双工/半双工,流控的对应。        当在MAC上设置了流控,那么必...
阅读(2941) 评论(0)

STM8S105 SPI 初始化

以下驱动是SPI2的应用 static void MMC_SPI_Config(void){ SPI_DeInit(); GPIO_Init(GPIOC, GPIO_PIN_2, GPIO_MODE_OUT_PP_HIGH_FAST); GPIO_Init(GPIOC, GPIO_PIN_4, GPIO_MODE_IN_FL_NO_IT); GPIO_Init(GPIOE, GPIO_PIN_5, GPIO_MO...
阅读(8888) 评论(0)

STM8S105 TIM1 TIM2 定时器的定时时间初始化

很多刚接触STM8单片机的入门者不知到如何使用TIM1和TIM2的定时器作为定时功能。下面介绍如下:TIM1的初始化1us:系统时钟是16M。void set_TIM1_nus(u16 nus){ /*1u的记数周期*/ /*TIM1_TimeBaseInit(0x0F,TIM1_COUNTERMODE_UP,nus,TIM1_RCR_RESET_VALUE);*/ /* Set the Autore...
阅读(16195) 评论(1)

stm8触摸按键调试笔记(1)

默认状态下触摸按键所有键的灵敏度是一样的,但是实际应用不是这样的。各个键都有可能不一样。实现不同灵敏度的方法如下:TSL_SCKey_Init()函数里面初始化了灵敏度    pKeyStruct->DetectThreshold = SCKEY_DETECTTHRESHOLD_DEFAULT;我们增加一个数组,保存各个按键的灵敏度:const u8 SCKEY_DETECTTHRESHOLD[NUMBER_OF_SINGLE_CHAN...
阅读(6279) 评论(1)

I.MX51 IPU读书笔记(2)

Display port 这个端口用来和显示器进行通信,可以直接通信,或者通过图形加速器或者TV解码器。 同步模式显示,IPU传输一个二维的像素块到显示器,并且和显示器刷新周期。     在同步模式下,对于没有显存的显示器,或者电视,IPU会自动把内存的显示缓冲区数据刷新到显示器上。对于“smart”显示器,这个模式被用来传输一个像素矩阵块到显示器的显存中。这个块可能只是一个全屏显示像素的一部分,显示器的刷新是由显示器内部的控制器进行的。在同步模式的所有操作中,IPU发送...
阅读(2859) 评论(3)

I.MX51 IPU读书笔记(1)

IPU-图像处理单元     IPU是MX51的图像和视频子模块。他完美的支持从摄像头和显示设备传过来的视频数据流。支持的功能如下:     能和摄像头,显示器,图形加速器,TV编码器/解码器等进行连接     图像相关的处理和操作有:传感器图像信号处理,显示器处理,图形转换等     摄像头浏览   CSI:摄像头接口,或者有这个接口的相关设备。IPU有两个CSI接口 DI:显示接口,提供给显示器接口,或者有相关接口的设备,IPU有两个显示接口 ...
阅读(2752) 评论(2)

STM32串口中断方式接收

首先中断的配置 void NVIC_Configuration(void) { NVIC_InitTypeDef NVIC_InitStructure; #ifdef  VECT_TAB_RAM    /* Set the Vector Table base location at 0x20000000 */   NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); #else  /* VECT_TAB_FLASH  */   /* S...
阅读(19737) 评论(7)

MIPS 74K内核Vectored Interrupt Mode处理方式

在VI模式里,通过优先级判断和产生的中断向量能够直接指向中断处理程序,VI模式下的中断能够使用GPR shadow寄存器集来加快中断的处理速度。当Config3 vint=1,config3 veic=0,IntCtl vs不等于0,Cause iv =1,Status bev=0时,VI中断模式有效。 在VI模式里有6个独立的硬件中断,时钟和性能计算器被组合到一个合适的硬件中断中。 中断优先级顺序HW5>..>HW0>SW1>SW0. 一个中断产生的过程: (例子待续)...
阅读(1509) 评论(0)

MIPS 74K内核Interrupt Compatibility Mode处理方式

     这是一个默认的中断处理模式,CPU收到一启动异常的时候,内核进入这种模式。在这种模式中,中断是非向量的,中断会被分派到异常向量偏移0x180的位置处(Cause IV=0),或者0x200的位置(Cause IV = 1).当以下的任何一个条件成立时,这种模式有效:     Cause IV=0     Status BEV=1     IntCtl VS =0(当VI模式不存在或者禁止时) compatibility mode的中断处理程序例子: /* * 解设: * -...
阅读(1473) 评论(0)
48条 共3页1 2 3 下一页 尾页
    个人资料
    • 访问:181385次
    • 积分:1884
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:12篇
    • 译文:0篇
    • 评论:42条
    最新评论