自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

与其用泪水悔恨昨天,不如用汗水拼搏今天

记录学习嵌入式的点点滴滴

  • 博客(235)
  • 资源 (62)
  • 收藏
  • 关注

原创 VC++ .NET UI同步(使用Invoke托管方法),异步线程调用UI

花了好几天才学会,之前的代码都是C#的,无法直接使用.1.首先定义并声明托管delegate void testUI1(String ^ptr); //定义一个UI托管 delegate void testUI2(String ^ptr); //定义一个UI托管 testUI1^ myUI1; testUI2^ myUI2;2.在构造函数中实例化托管对象myUI

2015-01-28 22:04:23 1891

原创 安卓开发问题记录

1. 控件不能全屏,有白色边缘 主布删除 android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizonta

2014-12-07 10:03:22 868

转载 android xml界面布局常用属性概括

android xml界面布局常用属性概括      布局:        在 android 中我们常用的布局方式有这么几种:      1.LinearLayout ( 线性布局 ) :(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角)      线性布局分为水平线性和垂直线性二者的属性分别为: android:orientati

2014-12-07 07:58:56 1181

原创 单片机modebus RTU通信实现,采用C语言,可适用于单片机,VC,安卓等

当前使用的是STM32+ucos_ii编写的,可以移植到安卓以及VC .NET等方便移植使用,采用modebus poll测试过.只需要修改响应的通信接口即可,方便多串口使用//modebus_rtu.c/***********************************************************************************

2014-11-17 15:15:37 5619 4

原创 VC++ .net 串口操作(简单的上位机串口操作)

因为我一直使用的是嵌入式芯片,比较擅长C,一直想写点j

2014-10-29 20:21:10 6055

原创 DS-5/RVDS4.0出现变量初始化错误

最近调试的时候老是出现各种错误,一般都是内存错误,我无意间发现所有的全局变量出现问题,就是声明全局变量后,赋值的初值出现错误.初值明明是0x12345674,最后变为了0xBA141234,出现了移位想象测试代码//内存测试,防止出现内存异常,主要表现为全局变量初始化有问题#define MEM_TEST 0x12345678u32 MemTest = MEM_TEST; _i

2014-06-21 22:53:01 2531 1

原创 CC1101 433无线模块,STM8串口透传

前一段时间画了一个CC1101收发小板子,但是一直没有成功,最后发现把

2014-06-14 08:28:55 30920 2

原创 uip移植telnetd并添加自定义命令

刚刚移植了一下uip的telnetd,还是比较简单方便的.首先添加文件,注意usershell是自己写的.在tcp.c中添加tcp端口监听程序添加#include "telnetd.h"void tcp_demo_appcall(void){ if(uip_conn->lport == HTONS(TCP_ClinetPort)) { tcp_c

2014-06-13 21:40:55 2068

原创 uip UDP客户端模式通信移植,本地端口可以随机

目前移植了UDP客户端模式,测试使用广播地址.//udp_client.c/************************************************************************************************************* * 文件名: udp_client.c * 功能: uIP UDP客户端相关

2014-06-07 09:20:12 6731

原创 SIM900/SIM900A 模块实现收发短信,打电话

实现了收发短信,并且支持字符短信和PDU格式短信,支持电话boda

2014-06-06 08:28:21 52904 95

转载 网上找的纯C实现的FFT,与matlab计算结果完全一样

直接上代码了fft.c

2014-06-06 08:20:58 38056 44

原创 uip UDP 服务器广播模式(客户端可以任意端口,并且主动向客户端发送数据)

目前移植uip,发现UDP 服务器模式下,必须指定本地端口以及客户端端口,否则只能讲客户端端口设置为0,才能接收任意端口的数据,但是无法发送数据,因为此时客户端端口设置为0了,我通过将原始数据包中的客户端端口保存下来,并且在发送的时候将客户端端口替换为指定的端口,发送完成之后又设置为0,这样就实现了向任意客户端端口发送数据.uip.c if(uip_udp_conn->lpo

2014-06-05 21:42:59 16698 10

原创 S3C6410 纯粹的裸机启动,自己写的SD BOOT启动

这几天晚上一直折腾S3C6410的裸机SD卡启动,不大想使用UBOOT,我是搞硬件的,对底层非常感兴趣,不喜欢已经写好的,因此自己一直在尝试,其实很早之前就试过SD卡启动,也就是ARM11上电后会把SD卡倒数第9KB开始的8KB(倒数0x2400B偏移量)复制到内部SRAM中执行,这个比较简单,但是代码量只有8K,不能像STM32一样玩,因此查阅相关资料,得知启动方式为L0加载L1,L1加载L2,

2013-12-10 23:22:51 6518 4

原创 CC2530 串口驱动

使用IAR驱动CC2530的串口0,串口1,实现数据发送以及printf,中断接收数据uart.c/************************************************************************************************************* * 文件名: uart.c * 功能: CC25

2013-11-20 19:37:17 10938 1

原创 STM32 SDIO 报错 SD_RX_OVERRUN

使用STM32官方SDIO 的SDCARD驱动的时候,以前单任务的时候没有出现这种错误,现在使用多任务的时候经常出现,表现为读取文件的时候没有问题,经常点击屏幕的时候就会出问题,最后通过仿真找到出错点就是读取数据向SD卡发送CD17命令时出现 SD_RX_OVERRUN这个错误,产生原因为读取FIFO溢出.通过仿真与测试发现问题主要出现在读取过程中不能打断,也就是临界点.在两个读取函数里面

2013-09-21 22:00:55 6291 1

原创 FATFS外置UNICODE GBK双向转换码表

将UtoG,GtoU双向码表放到存储卡里面实现长文件名,因为FATFS长文件名需要unicode支持,首先将UtoG.sys,GtoU.sys两个文件放到SD卡根目录,注意,一定要在根目录,并且是短文件名,因为长文件名需要UNICODE支持,此时的FATFS还是不支持长文件名的,但是当初始化UNICODE码表后就可以支持长文件名了.两个码表下载地址:http://download.csdn

2013-06-05 21:50:02 6052 7

转载 第三章 硬件基础知识学习

第三章 硬件基础知识学习郑重声明:本教材现以连载的方式由网络发布,并将于2014年由清华大学出版社出版最终完整版,版权归作者和清华大学出版社所有。本着开源、分享的理念,本教材可以自由传播及学习使用,但未经作者同意不得用于任何商业目的。最终解释权归金沙滩工作室所有,更多信息可登陆www.kingst.org了解。通过上一课的学习,我们貌似成功的点亮了一

2013-05-23 22:45:13 3262 1

原创 S3C6410裸机RTC实时时钟

相对于STM32,6410的RTC是相当的简单./************************************************************************************************************* * 文件名: RTC.c * 功能: S3C6410 RTC底层驱动函数 * 作者: cp1300@

2013-05-10 07:10:28 2129

原创 DS18B20多ROM搜索并读取温度

测试采用4个DS18B20挂在6m长得网线上面,使用的是5V供电,4.7K上拉,STM32驱动,程序实现ROM搜索并分别读取每一个DS18B20的温度./***********************************************************************************************************

2013-04-18 09:54:13 18344 22

转载 【转】mini2440裸机开启MMU实验

【转】mini2440裸机开启MMU实验.text.global _start_start:    ldr sp, =4096                       @ 设置栈指针,以下都是C函数,调用前需要设好栈    bl disable_watch_dog               @ 关闭WATCHDOG,否则CPU会不断重启    bl mem

2013-04-10 07:08:54 2329

转载 Unicode字符编码分布表[全部]

Unicode字符编码分布表[全部]  |字号 订阅Unicode字符编码分布表――语言文字类欧洲字母非洲文字印度文字东亚文字中亚文字(查阅组合·标记字符)埃塞俄比亚文字孟加拉字符(U+0980 – U+

2013-04-07 22:03:26 10238

原创 标准C堆初始化,RVDS4.0+6410初始化C堆malloc

标准C堆初始化,RVDS4.0+6410初始化C堆malloc之前试了很多次使用汇编初始化堆的方法,在KEIL上面可以,但是在RVDS4.0上面一直没有成功,今天找到了一种直接在C中初始化堆的方法.首先汇编入口不做任何处理;------------------------------------------------------------------

2013-04-06 16:53:25 3259

原创 S3C6410裸机定时器

定时器我主要用来延时和获取程序运行时间./************************************************************************************************************* * 文件名: timer.c * 功能: S3C6410 timer底层驱动函数 * 作者: cp1300@139

2013-03-30 07:24:28 2438 2

转载 Altium Designer 10 please wait a moment解决方法

Altium Designer 10please wait a moment2012-03-22 16:00:53最近一直困扰Altium Designer 10的bug,AD打开protel格式的原理图后出错,每次启动都process wait a moment,然后退出。开始以为是设计项目文件错误,把所有的工作文件夹修改后,竟然问题依然存在,今天发了下狠

2013-03-24 09:30:15 19148 7

原创 S3C6410 裸机DMA

/************************************************************************************************************* * 文件名: dma.c * 功能: S3C6410 DMA底层驱动函数 * 作者: cp1300@139.com * 创建时间: 2013年01月23日21:06

2013-02-23 13:24:42 3809 8

原创 嵌入式软硬件调试问题记录

1.RS485使用中发现不能连续收发0.起初调试得出问题是MAX485的TX需要接上拉电阻,并且不能用20K的大电阻,使用10以内的强上拉电阻可以解决。后来发现问题,当0的数量超过10个后又出问题,最终发现问题是共模电压可能过大造成的,将两个485进行共地处理,问题得以解决。2.Zigbee模块问题。上次调试的时候发现有个模块竟然必须接下载器供电的时候才能工作,接其他的电源

2013-01-14 14:05:30 2171

转载 ioctl 变成了 unlocked_ioctl

kernel 2.6.35 及之前的版本中struct file_operations 一共有3个ioctl :ioctl,unlocked_ioctl和compat_ioctl现在只有unlocked_ioctl和compat_ioctl 了在kernel 2.6.36 中已经完全删除了struct file_operations 中的ioctl 函数指针,取而代之的是unl

2013-01-11 22:26:24 2020

转载 extern "C"

extern "C"包含双重含义,其一:被它修饰的目标是“extern”的;其二:被它修饰的目标是“C”的。1)被extern “C”限定的函数或变量是extern类型的;    extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其他模块中使用。    注意:extern int a;

2013-01-05 20:46:23 749

原创 OK6410汇编程序练习

尝试使用一下6410的汇编,发现跟当年的51差不多,一步一步的学习 ;*************************************************************************************************************;* 文件名: ok6410.s;* 功能: S3C6410 汇编;* 作者: cp13

2013-01-04 21:32:41 2414

原创 S3C6410 硬件JPEG解码无关代码影响解码问题终于得以解决

早在今年8月份的时候就将jpeg解码弄好了,但是一直以来非常的不稳定,如果修改了任意地方的代码都会造成解码可能失败,起初我以为是堆栈问题,或者后面有非法指针,但是都没得到结果,最后让我只能怀疑编译器了,而且我同样的程序使用了RVDS4.0编译后JPEG解码老是等待超时,但是可以解码头部,得到相关的JPEG信息,就是无法解码图片主体部分,我换到RVDS2.2上面竟然解码成功了,同样的程序,不同的编译

2012-12-26 20:40:45 2011

原创 CC2530 + RFX2401C Zigbee模块

最近公司的一个项目需要使用zigbee,购买了网上的现成的模块,通信距离都很远,但是协议等都不公开,价格也很高,不方便使用,最后决定自己画板子,起初使用的是CC2530 + CC2596的组合,发现效果很差,主要是CC2596的外围元器件过多,参数不好调,最后发现网上有人用RFX2401C,之后发现这个芯片竟然外部器件就2个去耦电容,使用非常方便,但是却没有资料,我就发了封邮件给老外,没想到竟然很

2012-12-26 14:35:39 40375 8

原创 【嵌入式linux】(第六步):使用eclipse集成开发环境开发第一个嵌入式Linux程序,并测试LED驱动

前言:使用eclipse开发嵌入式linux程序和pc linux程序几乎没有区别,并且使用eclipse图形界面的集成开发环境上手简单,方便学习,这里就教大家开发第一个嵌入式linux程序,程序功能就是测试上次写好的LED驱动程序。1.新建工程输入工程名称,选择可执行程序,选择cross GCC,下一步,选择填写arm-linux-gcc的路径,这一步按照自己的实际情况进

2012-12-24 21:54:04 3898

原创 RVDS2.2安装出现Error: environment variable PATH is over 1K characters的解决方法

最近装了64位的win7,安装RVDS2.2出现Error:  environment variable PATH is over 1K characters Please use the armenv tool to set up your environment before using this product. The armenv tool is documented in

2012-12-24 20:08:34 5637 12

原创 OK6410 裸机BMP图片解码

主要在之前的解码的基础上面添加了图片缩放功能。大家可以看看BMP解码过程或者思路。资料网上非常多,在此就不在说明,直接上代码。BMPdecode.c/*************************************************************************************************************

2012-12-09 17:36:58 3104 1

原创 Windows eclipse进行C编译开发

有些时候需要调试写一些通用的程序的时候难免会用到C编译器,但是windows下的VS体积太过于庞大,2G内存跑起来都有点吃力,更别说安装时那么的缓慢。首先得安装Eclipse,其实在windows下安装eclipse同样需要先安装java虚拟机,但是可以不用设置环境变量,下载java虚拟机安装后将安装目录里面的jar文件夹覆盖到eclipse的安装目录即可。eclipse的下载以及

2012-12-07 13:57:51 8099 2

原创 【嵌入式linux】(第五步):使用eclipse集成开发环境开发第一个嵌入式Linux驱动

1.准备工作  首先得安装好gcc工具链,以及开发环境,可以看看我的前面的几步。   还得编译好内核,一般开发板都带了,现在我还不知道配置内核,只能按照开发板默认的去编译,编译前需要先编译uboot,建议像我一样的新手先学会驱动编写,慢慢的去学习 内核的配置裁剪,我觉得到时候这个肯定是非常简单的过程,只不过没有找到门道而已,等我会了一定和大家分享,如果有会的可以教我一下,在下感激不尽。

2012-12-06 21:23:09 11646 7

原创 【嵌入式linux】(第四步):安装NFS服务,并挂载到开发板

1.前言  由于嵌入式linux开发大多数使用的是交叉编译环境,难免很频繁的将文件在开发板和PC环境之间传递,最方便的当然是网络传递了,可以使用FTP,以及挂载NFS两种方式了,显然后者更为方便了。2.NFS服务安装   Ubuntu上默认是没有安装NFS服务器的,首先要安装NFS服务程序:                      sudo apt-get insta

2012-12-05 23:28:58 15613 3

原创 【嵌入式linux】(第三步):安装串口终端 (ubuntu安装minicom串口终端)

1.前言 我使用的是USB转串口,芯片是PL2303,貌似ubuntu自带了PL2303的USB驱动,可以直接使用,其它的USB转串口的没试过。2.minicom安装  在终端中输入 : sudo apt-get install minicom  按提示下载并安装minicom, 下载安装完成后使用命令启动minicom,在终端中输入:sudo minicom 即可启动

2012-12-05 21:19:46 8329

原创 RVDS4.0硬件仿真,同步显示C代码,完全取代RVDS2.2

1.终于RVDS4.0可以完全取代RVDS2.2了,之前因为RVDS4.0在调试上面无法同步显示C代码,因此调试起来不大方便,一直使用AXD进行调试,昨天晚上在网上查了一下,发现GCC里面需要添加-g这个参数才能添加同步调试信息,我就尝试的在RVDS4.0上面试了一下,果真可以,现在和大家分享一下,终于可以完全抛弃古老的RVDS2.2了。2.建议大家使用

2012-11-29 09:13:36 6349 13

原创 【嵌入式linux】(第二步):安装交叉编译器(arm-linux-gcc)以及集成开发环境(eclipse)

上一步已经安装好了ubuntu了,更新好语言包后就可以开始下一步了。1.安装arm-linux-gcc,不管你是从网上下载的,还是开发板光盘里面的,都可以,版本也没什么限制,我的是arm-linux-gcc-4.3.2。  进入arm-linux-gcc安装包的目录,我的位置是在 /home/cfan/temps这个目录里面 打开一个终端,cd到当前

2012-11-20 20:55:25 9582 1

A7139发送数据工程 STM32 A7139模块

A7139发送超大数据包,使用STM32控制A7139进行数据收发通讯的完整工程,通过A7139通讯,modbus-rtu协议通讯,控制继电器的开关,之前用于家里的智能家居控制,已经用了5-6年了,还算稳定。

2023-02-26

nuc970_UCOS_III_MDK.rar

NUC970 ARM9移植了ucosiii,已经开发了底层的UART串口驱动,定时器驱动,SPI驱动,并且用SPI连接W25Q128,中断控制器驱动,用户堆初始化

2020-09-02

v3s裸机工程.rar

全志V3S裸机工程,实现了裸机下调试,并且使用jlinkv9初始化DDR,代码直接在DDR中执行,完成了usos iii移植,串口驱动,GIC中断控制器驱动,开发工具为IAR.

2020-08-31

nuc970裸机_MDK.rar

nuc970裸机工程,实现了AIC中断控制器,裸机初始化,串口驱动,定时器驱动;工程使用MDK开发,注意MDK开发ARM9需要安装ARM9开发包

2020-08-31

WinUSB4NuVCOM_NUC970+NuWriter.rar

NUC970 USB启动所需的USB驱动,已经下载工具NuWriter,可以用于裸机启动NUC970调试,将USB接电脑后需要先安装WinUSB4NuVCOM_NUC970驱动,然后使用NuWriter初始化硬件,之后就可以使用jlink或者ulink调试。

2020-08-31

DLT645-2007国网多功能电能表通信协议.doc

DLT645-2007版本,智能电表通讯规约,替代DLT645-1997版本,一般使用RS485或红外接口读取电表采集的电量信息

2020-07-03

虚拟STM32F746 RGB_480x272彩屏.rar

使用WIN32程序实现STM32的LCD虚拟,可以很方便在电脑上面实现STM32 LCD UI代码开发,使用的DXD9,实现的STM32F7 LTDC LCD接口,完美兼容STM32的LTDC操作,默认使用的是ARGB8888颜色模式.

2020-03-09

WM8994 WISCESetup.rar

WISCESetup 可以用于WM89xx系列的音频芯片配置,压缩包内包含WISCESetup软件与WM8994设备支持文件,可以用于WM8994的可视化配置,自动生成需要配置的寄存器数据,便于调试,由于手册上寄存器太多,太复杂,使用本软件可以很方便配置寄存器。

2020-02-19

homebridge-aqara测试.rar

基于homebridge-aqara修改,自己编写插件,对代码进行了解耦,增加了注释,很方便编写新的设备支持,并进行集成,我增加了彩灯的控制。

2019-11-21

好看的树样式tree

js可折叠树样式,用于显示分组列表,使用js简单的封装,方便使用

2018-08-18

LINUX 串口与SPI操作

linux下操作串口使用modbus-rtu协议读取数据,使用SPI接口操作LCD12864液晶。

2018-08-18

ModBus-RTU协议C封装

ModBus-RTU协议C封装 使用C封装的,可以移植到任何平台。

2018-06-23

串口读写上位机例程

使用VC++ CLR编写的上位机实例,主要使用串口通信,modbus-RTU协议读写从机,并使用异步方式,可以实现连续的数据读取同时,对设备进行配置。 使用vs2013开发,VC++ CLR工程,实现串口列表获取,串口打开,modbus读写,异步刷新UI。

2018-05-06

unicode与gbk双向转换编码表

unicode与gbk双向转换编码表,可以存放到flahs或外部flash中,以及对应的.h文件,可以编译到代码中

2018-04-19

VC++串口modbus测试工程

VC++串口modbus测试工程

2016-11-23

打包工具SmartInstallMaker(全中文)

打包工具SmartInstallMaker(全中文)

2016-08-29

ADS1247寄存器中文

ADS1247寄存器中文

2016-03-28

STM32F4系列中文手册

STM32F4系列中文手册.pdf

2015-12-09

A7139 寄存器配置软件

A7139 寄存器配置软件 自动生成配置代码 点击Build Reference code 生成代码,在运行目录

2015-08-09

文件夹大小查看

文件夹大小查看,查找那个文件夹占用大小非常方便

2014-10-07

MP3410 丝印IP3x

MP3410 丝印IP3x ,DC-DC升压

2014-07-25

DS-5_Workshop DS-5工程建立

DS-5_Workshop-v5.13-d1622-6-12.03-SB-DSTREAM DS-5_Workshop 使用文档 教你如何使用DS-5建立工程 DS -5 Workshop 5 Workshop 5 Workshop : Linux : Linux : Linux KerneKerne

2014-06-21

DS-5使用手册

DS-5使用手册 ARM® Compiler Version 5.04 armasm User Guide

2014-06-17

PDF解密软件

PDF解密软件,亲测可以使用,无毒,放心使用

2014-06-17

CC1101+STM8无线收发模块

433M CC1101 串口模块 STM8原理图

2014-06-14

iphone5 中文维修图纸 电路图

iphone5 中文维修图纸 电路图 很详细

2014-05-29

S3C6410 SD卡启动裸机代码,可以从串口下载程序

S3C6410 SD卡启动裸机代码,可以从串口下载程序 也可以从SD卡指定位置加载程序执行 无需UBOOT支持,纯粹的底层裸机代码,希望可以给你学习底层带来方便,我也是折腾几天才弄出来的.

2013-12-10

UNICODE GBK双向码表二进制文件

UNICODE GBK 编码转换表 用与裸机已经嵌入式开发中UNICODE支持

2013-06-05

联想OED WIN7 64BIT

联想OED WIN7 64BIT 旗舰版 下载地址,用迅雷直接下载即可,64bit旗舰版

2013-04-07

SIM900A AT指令文档集合

SIM900A AT指令文档集合 AT指令详细 硬件设计手册 很多很全

2013-04-03

Logic Setup 1.1.15 (64-bit)

Saleae LLC Logic 64BIT 支持win764bit

2013-03-30

reshack3.6中文版

修改win7系统资源imageres.dll,修改开机画面,声音,主题,图标等等,最主要的是可以在win7 64bit下面使用,其它版本无法修改64bit win7的图标

2012-12-29

ucOS2.85官方源码

ucOS2.85官方源码

2012-12-27

JPEG标准文档

JPEG标准相关文档,描述JPEG标准的文档

2012-12-20

ARM Workbench IDE v4.0中文版用户指南

ARM Workbench IDE v4.0中文版用户指南,用户指南。

2012-12-18

RFX2401 datasheet

RFX2401 datasheet,官方的很详细的,绝对不是一张纸,从老外那里要的。 之前网上没得下载的。

2012-12-10

Dev-C++ Windows环境下C&C++开发工具

 Dev-C++是一个Windows环境下C&C++开发工具,它是一款自由软件,遵守GPL协议。它集合了GCC、MinGW32等众多自由软件,并且可以取得最新版本的各种工具支持,而这一切工作都是来自全球的狂热者所做的工作,并且你拥有对这一切工具自由使用的权利,包括取得源代码等,前提是你也必须遵守GNU协议。Dev-C++每一天都在进步着,因为它是一个自由软件。 Dev-C++是一个非常实用的编程软件,多款著名软件均由它编写而成,它在C的基础上,增强了逻辑性。

2012-12-07

eclipse编写驱动时导出的配置文件

eclipse编写驱动时导出的配置文件 我用来备份的。

2012-12-06

Linux内核完全注释

Linux 内核完全注释 包含两个版本的文档,比较详细

2012-12-04

linux_0.11源代码

linux_0.11源代码 完整的代码 linux_0.11

2012-12-04

空空如也

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

TA关注的人

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