- 博客(51)
- 资源 (7)
- 收藏
- 关注
原创 AI绘图并不能完全代替设计师的工作
另一方面,AI绘图工具的出现也意味着设计师需要不断地学习和更新自己的技能,以适应新的工具和技术的发展。对于设计师来说,要想在这个时代立足,需要具备扎实的设计基础知识和技能,创意思维和审美能力,沟通能力和团队合作能力,以及学习能力和适应能力。AI绘图工具只是一种辅助工具,它可以帮助设计师更快速地完成一些简单的设计任务,但是对于复杂的设计任务,AI绘图工具并不能完全取代设计师的工作。设计师需要具备的不仅仅是绘图技能,还需要具备创意思维、审美能力、沟通能力等多方面的能力,这些能力是AI绘图工具无法替代的。
2023-04-11 14:48:51
546
原创 无刷电机驱动解析
1.概述无霍尔的BLDC控制方案与有霍尔BLDC的基本原理相似,都是用所谓“六步换向法”,根据转子当前的位置,按照一定的顺序给定子绕组通电使BLDC电机转动。所不同的是无霍尔BLDC不需要霍尔效应传感器,通过检测定子绕组的反电动势过零点来判断转子当前的位置。与有霍尔的方案相比,最明显的优点就是降低了成本、减小了体积。且电机引线从8根变为3根,使接线调试都大为简化。另外,霍尔传感器容易受温度和磁场等外界环境的影响,故障率较高。因此,无霍尔BLDC得到越来越多的应用,在很多场合正逐步取代有霍尔BLDC。 本文介
2023-04-06 15:17:33
26119
转载 Trace32使用之基本语句和关键字
首先介绍一下Trace32脚本概貌:Trace32提供了强大的脚本控制功能,可以做到所有的GUI的工作,还包括GUI无法完成的工作。正因为其脚本提供的功能过于强大,导致很多功能在Trace32软件上你找不到,这部分得用脚本来驱动使用。更多的trace32使用请参考http
2011-08-31 16:40:04
12633
2
转载 MIPS 指令集(共31条)
MIPS 指令集(共31条)MIPS 指令集(共31条) 助记符 指令格式 示例 示例含义 操作及其解释 Bit # 31..26
2011-08-30 10:06:13
100642
3
转载 P2P穿透NAT原理
论坛上经常有对P2P原理的讨论,但是讨论归讨论,很少有实质的东西产生(源代码)。呵呵,在这里我就用自己实现的一个源代码来说明UDP穿越NAT的原理。首先先介绍一些基本概念: NAT(Network Address Translators),网络
2011-07-05 01:31:03
12215
转载 edn stumpy 的博客 ST-LINK 仿真器修复
周末不小心烧坏了一个st-link,悲剧,在网上找到下面的文章,据说可以修好。 ST-LINK 仿真器修复 ST-LINK损坏,可能是无意将+12V电源线接到了仿真器TVCC引出线上了。表现的症状是能正常连接电脑,能出现可移动磁盘,但接到目标板时会造成
2011-07-04 12:11:01
3289
4
原创 使用Wiz发blog的设置
API地址:http://blog.youkuaiyun.com/[userID]/services/MetaBlogApi.aspx userID就是自己的账号通过 Wiz 发布
2011-05-30 11:44:00
1747
2
原创 lwip ARP相关处理(3)
终于说到(1)中提到的update_arp_entry函数了这个函数比较简单,调用之前说的find_entry找到一个可用的ARP表项索引,然后更新之,插入最新的MAC地址,对于之前是pending并且有缓冲项的,就把缓冲项指向的数据包发送出去。 再来看看etharp_query这个函数,etharp_output向指定ip发包的时候,会调用之。如果在ARP表项中找到stable的,就直接发出去,否则就创建一个,并且把这个包挂在缓冲项下,发送一个ARP请求出去,收到应答才把缓冲项的数据包发出去。注意在挂接数
2011-05-29 22:58:00
2757
原创 lwip ARP相关处理(2)
这里说一下find_entry这个函数,这个函数主要是查找ARP表和在ARP表中申请一个empty的表项 这里有必要先翻译一下开头的注释:函数有两个参数,一个ip地址,一个flag如果ip地址有效,就返回一个pending或者stable状态的表项索引。如果找不到,就创建一个新的,并把这个ip地址设置上去,状态变为empty。状态有上层调用函数去改变。 如果ip地址是空的。也返回一个empty的表项索引 上面的都不符合并且flasg标志为ETHARP_TRY_HARD,那么就尝试从ARP表中删除一个最早的表
2011-05-29 22:26:00
2884
原创 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
2011-05-29 17:24:00
2963
转载 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
2011-05-14 12:54:00
7234
原创 交换原理
交换机功能(至少):地址学习转发/过滤防止回路 交换机通过内部MAC地址表做出转发/过滤的决定这个表存在交换套片的内部初始化的MAC是空的。交换机收到数据帧之后,查找MAC表,如果没有相应的表项,就把数据帧发到(flood)所有的端口上。通过读取回应帧的源MAC地址,来构造一下对应表,下次就不需要flood了。直接查表发数据。如果某一端口长期没有发送数据,对应端口的表项就会因超时而清空。冲突域,由交换机隔开的一个个网络广播域,由路由器隔开的一个个网络 交换机的每一个端口所连接的网段都是一个独立的冲突域交换机
2011-05-03 22:00:00
896
原创 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信号使用同样的
2011-04-29 21:42:00
1113
原创 Intel82541 Phy和MAC的初始化.rtf
82541上电复位时候,82541会根据默认的寄存器配置初始化自己。如果有EEPROM,会根据EEPROM的配置字来初始化自己并立即进行自适应。 可以通过GMII和MII接口来控制PHY进行link配置。 当不能自适应link的时候,必需使用软件去配置link。 下面将研究内部对PHY的link设置问题: 自协商: 自协商是两个接口间相互交换信息。来达到接口通信速率,全双工/半双工,流控的对应。 当在MAC上设置了流控,那么必
2011-04-28 21:44:00
3836
原创 STM8S105 SPI 初始化
<br />以下驱动是SPI2的应用<br /> <br />static void MMC_SPI_Config(void)<br />{<br /> SPI_DeInit();<br /> GPIO_Init(GPIOC, GPIO_PIN_2, GPIO_MODE_OUT_PP_HIGH_FAST);<br /> GPIO_Init(GPIOC, GPIO_PIN_4, GPIO_MODE_IN_FL_NO_IT);<br /> GPIO_Init(GPIOE, GPIO_PIN_5, GPIO_MO
2011-04-27 00:33:00
12568
原创 STM8S105 TIM1 TIM2 定时器的定时时间初始化
<br />很多刚接触STM8单片机的入门者不知到如何使用TIM1和TIM2的定时器作为定时功能。<br />下面介绍如下:<br />TIM1的初始化1us:<br />系统时钟是16M。<br />void set_TIM1_nus(u16 nus)<br />{<br /> /*1u的记数周期*/<br /> /*TIM1_TimeBaseInit(0x0F,TIM1_COUNTERMODE_UP,nus,TIM1_RCR_RESET_VALUE);*/<br /> /* Set the Autore
2010-12-30 21:24:00
22114
原创 stm8触摸按键调试笔记(1)
<br />默认状态下触摸按键所有键的灵敏度是一样的,但是实际应用不是这样的。各个键都有可能不一样。<br />实现不同灵敏度的方法如下:<br />TSL_SCKey_Init()函数里面初始化了灵敏度<br /> pKeyStruct->DetectThreshold = SCKEY_DETECTTHRESHOLD_DEFAULT;<br />我们增加一个数组,保存各个按键的灵敏度:<br />const u8 SCKEY_DETECTTHRESHOLD[NUMBER_OF_SINGLE_CHAN
2010-12-27 13:44:00
8707
原创 I.MX51 IPU读书笔记(2)
Display port 这个端口用来和显示器进行通信,可以直接通信,或者通过图形加速器或者TV解码器。 同步模式显示,IPU传输一个二维的像素块到显示器,并且和显示器刷新周期。 在同步模式下,对于没有显存的显示器,或者电视,IPU会自动把内存的显示缓冲区数据刷新到显示器上。对于“smart”显示器,这个模式被用来传输一个像素矩阵块到显示器的显存中。这个块可能只是一个全屏显示像素的一部分,显示器的刷新是由显示器内部的控制器进行的。在同步模式的所有操作中,IPU发送
2010-09-01 18:09:00
3250
2
原创 I.MX51 IPU读书笔记(1)
IPU-图像处理单元 IPU是MX51的图像和视频子模块。他完美的支持从摄像头和显示设备传过来的视频数据流。支持的功能如下: 能和摄像头,显示器,图形加速器,TV编码器/解码器等进行连接 图像相关的处理和操作有:传感器图像信号处理,显示器处理,图形转换等 摄像头浏览 CSI:摄像头接口,或者有这个接口的相关设备。IPU有两个CSI接口 DI:显示接口,提供给显示器接口,或者有相关接口的设备,IPU有两个显示接口
2010-08-31 09:54:00
3033
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
2010-08-18 01:59:00
22822
5
原创 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. 一个中断产生的过程: (例子待续)
2010-07-09 11:42:00
1964
转载 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的中断处理程序例子: /* * 解设: * -
2010-07-06 17:48:00
2173
转载 MIPS 74K Core 的异常和中断
异常 74k内核处理各种的异常,包括计算溢出,TLB缺失,IO口的中断和系统调用。当CPU接收到一个中断,通常的处理过程是,挂起现有的指令,并且进入kernel模式,禁止中断,并把产生异常时,运行到的指令的地址保存到EPC上去(便以以后异常返回),之后就是跳到中断handler上去了。 这个handler首先保存了cpu的上下文,包括pc,当前的操作模式,还有中断的状态(允许还是禁止)。 异常包括了精确的和非精确的异常,精确的异常时需要保存返回地址到EPC的(一些可处理
2010-07-06 16:52:00
2714
原创 大学嵌入式的3个milestone
大二的那个寒假,和远爷留校帮文老师整理出书的资料。正是这个寒假,迈出了嵌入式有意义的一步,一直影响了整个大学的学校方向。这个搞了两个多星期,还好最后没有放弃。真是幸运啊。这正是嵌入式的萌芽期! 附图(寒假有时无聊,做了个“音箱”看电影,效果还不错的!): 第二个cornerstone:两人的发展期。正是这个东西,两人的合作。工作得很好。算是一个完整的项目。通过手机
2010-05-13 01:02:00
96747
2
原创 大学时期嵌入式的一些第一次(2)
第一次和远爷一起做的作品,GSM控制震动器。至于有什么用。。。。哇哈哈哈哈。。 这次的合作为以后搏创杯取得特等奖打下了基础。 回忆,使我更加有激情。为以后能有更多的回忆。疯狂的努力吧。。 远爷处: 我处:
2010-05-13 00:35:00
517
1
原创 大学时期嵌入式的一些第一次(1)
这些第一次在现在看来都很简单,但是当时却是费了不少精神。有图为证的已经不多了。保存一下吧。 1.第一次焊好的一个8051核心板,并能跑起来。非常简单,但在面包板上插了无数次之后都不成功,最后焊起来成功了,原来是接触不良啊。 2.第一次用感光板做的pcb。 3.第一次做的ISP下载器。 4.买回面包板,十分兴奋,一阵狂插。。。 5.远爷的51核心板
2010-05-13 00:29:00
893
2
转载 关于485匹配终端电阻的选择!
A: 我们公司的做法是:在485的任何一个节点上,对 A上拉;对B下拉,具体接线就是:(+5V---R1---A---R2---B---R3---GND),其中R1:3.3K,R2:180欧姆, R3:3.3K,取消原来的120欧电阻,这样在总线空闲的时候就保证A比B高出大约200mV的电压,也就是说能保证总线上的数据状态在空闲的时候是稳定的1。这可是我们公司几年的现场经验得来的,效果很好,保证
2010-04-05 14:09:00
9346
原创 [我的未来不是梦]
张雨生的一首歌记下自我鼓励一下你是不是像我在太阳下低头流着汗水默默辛苦的工作你是不是像我就算受了冷漠也不放弃自己想要的生活你是不是像我整天忙着追求追求一种意想不到的温柔你是不是像我曾经茫然失措一次一次徘徊在十字街头因为我不在乎 别人怎么说我从来没有忘记我对自己的承诺 对爱的执着我知道我的未来不是梦我认真的过每一分钟我的未来不是梦我的心
2010-03-23 08:11:00
1214
转载 STM32F103xCDE系列的FSMC多主访问冲突的bug相关描述和避免方法
下面是一位外国友人使用中的问题:Hi, I experience problems with the DMA and SPI. I want to send data from a buffer stored in external memory to SPI1. The external memory ist 16Bit wide and the SPI1 is configured to
2010-03-18 21:17:00
2723
原创 用Windows Live Write写blog
今天终于记起用这个软件写bolg了。本来新年前就想要用了。但是cssdn新年的时候一直不允许使用这个软件进行上传图片。就放弃了。 第一次使用还是感觉不错的。插个图试试先。 。。。。。。。。。。。。。。。。。。。。。。。。。。 发现csdn还在暂停发图片。。。 先发个文字的试试先。。
2010-03-17 17:55:00
575
原创 对S29GL032N的16位操作方式驱动调试总结
公司原本使用的norflash是使用8位模式的。后来公司新的项目中使用了16位模式。原来的驱动需要移植到新的模式下。折腾了一下,终于搞定。发现8位的写命令操作到了16位时,需要将操作的地址左移1位。总结如下: 在8位模式下,地址可以分为奇地址和偶地址。如0x00,0x01,0x02,我们可以看到地址A0是0、1交替出现。在16位模式下,由于每一次访问都是16位数据,相当于只有
2010-03-12 21:07:00
2442
1
转载 一个睡五分钟等于六个钟头的方法
根据医学和我的体验、观察,一个人真正睡着觉最多只有两个钟头,其余都是浪费时间,躺在枕头上做梦,没有哪个人不做梦。至于醒来觉得自己没有做梦,那是因为他忘记了。 通常一个人睡两个钟头就够了,为什么有人要睡七、八个钟头?那是你赖床躺在枕头上休息的习惯养成的,并非我们需要那么久的睡眠时间,尤其打坐做功夫的人晓得,正午只要闭眼真正睡着三分钟,等于睡两个钟头,不过要对好正午的时间。夜晚则要在正子时睡着,五
2010-03-10 10:01:00
759
原创 回忆
从小喜欢玩四驱车、用火钳当烙铁拆电器、童年就这样过去了。中学时搞电子制作,没有电脑还买了一大堆电脑报、高中时还有一段时间自己买东西做化学实验,学黑客。 来到大学, 当一个喜欢动手搞硬件的人学习计算机时,自然就会走向嵌入式方向了。
2010-03-04 10:28:00
624
1
原创 使用CFE加载vxWorks
CFE全称Common Firmware Environment,是broadcom公司为他们的mips芯片开发的bootloader,功能十分强大。 可以通过以下的命令来通过网络加载并且启动vxworks: 1、先配置IP地址 ifconfig eth0 -addr=192.168.1.111 -mask=255.255.255.0
2010-02-23 10:56:00
1794
原创 PowerPC-MPC603e内核学习笔记之mpc8245配置寄存器
MPC8245的大部分可编程配置寄存器是要在上电进行初始化的,这些寄存器其实在MPC内部PCI控制器MPC107里面的。MPC8245提供了一个接口来访问这些在PCI总线上的寄存器(也外部接着的PCI设备),这个接口其实就是两个port,一个port叫CONFIG_ADDR,范围可以在0xFEC0_0000 – 0xFEDF_FFFF,另一个叫CONFIG_DAT,范围在0xFEE0_0000
2010-02-12 17:03:00
3112
原创 PowerPC-MPC603e内核学习笔记之mpc8245中断控制器
MPC8245的EPIC中断控制器采用了OpenPIC的体系结构。EPIC支持5个外部中断和1个串行类型的中断(16个中断以串行方式分发),并支持Pass-Through模式(中断不经过EPIC而直接传给内核进行处理),还支持6个内部中断,还有4个能产生中断的定时器。EPCI有以下特性:l OpenPIC 编程模型l 5个外部中断和一个串行中断(
2010-02-12 16:58:00
4193
原创 about my way
there are tow way in my idea now . 1. develop the system with mcu and it has a short develop time . 2.learn the complex cpu ,powerful ,mips and so on .develop there bsp. t
2010-02-09 17:52:00
699
1
原创 What i want to do(2)
In the company ,i only a coder .a mam who beat keyboard all the day.i not the projects designer ! a project cant success only one people.but i must the designer ! only to be the desig
2010-02-09 10:40:00
455
原创 What i want to do.
Sometime i fell that let more people use the products which developed by myself was very happy .But in the company ,i cant do more of the product myself .my companys product was very large .so m
2010-02-09 09:18:00
627
DWM1000,模块资料
2023-04-06
frp,多web核心配置方法
2023-04-06
无刷电机,驱动原理,无霍尔的BLDC控制方案
2023-04-06
openwrt x86 镜像
2023-04-06
frpc,反向代理工具,android客户端程序
2023-04-06
stm32h视频播放.zip
2020-07-30
eclipseeclipse
2014-12-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人