自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

平凡的程序员

专注于嵌入式编程和图像处理

  • 博客(627)
  • 资源 (4)
  • 论坛 (1)
  • 收藏
  • 关注

原创 嵌入式电路设计(电路仿真)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 电路设计是一项费时、费脑的工作。有的时候,在电路没有被打样之前,其实可以用电路仿真的方法,来判断我们的电路是否正确。目前很多软件都支持电路仿真的功能,比如ltspice。当然lceda本身也支持仿真的功能,使用起来也比较简单,我们可以罗列几个常用的电路仿真,供大家参考。1、电压的测试 上面的内容其实是一个初中物理的知识。上面是完整的电路,下面提示输入的电源是电压源。整...

2021-11-14 12:02:24 229

原创 嵌入式电路设计(符号库和封装库)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 不管什么电子eda工具,除了构建电路原理图、pcb layout之外,另外一部分工作就是符号库和封装库。注意下,我们所有的开发都是在lceda完成的,大家可以根据自己所学习的eda工具,灵活进行选择。 对于符号库,这里可以解释一下,主要是用符号来表示具体的电子元件。比如,初中物理书上,用一个方块表示电阻,用两条竖线表示电容,用波浪线来表示电感,这些都是属于符号的范畴。符号只表...

2021-11-08 22:10:34 86

原创 嵌入式电路设计(工具准备)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 今天的话题比较轻松,就是在我们在拿到打样的pcb之后,剩下来还需要完成哪些工作?换句话说,我们在实现完整的电路板之前,还需要哪些工具的帮助。1、购买电子器件 目前购买电子器件,主要还是集中于某东、某宝,这方面只能靠平时经验的积累,没有什么好的办法。如果不是特别在乎成本,或者只是小批量的试制,可以画完pcb的同时,在某创商城购买。2、面包板 很多时候...

2021-10-31 23:04:45 99

原创 嵌入式电路设计(第一个商业pcb电路图绘制)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 虽然我们学习电路图的时间并不长,但是事实上来说,已经可以去画简单的产品电路图了。换句话说,我们画出来的电路图产品可以卖钱的。什么电路图,其实就是usb2ttl电路图。大家可以自己淘宝或者jd上面查看一下,一般这样的电路板都要卖个十几到几十块钱。 早前我自己在买电路开发板的时候,上面的串口都是db9那种才能练上去,就是下面这个样子 这种接口比较便宜,也比较方便,之...

2021-10-30 14:06:56 150

原创 嵌入式电路设计(自己的第一个pcb电路)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 熟话说,万事开头难。什么事情都有第一次,等到真正迈过去之后,回头看时发现其实也就这么回事。电路图也是一样的。在公司里面,一般都是明确的分工,你是做硬件的,他是做软件的,其实等到自己真正用的时候,就会发现大部分的工作,80%的内容都是可以短时间学会的。电路设计当然也不例外。 大部分学习都认为应该学习完所有的概念之后,才开始动手做。其实不然,学电路设计,就应该边学习边操做,把工科...

2021-10-26 23:50:17 113

原创 嵌入式电路设计(物联网esp32最小电路设计)

【 声明:版权所有,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们介绍了很多的开发板,比如说51、stm32、fpga、linux soc这些,今天我们再介绍最后一款开发板esp32。后期我们将通过介绍电路图设计、打板、焊接、调试全过程,来看一下嵌入式电路时怎么完整的运行起来的,重点会放在这个上面。 esp32是国内乐鑫科技公司推出来的,本身支持wifi、bt等多种无线通信协议。此外因为设计成了一个模块,因此完全被看成是一个邮票版电路,和正常的...

2021-10-24 08:06:52 6248

原创 嵌入式电路设计(dsp电路设计)

【 声明:版权所有,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 说到dsp,之前是ti公司的产品。目前,dsp一般分为两种,一种是mcu的dsp,这种以28335为代表,通常使用在电机控制、工业控制上面;还有一种是j6、j7这种,它本身是arm+dsp的混合体,一方面可以借助linux的生态,另外一方面可以发挥dsp高性能的优势,一举两得,多用于图像处理等场合。 dsp对于浮点运算、矩阵预算是非常适合的,这是dsp的优势。但是正因为如此,dsp发热量...

2021-10-23 08:35:01 1596

原创 嵌入式电路设计(soc底板电路设计)

【 声明:版权所有,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们谈到了soc电路设计,但事实上很多情况下会分成核心板设计和地板设计两部分。核心板设计涉及到多层电路板、soc选型等方面,pcb布线较多,成本也较高。就拿6层板来说,如果不是大批量的制造,单块板子的开模费用可能达到100多块,整个bom也才100多,所以很不划算。另外核心板对pcb布线有一定要求,这方面不一定是小企业擅长的部分。 而底板的话,一般都是2层布线,最多四层布线,信号-地...

2021-10-22 08:45:53 113

原创 嵌入式电路设计(linux soc电路设计)

【 声明:版权,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 除了51单片机、stm32和fpga之外,另外用的比较多的就是soc电路设计了。而且,现在大部分的soc电路都是跑linux操作系统的,使用起来十分方便。有的厂家为了使用方便,还会做成核心板和底板,核心板主要是soc、ddr、nandflash、pmu、ethernet这些,底板就丰富了,除了核心板的接口,其他uart、lcd、camera、gpio、audio、sd卡什么的,基本上都是放在底板上面的。核..

2021-10-20 22:09:21 730

原创 嵌入式电路设计(fpga电路设计)

【 声明:版权,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前本来准备写写dsp电路的,实际上目前用的比较多的dsp还是28335,常用于电机控制。但这类电路和stm32其实都属于mcu,除了执行浮点计算的处理方法不一样,硬件接口部分没什么太大的区别。所以,我们还不如谈谈fpga电路。 大部分公司里面,fpga其实是属于硬件这块的,至少通讯公司里面fpga是和硬件部门分在一起的。如果是芯片设计公司,fpga一般用作芯片原型设计的,也就是流片之前...

2021-10-19 22:13:38 1383

原创 嵌入式电路设计(stm32电路设计)

【 声明:版权,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在立创开源硬件平台上面,stm32可以说是使用最多的mcu芯片。它的核心是arm core。一方面,工业上比较认可stm32,另外一方面,我们也不得不承认意法半导体在校园推广mcu方面确实做的很好。当然,目前芯片普遍比较紧俏,之前便宜的几块钱的stm32,都要几十甚至上百了,这已经是后话了。 stm32用的比较多的stm32f103、stm32f3、stm32f4这些。现在,除了上面说的这些...

2021-10-16 22:17:46 5898 3

原创 嵌入式电路设计(51单片机电路设计)

【 声明:版权,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 读书的时候,其实学校没有教学51单片机。后来是看了郭天祥的书,并且买了杜洋工作室的板子,这才知道有51单片机这种东西。甚至于,在后来的接触中,发现常用的stc系列51单片机居然是南通一家公司生产的,成本可以做到几块钱,觉得也是蛮惊奇的。 知道了51单片机之后,起初也没有觉得这个东西有什么用。然而后来随着时间慢慢积累,才知道很多小商品或者小玩具上面,这颗芯片还是能够发挥一些作用的。很多场景下面...

2021-10-16 17:09:54 3200 1

原创 嵌入式电路设计(最小系统)

【 声明:版权,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 做嵌入式的同学应该有一个最小系统的概念。什么叫最小系统,顾名思义,就是系统里面的任何一个组件都是不可或缺的。我们大体分一下,这里面有51单片机的最小系统、stm32的最小系统、soc的最小系统。甚至于说,fpga、dsp、显卡gpu都有自己的最小系统。 最小系统只保证系统能够运行起来,但是如果要变成一个商品的话,还是要加上合理的输入、输出。就拿温度显示仪来说,就需要一个温度传感器,一个显示屏...

2021-09-21 19:56:52 212

原创 嵌入式电路设计(入门)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 因为学的是计算机,自己画电路板的机会也不多,所以这方面练习的少。之前学习嵌入式,很多的板子都是网上购买的,比如某原子,某野火,某alinx,这些都买过。使用中发现,有的板子还是价格比较贵的,于是就想自己试试画一些板子,比如从最小系统开始,看看是不是可以积累一些经验,慢慢把电路这部分掌握起来。1、eda工具 考虑到版权的问题,目前主要使用国产立创eda,可以画原理图,可以画p...

2021-09-10 22:42:29 189

原创 随想录(exe和dll的相互调用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 有一种编程方法,就是需要在exe和dll之间进行相互调用。比如整个软件的功能都是比较简单的,大部分功能的实现依赖于插件的实现,那么这个时候就需要在exe和dll之间实现函数的相互调用。经过综合考虑,目前一般的处理方法是这样的,1、exe-》dll exe调用dll其实比较简单的。因为在windows系统里面有默认的LoadLibrary函数,根据这个函数选择动态加载dll就...

2021-08-28 06:59:00 144

原创 随想录(软件文档的重要性)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 对于大多数程序员来说,他们喜欢写代码、写算法、写多线程、写很多牛逼的功能,但是一谈到文档,就头疼,至少从心底来说,就很抵触。其实,这根本没有必要,相比较编写文档的时间,编写文档带来的益处是非常多的。1、文档会让自己有全局的软件视角(非常重要) 相比较具体的技术,软件开发中一般要编写很多的文档。需求文档、架构文档、详细设计文档、测试文档、交付文档、使用手册等等。每一个文档都有...

2021-07-31 10:22:20 145

原创 verilog学习记(tinyriscv mcu设计)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

2021-06-20 21:09:47 636

原创 ucc编译器(优化)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 bian'yi

2021-06-20 08:25:56 192

原创 ucc编译器(汇编生成)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 有了中间代码,后面

2021-06-19 17:40:39 351

原创 ucc编译器(中间代码生成)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 suo

2021-06-19 17:07:55 182

原创 ucc编译器(语义分析)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 符合

2021-06-19 16:33:34 145

原创 ucc编译器(语法解析)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 做完词法fen

2021-06-19 16:00:12 241

原创 ucc编译器(词法分析)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

2021-06-19 15:06:29 166

原创 随想录(虚拟机实现)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 要在一个cpu上实现对另外一个cpu的仿真,虚拟机是重要的方式之一。比如我们使用的cpu一般是x86或者amd64,这个时候如果需要学习arm、mips、powerpc、openrisc,或者是riscv等其他cpu,虚拟机就是重要的方式。当然,如果你野心更大一点,设计自己的cpu,这个时候也需要设计一个虚拟机。看上去设计cpu是一个硬件开发的活,但是大部分的工作其实都和软件有关,如果保证...

2021-06-07 07:54:47 113

原创 linux驱动编写(设备树)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

2021-05-29 09:28:58 525

原创 随想录(定义自己的cpu和工具链)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 很早就看过cpu的书,当时对cpu的实现还是有很大兴趣的。当时就在想,如果有一套自己的cpu,需要做哪些工作呢?带着这个疑问,搜搜索了一些资料,并且看了一些代码,还是有不少收获的。特别是在github上面看到了https://github.com/cassuto的工作,还是满震撼的。1、定义自己的指令集 这个是基础,没有自己的指令集,一切都是空谈。目前最火的riscv...

2021-05-27 06:31:33 108

原创 随想录(学习《许式伟的架构课》)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 市面上关于软件架构的课程大概有这么几种, 1、设计模式类,比如《设计模式》、《重构》; 2、具体技术类,比如《软件架构设计:大型网站技术架构与业务架构融合之道》、《代码大全》; 3、理论方法类,比如《软件架构》、《架构师修炼之道》; 4、软件工程类,比如《软件工程》 但是,一个公司里面的软件架构师究竟是怎么工作的,这方面的书籍还是比较少。五...

2021-05-02 07:03:41 261 1

原创 随想录(从DO-178C和ARINC653想到的)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 DO-178C是一个软件开发流程标准,类似于汽车行业的ISO26262,或者是一般软件公司的CMMI5。ARINC653是一个航空电子软件标准,多用来指航空操作系统,可以看成是rtos的航空版本。这两个概念,本来没什么关系,正好自己在芯片行业、汽车行业和航空行业都待过,所以这方面可以拿来说一说。1、关键安全软件的开发,是一个系统的开发,不是几个模块做好了,整个系统就安全了。...

2021-04-11 22:46:18 198

原创 python编程(编写opengl程序)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 opengl作为跨平台的代表,本身使用很多。记得云风,也就是之前网易的主程,他写过一个ejoy2d的游戏引擎,本身使用的就是opengl。因为不管是windows、linux,还是macos,本身都支持opengl接口,所以使用opengl还是非常方便的。传统的opengl只需要包括gl函数、glu函数、glut函数,就可以做很多的事情,使用起来还是非常方便的。 本身ope...

2021-03-08 18:52:03 796

原创 java分布式(java反汇编)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 学过c或者cpp的同学都知道,exe或者dll、so、a文件都可以反汇编成对应的汇编文件。当然,这个对应的cpu也有关系。比如,如果是x86程序,那么只能翻译成x86的代码,如果是arm的程序,那么只能反汇编成对应的arm程序。这个时候,很多同学会说,如果是java的程序,有没有办法看到对应的反汇编代码。其实是有的。答案就是javap程序。1、编写简单的java代码impo...

2021-02-14 16:35:36 404 1

原创 python编程(paddle ocr)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在图像处里面,除了人脸识别、车牌识别、指纹识别这些应用比较成熟的领域之外,ocr也是很重要的一个领域。所谓的ocr,其实就是利用图像处理技术和深度学习,将图像中的文字识别出来,常见的应用有身份证识别、驾驶证识别、营业执照识别等等。有兴趣的同学,可以自己学习下ocr,做一些产品尝试,应用到具体的行业当中,比如说财务、教育、报关等领域,相信也可以有不错的收获、1、安装python...

2021-02-11 08:41:04 1885 1

原创 python编程(mysql操作)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前因为嵌入式开发,使用mysql的机会不多。但是使用了python之后,发现用python操作mysql之类的数据库还是非常方便的。不需要很多的代码,就可以让mysql来帮助我们完成一些事情,这个确实很方便。此外,如果有navicat之类的数据库管理工具辅助下,这就更方便了。1、python版本可以考虑python3,除非是比较老的机器选择python3也尽量使用pyt...

2021-01-30 17:25:06 268 1

原创 python编程(pyautogui库)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 现实软件测试中,有一部分是和软件界面测试相关的。这个时候,如果有这么一个工具,可以帮助我们方便地控制鼠标、键盘设备,那么是再好不过的。在python的第三方开放包里面,恰好有一个pyautogui可以帮助实现这一点。1、pyautogui的安装pip install pyautogui2、检验pyautogui是不是已经安装上了import pyautogu...

2021-01-28 23:13:02 566

原创 随想录(fpga处理图像的优缺点)

【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 fpga在很多人看来,是一个异类。说它是硬件,却需要编写RTL代码、综合和下载;说它是软件,还需要专门的fpga芯片,综合出来的也是门电路,还会涉及到时序、信号完整性的问题。但是,不管怎么说,用fpga在很多领域扮演非常重要的角色。图像处理就是很重要的一个环节。这个时候,有些同学可能就会有疑问,fpga的时钟频率没有比cpu高,为什么可以做到高效率又省电呢?我想可能有这么几个原因。...

2021-01-17 22:32:33 972 1

原创 python编程(python调用dll程序)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 很多人说python的效率比较低,主要是没有分清什么时候用python、什么时候用c。对于网络、gui或者业务层面的代码,用python是完全可以的。但是对于算法、演算或者性能相关的逻辑,必须用c或者c++实现。回到windows平台,用python调用dll程序,也是十分有必要的。用python调用dll不复杂,做好这几步就可以了,1、创建一个dll工程就按照vs2017的...

2021-01-15 21:35:43 1065 1

原创 python编程(pyqt5的使用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 最近一直在用qt5的使用,但是用的c++开发。之前在做python测试的时候,发现其实用python开发的效率挺高的。所以,一直在想,什么时候可以用python开发qt5,本来以为很复杂,没想到却很简单。当然,最重要的发现不是这个,原来python的很多第三方库竟然可以从豆瓣下载,速度非常快,这算是今天很大的一个收获。1、准备python环境 我这边安装的python3...

2021-01-13 21:16:15 337 1

原创 随想录(电机学习笔记)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在学习ros机器人之前,我其实不太了解电机,对嵌入式的所有知识也仅仅限于51单片机、stm32、arm soc。但是,因为工作的需要,或者说更多来自于个人的兴趣,发现mcu+电机,可以做这么多事情,还是蛮吃惊的。小到玩具、大到机械臂,里面都有电机的影子,还是蛮有意思的。趁着现在还有点印象,赶紧做个笔记,供后面使用。1、学习视频 个人觉得这家开发板厂商出的电机教学视频非常...

2021-01-09 14:07:40 282

原创 随想录(ros学习笔记)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 ros,全称robot operating system。说它是操作系统,其实也不全对,因为它实现的其实是一个类似于中间件的作用。使用的人,只需要在上面关注与自己算法的实现就可以了,不需要关注重复造轮子,因为通信、工具、仿真、通用算法、常用硬件驱动别人都替你做好了。如果是自己有这方面的兴趣,可以按照这个顺序来做,1、找一个靠谱的学习视频 在b站上面,有一个ros入门21...

2021-01-09 10:50:46 237

原创 深度学习实践与部署(开篇)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 大家都知道现在深度学习很火,不管是线上还是线下,大家都对深度学习充满了期待。一般来说,深度学习会包括这样几个过程,即数据准备、数据标记、训练、部署。如果说数据的准备和标记还是可控的话,那么训练和部署这个里面需要花费的时间就非常可观了。首先,选择什么样的模型,才能匹配业务的需要。另外一个,就是训练好的模型,怎样才能在设备上运行起来,这个就非常可观了。目前,关于部署这块主要有这么集中方法,...

2021-01-02 10:36:59 1128

原创 verilog学习记(verilog翻译成c)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 有的时候,写verilog代码时,不太确定是否正确,会写一段伪c代码来进行验证,比如module sum(input clk, input rst,output wire[15:0] cnt);reg[15:0] data;always @(posedge clk) if(rst) data <= 16'0000h; else if(data == 1...

2020-12-24 00:26:10 619

png图片读取、保存代码

这是一个完整的png图片读取项目,包括了pnglib、zlib和win32工程,大家可以单步调试验证png格式的基本功能。

2012-07-08

arm9兼容软核代码

arm9兼容软核代码

2020-12-24

glibc1.09的源代码内容

这里是glibc早期的版本,对大家学习libc非常有帮助,希望大家积极下载、

2011-05-21

exceptional C++

这是关于c++非常好的一本书,相信对大家十分有用!

2009-05-07

费晓行的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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