自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (3)
  • 收藏
  • 关注

原创 一个嵌入式USB设备协议栈:Felis USB

Felis USB是一个我刚开发的嵌入式USB设备协议栈。season-studio/FelisUSB: A USB Stack for embedded system (github.com)https://github.com/season-studio/FelisUSB缘起说实话,这个项目是拖了挺长一段时间后,我才真正决定动手的。项目的缘起是因为我所在公司的一个技术预研项目。在公司的那个项目中,我需要指导一个新员工用STM32处理器实现一...

2021-09-25 10:54:15 1289

原创 白居易《放言五首》的新解读

“周公恐惧留言日,王莽恭谦未篡时。向使当初身便死,一身真伪复谁知。”这是白居易《放言五首·其三》中的四句诗。一般来讲,我们说白居易这四句诗表达的意思是,对人与事的认识要全面,要通过时间的考验才能下评价。但我们可以换个视角来看看。诗中提到的周公、王莽,距今都有两三千多年了。经过了如此长岁月的“考验”,我们就真的能够评价他们的“真伪”吗?先说说王莽。大部分人给了王莽差评,是因为他确实取代汉朝建立了新朝,而且还搞了不合时宜的改革,弄得社会矛盾激化,后来又被人推翻了。后面...

2021-08-18 20:31:01 124

原创 漂流与战略

上周部门的小伙伴们组织了团建活动,其中一个项目是去漂流。我带了老婆一起参加。出发后刚经过第一个速降河道,我们全身就都被四周灌入的水给打湿了,橡皮艇里也积了大量的水。被水一刺激,老婆一声令下:要快点划到终点、上岸。去过漂流的,尤其是去过景区漂流的人都知道,漂流并不是从头到尾都是速降的河道,其中会有好几段水流平静的河面。在水流平静的河面就需要参与者自己用浆划水来推动橡皮艇前进。在老婆的期盼下,我卖力划船,于是取得了“最后一个出发,最先一个到达”的“成绩”,而且是领先了后面的人整整一个河段。 ...

2021-07-14 11:25:01 189

原创 道家哲学在系统设计中的应用

最近看到一条新闻,某8岁小学生通过快速点击智能音箱的锁屏界面造成锁屏程序崩溃,攻破了家长给智能音箱设置的童锁。今年的一月份还有条类似的新闻,某个程序员亲眼看到自己的孩子在电脑键盘和屏幕上一通乱按后,搞崩了屏幕保护程序,黑进了他原本锁定的Linux X11桌面。二者都表现为这两个产品在访问授权的系统设计上存在明显的漏洞。我们先从技术角度讨论一下这些漏洞的成因。很显然,智能音箱的新闻中,音箱厂家将童锁的安全性完全交由锁屏程序负责,自然是锁屏程序一旦失效,童锁的访问授权控制就一同失效。Linux X11桌

2021-03-30 09:51:00 118

原创 世上并没有人工智能

(这不是一篇技术文)    最近这一两年,人工智能的概念可谓相当火热。但大家是否想过,世上也许并没有人工智能。    字面上看,人工智能是人为使某些物体产生智能效果。人工智能的字面核心是智能。那么,什么才是智能呢?随便在大街上找个路人甲问他这个问题,他大致会这么回答你:“会说话,会走路,会思考,就是智能。”并不需要太复杂的定义,大部人对于智能都有如此直观的认识。只不过,这个认识未必准确。试

2017-03-17 22:21:08 881

原创 在Visual Studio上开发ARM嵌入式软件

Visual Embed是笔者自己开发的Visual Studio插件,用于在Visual C++工程中支持ARM嵌入式软件开发,并支持Keil MDK和Visual C++工程的相互转换。

2016-01-10 16:34:11 19596 7

原创 一种ARM模拟器的实现(一)

一、我为什么要实现一个ARM模拟器二、SimARM简介(功能规格、运行环境)三、SimARM版本、测试、及共享说明

2015-09-22 22:51:26 6635

USB Camera Demo in CortexM0 (Nuvoton Nano130)

在Cortex M0处理上实现USB摄像头的DEMO代码。此代码在Nuvoton Nano130(开发板:NuTiny-SDK-Nano130)上成功运行。用一内置的图片作为摄像头上传的视频流数据作为演示。其中USB摄像头设备属性协商部分在本代码中没有严格实现,只是固定一个属性方案。

2021-07-15

Visual Embed(在VC中开发ARM程序的插件)

Visual Embed 扩展服务包是Visual Studio的扩展插件,它提供基于Visual C++ IDE的嵌入式开发环境。该环境支持导入/导出Keil MDK工程,并可基于转换的工程开发嵌入式软件。 Visual Embed 实测支持Visual Studio 2015,其他版本的VS暂未做测试。Visual Embed下载后保存为VisualEmbedPkg.vsix文件(若下载工具修改了该文件名,手动将其扩展名为vsix即可)。下载完成后,关闭Visual Studio,然后双击VisualEmbedPkg.vsix即可完成安装。

2016-01-10

SimArm(一款ARM内核仿真的动态库)

SimARM是一款ARM内核的仿真动态库,目前已仿真了ARMv4/ARMv5的ARM和Thumb指令集。基于该动态库,可通过扩展接口的方式,实现一个完整的ARM处理器的仿真。主要应用场景用于ARM嵌入式软件在桌面环境中的仿真。 目前,该仿真核仿真的频率为:ARM指令125MHz,Thumb指令85MHz。

2015-09-21

空空如也

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

TA关注的人

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