![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
fl2440
C_Aya
多做事,少说废话
展开
-
fl2440——u-boot启动过程的简要分析
u-boot是在嵌入式开发中,经常使用的bootloader。 我们知道,在PC上引导程序一般是由BIOS(一段固件程序)开始执行,然后读取硬盘中位于MBR(Main Boot Record,主引导记录)中的Bootloader(如GRUB),后进一步引导操作系统的启动。 而在嵌入式系统中,通常没有BIOS(有的CPU也会内嵌一小段启动程序),所以整一个系统的引导就由bootloader承担了。原创 2016-11-08 19:41:43 · 571 阅读 · 0 评论 -
驱动学习回顾——platform总线驱动-结合LED实例分析
前一篇文章总结了Linux下的bus设备模型,实际上,我们在编程过程中,并不需要自己来创建总线,Linux已经为我们实现了诸如platform总线、USB总线、I2C总线等等。 而接下来要学习总结的platform总线有点“特别”,与USB、I2C、SPI等物理总线不同,它是一条虚拟总线。像USB设备、I2C设备都会有自己对应类型的总线进行挂载,从而与CPU通信。但是在嵌入式系统中,并不是所有的设原创 2017-08-21 20:08:30 · 1467 阅读 · 0 评论 -
驱动学习回顾——Linux下bus设备模型
关于Linux的驱动学习有三个点是应该掌握的,即:总线,驱动,设备。不管是一些物理总线(如:I2C,SPI等)的抽象,还是为了增加设备“容量”而定义的虚拟总线(plat-from),都是围绕着这三个进行。即:一个符合Linux设备驱动模型的device和device_dvrier都挂在一个bus上,由bus来进行两者匹配,进行双向绑定。下面简单地给出自己简单的学习过程。一、总线总线这个概念在内核中在原创 2017-08-21 13:14:06 · 622 阅读 · 0 评论 -
fl2440——DS18B20 驱动编写
转载自:http://blog.csdn.net/zqixiao_09/article/details/50973969 供学习之用!对驱动工程师而言,时序分析的意思是让芯片之间的访问满足芯片手册中时序图信号的有效的先后顺序、采样建立时间、保持时间的要求,通过时序来达到数据传输和硬件控制的目的。 嵌入式开发平台:mini2440 DS18B20 所用GPIO:S3C2410_GPF(3)一、D转载 2017-08-20 16:47:34 · 651 阅读 · 0 评论 -
Socket再学习——开发板ds18b20获取温度值并上报服务器
经过一段时间的学习、积累,自己对于物联网、计算机网络、socket编程等相关的领域和知识有了新的理解,网络部分一直是重中之重。因此重新再学习了Linux下的socket,并结合了一个简单的实际例子再来学习client端与server端工作流程。===========================================文件描述符:实际上就是Linux内核给分配的“称谓”,而在我们的TCP通原创 2017-06-21 16:45:08 · 970 阅读 · 0 评论 -
C——Linux下的串口编程
之前在学习安信可A7模块时,是在PC上使用串口调试助手做了GPS的坐标数据信息的采集,同时分析了一些语句的含义。在这过程中,涉及到对嵌入式开发人员一个非常重要的知识:串口通信。在前篇也说到,我们将会自己写程序来对GPS数据进行解析,而这些数据正是靠串口来传输的。所以,本篇博文将进行关于串口通信的学习。一、串口接头首先我们得知道串口长什么样,常用的串口接头有两种,一种是9针串口(简称DB-9),一种是原创 2017-06-06 19:30:50 · 26444 阅读 · 3 评论 -
安信可-A7模块——C语言编程实现GPS功能
上一篇博文整理学习了有关串口通信、串口编程的一些基本知识。本篇将通过编程来获取、解析、转换GPS接收机接收的信息。 我们将在fl2440开发板上实现该功能。一、A7与开发板连线我使用的是USB转TTL串口转接线,这里要保证Linux支持了所用的转接芯片。我使用的是cp210的USB转串口芯片,因此要在内核选项中支持它:make menuconfig Device Drivers->原创 2017-06-07 17:23:20 · 4208 阅读 · 4 评论 -
fl2440模块学习——3G拨号上网
本篇学习在fl2440开发板上添加3G无线拨号上网模块,实现上网。 所使用的3G模块为:SIMCOM的 SIM5360E,可以支持WCDMA/GSM,即联通2G/3G,移动2G。测试用的是联通卡。 先了解一下: WCDMA 是英文Wideband Code Division Multiple Access(宽带码分多址)的英文简称,是一种第三代无线通讯技术。目前是由国内的联通在做; GSM(原创 2017-05-30 16:27:12 · 1872 阅读 · 0 评论 -
fl2440模块学习——添加RT3070实现无线上网
最近学习了在fl2440开发板上添加了RT3070网卡,并通过连接路由器上网,在此记录一下。首先预备一下一些有关的网络知识: 1、计算机网络->无线网络的几种常见标准: IEEE802.11a:使用5GHz频段,传输速度54Mbps,与802.11b不兼容; IEEE 802.11b:使用2.4GHz频段,传输速度11Mbps; IEEE802.11g:使用2.4GH原创 2017-05-23 19:46:01 · 806 阅读 · 0 评论 -
fl2440模块学习——RT3070无线网卡SoftAP模式实现路由器功能
上一篇博文记录了fl2440添加了RT3070作为STA模式,并成功连接路由器上网。 这篇则记录第二种模式:SoftAP模式。以开发板fl2440作为一个路由器,并使自己的手机、笔记本电脑连接到这个“路由器”上网。在这里我们会用到几个软件hostapd、udhcpd、iptables。基于内核的mac80211驱动框架来实现。一、内核配置 make之后烧录到开发板。把开发板用网线连接一个路由原创 2017-05-25 20:53:38 · 1346 阅读 · 0 评论 -
fl2440——修改UART2作为正常串口
在S3C2440芯片上,是有3个串口的,其中默认UART0,UART1是作为普通串口。而UART2被Linux内核默认配置成了红外模式,若想把它当作普通串口使用,则需要修改代码。 同时。GPH6被设置为nRTS1,GPH7被设置为nCTS1,此时,串口2是无法收发数据的。代码修改如下: 1、vim arch/arm/mach-s3c2440/mach-smdk2440.c 修改红色框处原创 2017-05-07 13:29:28 · 1098 阅读 · 0 评论 -
笔记——ROM、PROM、EPROM、EEPROM、Flash ROM
ROM指的是“只读存储器”,即Read-Only Memory。这是一种线路最简单半导体电路,通过掩模工艺,一次性制造,其中的代码与数据将永久保存(除非坏掉),不能进行修改。这玩意一般在大批量生产时才会被用的,优点是成本低、非常低,但是其风险比较大,在产品设计时,如果调试不彻底,很容易造成几千片的费片,行内话叫“掩砸了”! PROM指的是“可编程只读存储器”既Programmable Red-On转载 2017-04-29 17:57:21 · 538 阅读 · 0 评论 -
笔记——设备文件、设备文件节点 、设备驱动的区别
设备文件、设备文件节点 、设备驱动 区别(1).设备 Linux下的设备通常分为三类,字符设备,块设备和网络设备。 见的字符设备有鼠标、键盘、串口、控制台等。 常见的块设备有各种硬盘、flash磁盘、RAM磁盘等。 在Linux里一个网络设备也可以叫做一个网络接口,如eth0,应用程序是通过Socket而不是设备节点来访问网络设备,在系统里根本就不存在网络设备节点。 网络接口没有像字符设备转载 2017-03-27 12:03:46 · 1197 阅读 · 0 评论 -
fl2440——Linux主机与开发板之间使用tftp
为了以后更方便地对fl2440开发板进行传文件,直接从宿主机往开发板传已经编译好的程序等,使用tftp无疑是个便捷的选择。1、Linux主机搭建tftp服务可以参考我之前的记录:http://blog.csdn.net/baweiyaoji/article/details/52824764不多赘述。2、确保Linux、开发板、PC主机在同一网段可以手动设置IP,注意是有线网卡的IP。 PC主机:原创 2017-03-24 19:32:48 · 541 阅读 · 0 评论 -
fl2440——添加DM9000网卡支持
1、修改内核代码vim arch/arm/mach-s3c2440/mach-smdk2440.c#include <Linux/dm9000.h> //添加DM9000网卡的头文件并添加如下代码:/*Add DM9000 ethernet drivers*/#define DM9000_BASE (S3C2410_CS4 + 0x300)static struct resource原创 2017-03-24 18:47:10 · 375 阅读 · 0 评论 -
fl2440——内核修改和initramfs文件系统启动
在上篇中记录了一下u-boot的修改、移植。现在记录一下Linux内核移植和根文件系统的启动。1、内核的修改第一步,下载Linux内核(www.kernel.org)压缩包,我选择了linux-3.0。 1.1配置内核编译参数修改Makefile文件,修改交叉编译器环境变量和选择开发平台类型: [tangbin@localhost linux-3.0bk]$ vim Makefile 修改如下原创 2017-03-22 19:06:36 · 1325 阅读 · 0 评论 -
fl2440——u-boot的移植
1、u-boot移植前期准备 1.1创建开发板目录结构 我创建了fl2440这个文件夹,除了bootloader的u-boot之外,以后需要制作的Linux内核,根文件系统,相关的驱动,第三方应用,自己写的程序等,都放入对应目录下,便于管理。 [tangbin@localhost ~]$ cd fl2440/[tangbin@localhost原创 2017-03-20 20:16:02 · 969 阅读 · 0 评论 -
fl2440——驱动学习-ADC驱动
硬件描述: S3c2440有一个10-bit的CMOS ADC 模数转换器,支持8个模拟通道输入,10位的分辨率,最高速度可达500KSPS(500 千次/每秒)。 fl2440上的原理图: 从图中可知:模拟ADC,包含了2部分功能,一部分是触屏功能,另一部分就是普通ADC功能,分别可以产生INT_TC和INT_ADC 两个中断。8个AIN模拟输入(A[3:0],YM,YP,XM,XP原创 2017-04-09 20:02:56 · 477 阅读 · 0 评论