自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(111)
  • 资源 (16)
  • 收藏
  • 关注

转载 Working with Strings

对windows下的string讲得很清楚https://docs.microsoft.com/en-us/windows/desktop/LearnWin32/working-with-strings

2019-02-19 09:47:57 227

原创 MFC过时了吗?

公司PC软件使用MFC写的,我接手了(之前一直搞嵌入式linux),在网上查了一下MFC,挺老的技术,很多人对MFC是否过时的问题争得不可开交,我也不知道听谁的好.后面看不下去了,去microsoft官网对比了一下windows PC编程的各种技术,豁然开朗,分享一下网址: https://docs.microsoft.com/en-us/windows/desktop/choose-your-t...

2019-02-19 00:22:07 7272 2

原创 linux下C C++调用C#

旧的MFC项目调用的一些库用C#来写(编译成DLL库),现在项目要移植到linux下,也想在linux下用C来调用C#,linux不支持C#,需要安装linux下C#的运行环境mono。 调用原理大概是这样子的,linux下的C/C++不能直接调用C#函数的,而是通过mono提供的api,创建一个C#的运行环境,在该环境中中创建C#类,再通过mono api间接调用C#。 mono的安装参考w...

2018-08-03 11:25:56 3383

原创 linux通过poll方式检测sd卡的插拔

做样机时,硬件攻城狮忘了给SD卡连card detect引脚,硬件中断检查SD卡的插拔是不可能了,还好linux的SD驱动可以通过poll的方式检查卡的插拔,给mmc->caps加上MMC_CAP_NEEDS_POLL标示位后,内核会启动一个线程通过发命令的方式来检测卡是否存在. mmc->caps |= MMC_CAP_NEEDS_POLL;...

2018-07-26 23:40:30 2688 1

原创 SetWindowOrg,SetViewportOrg,SetMapMode

最近在看windows GDI画图的相关代码,这几个函数把绕昏了,查了很多资料并且做了很多实验才搞懂

2018-01-12 17:45:12 352

原创 java Excption example

public class ThrowException {class InsufficientException extends Exception {  private double amount;    public InsufficientException(double amount) {     this.amount = amount;  }   

2017-05-15 11:53:49 498

转载 ISO/IEC 14443协议浅谈:TYPE A与TYPE B

ISO/IEC14443规定了邻近卡(PICC)的物理特性;需要供给能量的场的性质与特征,以及邻近耦合设备(PCDs)和邻近卡(PICCs)之间的双向通信;卡(PICCs)进入邻近耦合设备(PCDs)时的轮寻,通信初始化阶段的字符格式,帧结构,时序信息;非接触的半双功的块传输协议并定义了激活和停止协议的步骤。传输协议同时适用于TYPE A 和 TYPE B。  TYPE A和TYPE B型卡片

2017-01-24 09:40:15 26409 4

原创 u-boot怎样生成spl

u-boot怎样生成spl  u-boot版本:2016.05顶层Makefile定义生成spl: 生成spl需要的BOARD,CPU等变量的由来:顶层Makefile包含了.config .config包含了配置的cpu,板级信息 顶层Makefile包含了config.mk, arch/arm/Makefile也被包含了进来,arch/arm/M

2017-01-16 19:35:33 1743

原创 linux posix shared memory: bus error

解决posix shared memory bus error的问题

2017-01-16 17:32:21 1768

转载 字符编码笔记:ASCII,Unicode和UTF-8

作者: 阮一峰日期: 2007年10月28日今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得

2016-12-06 14:43:26 541 2

转载 Unicode(UTF-8, UTF-16)令人混淆的概念

为啥需要Unicode       我们知道计算机其实挺笨的,它只认识0101这样的字符串,当然了我们看这样的01串时肯定会比较头晕的,所以很多时候为了描述简单都用十进制,十六进制,八进制表示.实际上都是等价的,没啥太多不一样.其他啥文字图片之类的其他东东计算机不认识.那为了在计算机上表示这些信息就必须转换成一些数字.你肯定不能想怎么转换就怎么转,必须得有定些规则.于是刚开始的时候就有AS

2016-12-06 14:42:00 404

转载 用ISO C++实现自己的信号槽(Qt另类学习)

有网友抱怨:哪个大牛能帮帮我,讲解一下信号槽机制的底层实现? 不要那种源码的解析,只要清楚的讲讲是怎么发送信号,怎么去选择相应的槽,再做出反应。也就是类似于一个信号槽的相应流程。。。求解啊!!! 看了源码,真的是一头雾水。。。撞墙的心都有了~~~~本文使用 ISO C++ 一步一步实现了一个极度简化的信号与槽的系统 (整个程序4个文件共121行代码) 。希望能有助于刚进入Q

2016-12-05 20:43:21 707

转载 从C++到Qt

最近做QT项目,在网上看到一篇很好的入门文章,转过来以后备用原文发布在百度空间,但由于百度空间屡次改版,越改越差,以至于有关闭可能,故而转移到此 http://blog.debao.meQt 是 C++ 的库,Qt 在 ansi C++ 的基础上进行了一点扩展。但国内似乎比较浮躁,学Qt的很多连基本的C++如何编译似乎都不太清楚。本文舍弃IDE或

2016-12-05 20:37:12 9080

转载 #pragma pack(n)和__attribute__((aligned(m)))的区别

C语言 #pragma pack(n)和__attribute__((aligned(m)))的区别

2016-09-05 10:45:58 3626

转载 NFS /etc/export配置

nfs服务器的配置,配置文件/etc/exports:ro 该主机对该共享目录有只读权限rw 该主机对该共享目录有读写权限root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户no_root_squash 客户机用root访问该共享文件夹时,不映射root用户all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户

2016-06-02 21:27:31 5166

转载 使用 Socket 通信实现 FTP 客户端程序

今天在用到FTP编程,在IBM developerWorks看到一篇很好的文档,果断转过来,原文地址-http://www.ibm.com/developerworks/cn/linux/l-cn-socketftp/使用 Socket 通信实现 FTP 客户端程序FTP 客户端如 FlashFXP,File Zilla 被广泛应用,原理上都是用底层的 So

2016-05-19 09:57:32 7232 1

转载 linux uevent分析

1.kobject, ktype, ksetkobject代表sysfs中的目录。ktype代表kobject的类型,主要包含release函数和attr的读写函数。比如,所有的bus都有同一个bus_type;所有的class都有同一个class_type。kset包含了subsystem概念,kset本身也是一个kobject,所以里面包含了一个kobject对象。另外,kset中

2015-10-28 18:13:21 2017

转载 makefile中的shell语法

在Makefile中写shell代码有点诡异,和不同的shell语法不太一样,如果不了解,看Makefile会莫名其妙。下面总结了一些。1:尽在Makefile文件的目标项冒号后的另起一行的代码才是shell代码。eg:xx = xx1         // 这里时makefile代码yy:xx = xx2   // 这是是makefile代码,makefile允许变量赋值时,

2015-03-27 18:08:29 1057

原创 Zynq 7000从零开始之四 -- emio的gpio操作

本文讲述怎样使用emio功能的gpio,涉及到fpga部分,软件涉及到一级引导程序fsbl的创建及app的创建,程序运行在ddr中.zynq-7000的PS只有54个引脚可用(port0,port1), port2,port3的引脚可以通过EMIO在PL端引出.zturn开发板的三色灯D34连接到PL端的io,通过emio控制这三个灯亮灭.1. 用vivado搭建硬件模型.

2015-03-23 18:00:01 17525 5

原创 linux 串口console注册

printk打印的信息要在console注册之后才能打印出来,但是在start_kernel中,还没有注册console之前已经有printk的动作.这些信息会保存在printk的buf里边,这个buf大小可以配置:General setup(14) Kernel log buffer size (16 => 64KB, 17 => 128KB)14=2^14=16KB, 16=2

2015-03-16 13:40:54 3056

原创 3G拨号获取不到IP--No network protocols running

Serial connection established.using channel 1Using interface ppp0Connect: ppp0 /dev/ttyUSB0sent [LCP ConfReq id=0x1 ]rcvd [LCP ConfReq id=0x0 ]sent [LCP ConfAck id=0x0 ]rcvd

2015-03-11 11:37:22 6426 2

转载 volatile的陷阱

最近写的关于在嵌入式开发中常遇到的关于volatile关键字使用的短文,都是些通用的技术,贴上来share。 对于volatile关键字,大部分的C语言教材都是一笔带过,并没有做太过深入的分析,所以这里简单整理了一些关于volatile的使用注意事项。实际上从语法上来看volatile和const是一样的,但是如果const用错,几乎不会有什么问题;而volatile用错,后果可能很严重。所以

2015-02-15 09:53:31 2306

转载 bash: ***: No such file or directory

最近在移植opencv2.0的时候遇到该问题,工作环境如下:宿主机:ubuntu9.04 kernel 2.6.28  arm-none-linux-4.3.2开发板:OMAP4 ubuntu12.04 桌面版 gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)当把在宿主机编译好的程序移植到另一个开发板(ubuntu

2015-02-10 14:43:11 18197 1

原创 zturn开发板网口驱动的注册过程

描述zturn开发板PS网口驱动的注册过程

2015-01-30 11:43:09 4011 1

原创 linux下的can驱动测试

本文主要描述怎样在嵌入式linux下测试can驱动.详细讲解了测试can所需要的工具,及怎样编译,怎样使用.

2015-01-28 18:42:17 22458 4

原创 Zynq 7000从零开始之三 -- mio的gpio操作

本文讲述怎样使用PS的gpio,不涉及fpga部分,软件涉及到一级引导程序fsbl的创建及app的创建,程序运行在ddr中.        z-turn板的mio 50引脚连接到了按键K1,该实验实现的功能为,检测按键并从串口打印出相应的信息.        1. 用vivado搭建硬件模型.        在block design的Re-customize IP界面,点击Pre

2015-01-22 12:31:27 8741 3

原创 Zynq 7000从零开始之二 -- 内存测试程序

由于所有的APP都是在DDR中运行的,所以先让DDR工作起来是后续实验的基础.使用的硬件是z-turn开发板.        本文主要讲怎样创建一个内存测试程序,测试DDR,程序还是运行在内部RAM;FPGA涉及的内容有怎样配置DDR参数,及怎样保存和导入硬件参数;软件方面会涉及BSP修改及           BOOT.bin的生成.关于Vivado的具体操作请参考--"Zynq 700

2015-01-22 10:43:07 17491 2

转载 "30年---我与赛灵思FPGA的故事”—— ZYNQ-7000使用总结(9) ——PS和PL的通信

由 allan 于 星期二, 07/08/2014 - 13:21 发表PS与PL通信概述传统的SoPC设计无外乎两种方式:(1)在FPGA上设计一个软核,比如Altera的NIOSII,Xilinx的MicroBlaze等(2)将一个独立的FPGA和处理器芯片(比如ARM等)联合使用。第一种方式的局限在于软核的性能远远不及硬核,而且会占用大量的FPGA资源;第二种方式的局

2015-01-21 15:18:55 14913 2

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(8) ——用户IP设计和应用程序设计流程

由 allan 于 星期二, 07/01/2014 - 12:54 发表通过前面的几个例子,我们可以看出,在使用Zynq做设计时,合理使用Xilinx已有的IP核非常的关键,可以极大地方便与简化我们的开发。但是有的时候我们需要根据自己的需要设计自己的IP核,即所谓的用户IP。这篇文章就通过一个完整的例子介绍如何设计用户IP,并且会对驱动级的应用程序设计流程进行一个详细的介绍。

2015-01-21 15:18:02 5375 4

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(7) ——ZYNQ的启动和配置

由 allan 于 星期一, 06/30/2014 - 15:29 发表前面在生成从Flash和SD卡启动的镜像文件时有提到一个FSBL,这个和ZYNQ的启动有关系。今天我就介绍一下ZYNQ的启动和配置。因为ZYNQ SoC由PS和PL部分组成,所以它的启动和配置也会稍微复杂一点,这里仅作简单介绍,希望可以起到抛砖引玉的效果。要了解具体的细节可以参考Xilinx官方文档UG585

2015-01-21 15:16:14 15296 1

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(6) ——AXI接口简述

由 allan 于 星期五, 06/27/2014 - 17:35 发表在前面的几个例子中,我们经常会看到AXI接口或是总线,那么AXI到底是什么呢?如果你想进行系统的了解,可以查阅Xilinx的文档UG761《AXI Reference Guide》。这里如文章题目,只是做一个简答的介绍,主要提炼出一些知识点。大部分是翻译的那篇文章,有的地方为了表述准确,直接引用原文。A

2015-01-21 15:14:53 14500

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(5) ——使用ChipScope进行硬件调试

由 allan 于 星期三, 06/25/2014 - 15:08 发表在《ZYNQ-7000使用总结(3)——PS和PL部分配合使用》中我们介绍了一个PS和PL配合使用的例子,在那个例子中我们有加入两个用于调试的IP核:ChipScope AXI Monitor和Chipscope Integrated Controller,这两个IP核用于ChipScope的调试。Chip

2015-01-21 15:13:41 5121

转载 "30年---我与赛灵思FPGA的故事":ZYNQ-7000使用总结(4) ——如何生成从Flash和SD卡启动的镜像文件

由 allan 于 星期三, 06/25/2014 - 14:53 发表在《ZYNQ-7000使用总结(3)——PS和PL部分配合使用》中,我们已经可以将PL与PS部分一起使用,并且通过JTAG下载到板子运行。对于ZYNQ,有多种启动方式,比如从JTAG启动、从QSPI(即Flash)启动,从SD卡启动等。对于从JTAG启动的,我们直接运行程序就OK了。对于从Flash和SD卡启动

2015-01-21 15:12:23 6504

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(3) ——PS和PL部分配合使用

由 allan 于 星期五, 06/20/2014 - 14:37 发表前面在《ZYNQ-7000使用总结(2)——PS部分的使用》中讲述了ZYNQ-7000中PS部分的用法,主要是对软件的使用以及设计流程进行了介绍。但是在实际使用中,往往会将PL和PS部分配合使用,以充分使用ZYNQ的资源,发挥其优势。对于ZYNQ-7000,PS部分可以作为一个子系统独立工作(上篇文章已经介绍)

2015-01-21 15:10:38 18816

转载 "30年---我与赛灵思FPGA的故事”:ZYNQ-7000使用总结(2)——PS部分的使用

由 allan 于 星期四, 06/19/2014 - 17:31 发表ZYNQ-7000包括PS和PL两部分,其中你可以只使用PS部分,而不用PL部分,这样可以认为你在单纯的使用一个ARM Cortex A9 MPore芯片。更多的情况下,我们会将PS和PL部分联合使用,不然也就失去了使用ZYNQ芯片的意义。但是,为了更好的理解和学习ZYNQ,我们先讲一个只使用PS部分的例子,这

2015-01-21 15:08:59 16731 2

转载 "30年---我与赛灵思FPGA的故事”: ZYNQ-7000使用总结(1)——概述

由 allan 于 星期四, 06/19/2014 - 17:03 发表因为马上要离职的原因,需要将一些东西整理一下做交接。就将Xilinx ZYNQ-7000的使用经验做一下总结,希望对刚接触的人有一点帮助。需要说明的是,在接触到ZYNQ-7000之前,我并没有做过FPGA的设计,这一部分的基础可以说是零。而这一年的工作重心也并不是FPGA设计,所以这一系列文章的重点是工具的使用

2015-01-21 15:07:32 28590 1

原创 Zynq 7000从零开始之一 -- HelloWord

使用myir的z-turn开发板,做一个从uart打印hello world的实验,只用PS,不用PL部分,程序从SD卡启动,跑在PS的内部RAM.zynq 7000的PS虽然也是CPU,但是开发方法不像普通的CPU只需要一个SDK就可以了,它还需要vivado硬件设计软件.所以ZYNQ 7000的PS开发需要两个工具,一个是vivado--    另一个是SDK--  .1. 打

2015-01-21 09:10:43 26246 3

原创 创建基于arm的debian文件系统

debian系统有针对arm分支的,在arm上跑debian系统可以用apt-get安装软件,避免繁琐的编译和重复创建文件系统的工作.本例子使用z-turn的开发板为例.linux主机版本:root@v:i# lsb_release -aNo LSB modules are available.Distributor ID: DebianDescriptio

2015-01-15 10:35:19 16819 2

原创 使用buildroot来编译文件系统

使用buildroot来编译文件系统2015-1-9 用buildroot来制作文件系统很方便,编译出来的文件系统是直接可用的,不用添加脚本等麻烦的工作,很多的库和app都可以直接添加到文件系统里边,如常用的udhcpc,tftp等.本文以以ZYNQ 7010为例,制作一个ramdisk的文件系统,在z-turn开发板上运行.1. 到buildroot目录下执行

2015-01-15 10:30:31 14941 2

转载 armlinux内核启动--内存初始化管理

linux版本:2.6.36相关数据结构arch/arm/include/asm/setup.h#ifdef CONFIG_ARCH_LH7A40X# define NR_BANKS 16#else# define NR_BANKS 8#endifstruct membank {    unsigned long start;    unsigned l

2014-11-02 23:08:13 1504

PhantomPDF最新版破解

Foxit PhantomPDF 7.06破解(只要主版本是7的都可以直接使用),其实是延长了试用时间,为2万多天,50几年,哈哈,够用了.主版本是6的话使用记事本打开该文件把下面的: [HKEY_CURRENT_USER\Software\Foxit Software\Foxit PhantomPDF 7.0\Register] 修改为 [HKEY_CURRENT_USER\Software\Foxit Software\Foxit PhantomPDF 6.0\Register] 就可以了,其他版本类推. 使用方法,右击该文件,点合并到注册表即可. 以前都是用foxit pdf的,现在用了该软件,就把foxit pdf 御掉了,这个修改一些可恶的广告页面很方便

2015-01-20

mipi屏调试记录

ssd2828驱动小米3屏的调试记录,有对屏寄存器读写的例子,还有许多网上搜不到的信息.

2014-09-18

ssd2828qn4最新规格书V1.3

ssd2828qn4最新版的规格书,最大支持FHD分辨率。MIPI VIDEO模式

2014-08-27

IAR V7.20破解文件

IAR V7.20最新版本破解文件, 破解简单,好用

2014-08-26

image2lcd_V4.0破解版

img2lcd_v4.0, img2lcd最新版,经测试可用,随便输入序列号点注册就可以,注册方便简单

2014-08-04

source insight3.5+破解

source insight3.5 0072版本,解决了ctrl+find死机的问题,source insight是用的最多,最好用的代码编辑浏览工具

2014-07-27

cadence 16.6破解文件-win7 64位可用

cadence16.6破解,win7 32bit,win7 64bit可用,winxp 可用,一直都在用,按照说明破解既可,简单易用

2014-07-26

TI wifi模块驱动笔记

ti wl18xx驱动调试笔记,从下载源码,编译,测试有详细记录,可快速入门

2014-07-22

jlink V8固件,可修改SN,能用在MDK5.0以上版本

jlinkV8固件,可修改序列号,能用在MDK5.0以上版本,亲自测试过,可用

2014-06-27

IAR for ARM(EWARM) V7.10破解,亲测,可用

IAR for ARM(EWARM) V7.10破解,自己安装测试过,可以用的

2014-06-27

18B20调试,用指令延时的方法

用LPC1114驱动18B20的调试笔记,用的是指令延时的方法,详细描述了18B20的读写时序

2014-06-13

nor flash 驱动分析(S29G64N)

nor flash 驱动分析(S29G64N),该文档描述了nor flash读写操作

2014-06-13

openwrt libuci使用例子

openwrt libuci使用例子,项目中用过,确实可用

2014-06-02

EasyBoot@5.0e.rar

easy boot_V5.0 启动盘制做工具

2008-04-26

空空如也

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

TA关注的人

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