- 博客(53)
- 资源 (7)
- 收藏
- 关注
原创 【空气检测仪专题】11.重新修改界面
【空气检测仪专题】11.重新修改界面以前的界面太难看了,越看越难看。于是参考别人的换掉界面。以前的界面目前的界面(好看很多了吧)
2018-04-13 11:20:33 262 1
原创 【空气检测仪专题】8.换液晶屏幕改用并口16bit驱动
【空气检测仪专题】8.换液晶屏幕改用并口16bit驱动由于使用SPI驱动屏幕一直无法达到要求,而以前的屏幕支持SPI接口的,只能换屏幕了。在1688找了一款,但是使用驱动有不一样;厂家给的资料太扯谈了;幸亏前段时间调试TFT积累经验,今天一个下午能把屏幕点亮了。厂家给的接线图,厂家居然不给规格书,说没有,-_-||,是看不起我还是真没有?? 花了不少时间焊接这个,每根杜邦线只能留一根
2018-01-10 22:55:57 369
原创 【空气检测仪专题】7.基本界面
【空气检测仪专题】7.基本界面用了GUIBuilder.exe做了个简单的界面,开发速度很快;但是还是液晶刷新速度不够快,数字能看到在刷很难看。实际效果,上面和下面用来做固定的,标了红色能区别开来。
2018-01-04 14:14:42 406
原创 【空气检测仪专题】6.使用F030的SPI驱动屏幕
【空气检测仪专题】6.使用F030的SPI驱动屏幕上次优化了液晶屏幕的驱动依然没有达到满意的效果,这次用了F030的SPI来驱动屏幕依然能看到刷屏还是达不到满意效果。看来得试试8位并口了,按理来说会快约8倍。void SPI_Config(void){ GPIO_InitTypeDef GPIO_InitStructure;SPI_InitTypeDef SPI_InitStructure
2018-01-02 19:20:38 387
原创 【空气检测仪专题】5.STemWin驱动优化
【空气检测仪专题】5.STemWin驱动优化上一次移植STemWin,但是刷屏幕很慢;这次优化一下。优化在GUIDRV_Template.c中对_FillRect、_DrawHLine、_DrawVLine函数进行优化;优化后刷屏幕块了很多,但是还是看到刷屏的,也很慢。慢是因为使用模拟的SPI发送数据的,因为F10x的SPI不支持9位数据方式是的不能直接使用SPI接口。后面考虑F0和F3系列,这两个
2018-01-01 15:59:43 592
原创 【空气检测仪专题】4.STemWin移植
【空气检测仪专题】4.STemWin移植上次已经有了液晶的画点、画线、画矩阵函数了;为了移植STemWin做好了准备。step 1:下载en.stm32cubef1压缩包,其中包含STemWin,在en.stm32cubef1\STM32Cube_FW_F1_V1.6.0\Middlewares\ST文件下。step 2:在工程源文件中新建STemWinPortable文件夹,将用于存放STemW
2017-12-31 22:10:33 728
原创 【空气检测仪专题】3.LCD驱动
【空气检测仪专题】3.LCD驱动2017.12.29在网上买了一块3.2寸TFT屏幕,目前用给的代码能运行起来。但是我并不了接TFT怎么工作的怎么移植的,所以需要学习。在网上找了一会没有详细介绍ili9481的,只找到英文手册;看来要啃手册了。ILI9481DS_V0.26.pdf花了一个下午,看完了手册;很多命令没有去看,只是了解就足够了。2017.12.30把买的LCD的程序去掉gui等只留配置
2017-12-31 20:47:12 436
原创 【空气检测仪专题】2.RTMQTT
【空气检测仪专题】2.RTMQTTMQTT的移植是参考paho的库做定制的,名称为RTMQTT。为什么定制呢?因为paho是基于OS的,不太适于与裸机上;重写了client的代码,使得裸机使用效率也很高。RTMQTT目前测试两个星期了,稳定性不错。测试代码如下:void RTMQTTClient_messageArrived(RTMQTTClient *c,uint16_t *packetid
2017-12-28 16:11:21 413
原创 【空气检测仪专题】1.计划目标
【空气检测仪专题】1.计划目标技术内容1.TFT液晶显示2.PM2.5传感器3.温湿度传感器4.WIFI模块5.spi flash6.RTMQTT7.局域网升级/远程升级8.APP查看
2017-12-28 16:10:30 268
原创 【空气检测仪专题】RTMQTT最小资源消耗
MQTT最小资源消耗发送缓冲100字节,接收缓冲100字节,格式化字符100字节,队列100字节;订阅一个主题,循环发送一个主题;F0单片机。RAM只使用613字节,还是比较省资源的。
2017-12-24 13:15:10 379
原创 单片机升级bin文件增加文件头软件
我做了不少项目是需要在线升级的,每次弄升级固件都非常痛苦,而且容易弄错。于是写了一个上位机自动生成升级的固件。使用也很简单,欢迎大家使用。
2017-12-15 13:59:02 3535 3
转载 S3C2440 SDRAM内存驱动
S3C2440 SDRAM内存驱动 2012-08-08 11:45:47| 分类: ARM|字号 订阅SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存储器)也就是通常所说的内存。内存的工作原理、控制时序、及相关控制器的配置方法一直是嵌入式系统学习、开发过程中的一个难点。我们从其硬件的角度来
2013-06-18 10:48:05 1046
原创 使用Notepad++ + ssh建立开发环境
做嵌入式开发的同学们应该都有这样的感受:在windows里写代码,在虚拟机的linux里编译代码。经常切来切去很是烦人。现在我介绍大家一个比较好的方法,以后就不用切来切去了。1.使用Notepad++来编写代码。可以建立一个工程来管理源代码。2.ssh连接linux http://blog.csdn.net/lindabell/
2013-05-24 23:12:56 6667 2
转载 基于S3C6410的U-boot启动代码分析(一)
预备知识可执行文件由许多链接在一起的对象文件组成。对象文件有许多节,如文本、数据、init 数据、bss等。这些对象文件都是由一个称为 链接器脚本(*lds)的文件链接并装入的。这个链接器脚本的功能是将输入对象文件的各节映射到输出文件中;换句话说,它将所有输入对象文件都链接到单一的可执行文件中,将该可执行文件的各节装入到指定地址处。 因此在分析u-boot代码是,首先应关注的是u-boot.l
2013-05-22 17:16:15 1292
转载 对ARM加载域和运行域的理解(ARM程序是怎么运行的)
对ARM加载域和运行域的理解一般而言,一个程序包括只读的代码段和可读写的数据段。在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly);可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为零的变量被称为ZI段(ZeroInit)。对于嵌入式系统而言,程序映象都是存储在Flash存储器等一些非易失性器件中的,而在运行时,程序中的RW段必须重新装
2013-05-21 23:04:12 11499 2
转载 S3C6410存储器映射(内存地址等)
1.引导镜像区 0x0000_0000~0x07FF_FFFF2.内部存储区(1) 内部ROM 0x0800_0000~0x0BFF_FFFF(2) 内部SRAM 0x0C00_0000~0x0FFF_FFFF3.静态存储区 0x1000_0000~0x3FFF_FFFF4.动态存储区 0x4000_0000~0x6FFF_FFFFS3C6410的物理
2013-05-21 22:41:06 3093
转载 S3C6410启动模式介绍
作者:ARM-WinCE目前的ARM处理器都支持多种启动模式,S3C6410和以前的Samsung的ARM处理器一样,通过外部管脚OM[4:0]的拉高拉低来决定是从哪个存储设备上启动。我认为S3C6410的User Manual并没有说的很清楚,所以我在最开始使用的时候,也对其启动模式有一些误解,下面就我个人的理解,介绍一下S3C6410的启动。先读一下S3C6410 User Man
2013-05-21 22:20:13 882
转载 ARM-GCC-LD脚本
ARM-GCC-LD脚本转自:http://www.cnblogs.com/cbs-soft/archive/2010/01/08/1642388.html从以前的经验,链接脚本是嵌入式开发,单片机开发相当重要的一个东西。它完成的工作是做PC机软件的同志们不用关心的,但是也是很复杂的一项工作。总结来看链接脚本要告诉连接器1:输出什么2:输入是什么,那么obj文件3:要用什么库,
2013-05-21 16:38:46 1285
原创 【tiny6410】led裸板程序
start.s文件启动代码很简单,主要做一些硬件相关的设置:告诉CPU外设的基地址、关看门狗、设置栈(为调用c语言准备) .globl _start_start:/* 硬件相关的设置 */ /* Peri port setup */ ldr r0, =0x70000000 orr r0, r0, #0x13 mcr p15,0,r0,
2013-05-19 16:39:18 2840 2
原创 u-boot、gcc、linux、arm-linux-gcc下载
U-boot 下载 http://ftp.denx.de/pub/u-boot/GCC下载 http://gcc.gnu.org/linux源码下载 https://www.kernel.org/arm-linux-gcc下载
2013-05-09 13:20:15 827
原创 linux串口程序
main.c#include "SerDrive.h"#include /*文件控制定义*/#include //======================================int SerFd = -1;void ProcessInit(void){ /* * 打开USB转串口(ttyUSB0) * O_RDWR 可读写设备 * O_NO
2013-05-08 14:50:04 4231
转载 select()函数分析 (可以提高程序的效率)
http://blog.csdn.net/zi_jin/article/details/4214359Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,
2013-05-08 09:42:20 1122
转载 ubuntu怎么安装JRE
一、JDK 71、Debian, Ubuntu等系统。在命令行中,键入: $sudo apt-get install openjdk-7-jre需要注意的是,openjdk-7-jre包只包含Java运行时环境(Java Runtime Environment)。如果是要开发Java应用程序,则需要安装openjdk-7-jdk包。命令如下:
2013-05-07 17:52:45 17900 1
原创 怎样以root帐号进入ubuntu
安装好ubuntu后进入的是普通用户,因为root用户没有启用使用:sudo passwd root设置root的密码设置好root的密码后就可以使用:su root命令进入root用户了。但是只能在终端中使用root帐号,有些软件运行不了,比如cutecom是能运行起来,但是总是打开不了ttyUSB0,不知道是什么问题。只要使用root来运行就正确了,奇怪啊。于是我想我们就用ro
2013-05-07 11:20:37 13599
原创 linux module的编写方法
#include #include MODULE_LICENSE("GPL"); //协议声明MODULE_AUTHOR("David Xie"); //作者MODULE_DESCRIPTION("Hello World Module"); //模块描述MODULE_ALIAS("a simplest module"
2013-05-06 14:03:22 1133
转载 百度云网盘 360云盘 金山快盘 等 + Git GUI 实现代码版本管理-个人篇 (转)
来自:http://www.cnblogs.com/hantianwei/archive/2012/12/18/2823686.html 网盘现在很流行,比较好且稳定性强的个人感觉有 百度云网盘、360云盘、金山快盘、腾讯微云,我个人常用的是 这四家的,大公司安全性好,稳定性强,速度快,其它就不多说了我这里用百度云网盘,并用VS2012新建项目进行演示昨天晚上刚在服务器上面安装
2013-04-17 09:15:03 8081
转载 使用eclipse建立ARM开发环境
原文:http://blog.sina.com.cn/s/blog_78212a050100ph5y.html J-Link: http://www.segger.com/http://www.eclipse.org/downloads/ 下载Eclipse IDE for C/C++ Developers 环境http://sourceforge.net/projects/gnu
2013-04-10 17:25:13 25774 3
原创 使用命令行创建ARM LIB库
在使用keil编译程序时会产生很多.o文件(OBJ),而LIB就是这些OBJ文件的一个集合。前些天想用keil来产生lib文件的。但是太难用了。比如我想创建多个lib文件;这是使用keil IDE就比较麻烦了。经过摸索终于找到使用keil的armar工具来产生lib文件特别容易。如:armar --create System.lib .\SmartTerminal\output\
2013-04-10 15:00:20 1371
原创 在12864上实现菜单
最近老是发表心情,有点对不起这个技术博客。发一个我写的一个液晶菜单。 发现不能上传附件的,晕!! 放到github了https://github.com/lindabell/LCD12864_Menu clone 下来就可以了
2013-03-25 11:09:47 1223
原创 高度不够高(站得高才能看的远)
我他妈就是一个IT民工,整天码程序;弄得眼睛都不舒服了;这就算了,工资还不高。我一直都知道我站得太低了,一直想改(从内心中告诉自己一定要找一条更好的路走),一年一年过去了我居然没有变到。我知道要想改变不是那么容易的事的。有一天我突然有一个灵感“要想改变必须发生一些大事”,那么大事怎么发生呢,于是我想到去骑川藏线来磨练一下自己。我不知道去了以后会怎么样,也许什么都没有改变;但应该值得去一趟。我的人生
2013-03-22 08:38:35 832
原创 何去何从
在一个普通二本学校毕业,留在实验室帮老师的忙;每月4K的工资,初看起来还可以;但是开销起来就发现很少了。在学校干了将近2年了。这2年一直在做一个项目(出租车相关的),从硬件设计到软件编写,完全是我自己一个人完成的。当初想做这个项目是因为感觉市场很大(实际上市场真的很大),但是老板一直没有调人手来帮忙,只是找一些学生(菜鸟)来帮忙,很多时候是帮倒忙的。最近有一个同学说他在北京已经7~8K
2013-03-20 17:14:19 650
原创 奇怪了,同一个变量在不同的.c中,程序运行不一样
刚才想把FM1702的程序整理一下,把多余不用的函数去掉。当我把一个原本在main.c中的变量delay_cnt,移动到delay.c时发现程序运行不对了,即无法读取FM1702了。很是奇怪啊,按理说变量在哪里都一样的啊。
2013-03-13 11:21:07 811
原创 fm1702终于调试成功了
这是我调试过最狗屎的程序了。首先是FM1702手册写得太狗屎了,几乎就把寄存器列出来而已,原理没有什么解释的。虽然写程序不用了解很多原理但是至少把流程将清楚一点吗。出一个芯片让用户猜怎么用,这是什么意思啊?再者ISO/IEC 14443A也没有完全将命令怎么使用,我发送一个命令到底给我返回什么?你的告诉我吧。 从最上层来讲有这么一些步骤:1.配置FM1702芯片,包括复位等2.寻卡
2013-01-08 16:34:18 15230 10
原创 在RealTouch中实现一个计算器
UI的设计倒是很简单,按钮和label就可以了。困难的是算法。1.这样把数值输入2.这样调整小数点3这样保留有效小数位4防止多次按下Op代码还有很多问题,本来目的是使用realtouch的GUI的反而在算法上花费太多时间了。所以不再继续了 #include #include #include #include #include #include
2012-12-27 21:24:38 1337
原创 FM1702 开始学习
大约半年前看了一些关于FM1702的资料,由于工作的问题没有时间继续了。目前项目有点空闲,想学习一下(这个也是项目需要的)。最近我很主动学习,因为我感觉到自己的压力真的很大。27了也没有什么作为。所以赶紧冲电,准备跳槽。目前工资4K根本不能够使用的。成家的事越来越紧了。 废话不说了,作为一个没有创意的工程师只能靠加班了。 由于记忆力不好,我将会把心得写在bl
2012-12-26 11:22:37 1491
原创 speex移植到crotex-M4,注意事项
1.需要定义一些基本数据类型 在speex_types.h有关基本数据的定义。里面包含了CPU结构相关的数据定义了。假如没有要移植的CPU的,则需要在speex/speex_config_types.h这个文件中定义了。由于没有ARM的,所以要自己定义这个文件。在include/speex目录中有一个speex_config_types.h.in的文件。我们拷贝一份并把文件名改为spee
2012-12-25 17:37:48 4881 1
原创 【eZ430-Chronos】LCD引脚与MCU对应引脚转换程序
由于eZ430-Chronos中的LCD接线与常规的不一样本来应该MCU 引脚 LCD引脚COM0 com0COM1
2012-12-18 09:04:53 1314
SecureCRT终端
2013-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人