【双11整点0元秒杀活动】嵌入式Linux应用开发完全手册

【双11整点0元秒杀活动】嵌入式Linux应用开发完全手册

11月15日下午15点整!点!秒!杀!!!

更多优惠活动:http://www.cirmall.com/bbs/forum.php?mod=viewthread&tid=160955?circuit

本书全面介绍了嵌入式Linux系统开发过程中,从底层系统支持到上层GUI应用的方方面面,内容涵盖Linux操作系统的安装及相关工具的使用、配置,嵌入式编程所需要的基础知识(交叉编译工具的选项设置、Makefile语法、ARM汇编指令等),硬件部件的使用及编程(囊括了常见硬件,?热鏤ART、I*IC、LCD等),U-Boot、Linux内核的分析、配置和移植,根文件系统的构造(包括移植busybox、glibc、制作映象文件等),内核调试技术(比如添加kgdb补丁、栈回溯等),驱动程序编写及移植(LED、按键、扩展串口、网卡、硬盘、SD卡、LCD和USB等),GUI系统的移植(包含两个G UI系统:基于Qtopia和基于X),应用程序调试技术。 本书从最简单的点亮一个LED开始,由浅入深地讲解,使读者最终可以配置、移植、裁剪内核,编写驱动程序,移植GUI系统,掌握整个嵌入式Linux系统的开发方法。 本书由浅入深,循序渐进,适合刚接触嵌入式Linux的初学者学习,也可作为大、中专院校嵌入式相关专业本科生、研究生的教材。

电路相关文件

分享到:
收藏 (0)
电子硬件助手小程序 电子硬件助手小程序

电路城电路折扣劵获取途径:

电路城7~10折折扣劵(全场通用):对本电路进行评分获取;

电路城6折折扣劵(限购≤100元电路):申请成为卖家,上传电路,审核成功后获取。

(版权归BEIF所有)

版权声明:电路城所有电路均源于网友上传或网上搜集,供学习和研究使用,其版权归原作者所有,对可以提供充分证据的侵权信息,本站将在确认后24小时内删除。对本电路进行投诉建议,点击投诉本电路反馈给电路城。

使用说明:直接使用附件资料或需要对资料PCB板进行打样的买家,请先核对资料的完整性,如果出现问题,电路城不承担任何经济损失!

换一批 more>>

大家都在看:

继续阅读

  • 自制超迷你语音助手--Pico

    项目简介:一个解决个人使用智能音箱痛点的迷你语音助手小机器人。由于个人希望有一个可以从硬件开始定制的语音助手,且需要在语音助手上接入并控制我自己的设备(自有协议),可扩展性还要好,方便后续升级(不论是硬件还是软件),同时还希望设备能很迷你...所以就耗时5个月设计了Pico。Pico主要有以下特点: 自主设计的电路硬件,可以方便地增减需要的硬件模块,比如添加多麦模块、手势识别模块,删去不必要的蓝牙音箱功能等等从最底层实现语音功能,所有代码都可以开放成SDK使用最常用的Mqtt协议实现自定义硬件接入,将语音识别结果用来控制任何东西(后期加入语义理解的话效果更佳)带一个OLED显示屏极致小巧,仅仅比口香糖大一点结构设计说明:Pico的结构设计草图↑对于Pico的ID设计之前想过好几种方案: 使用铝合金CNC加工,做成类似魔方的正方体外壳样式使用DLP树脂3D打印,设计成类似天猫精灵的迷你版圆柱体外壳,以光固化打印的精度也能达到不错的质感使用透明亚克力切割成形,设计为三明治夹层式的堆叠设计,这也是我最终采用的方案最终选择亚克力作为外壳结构有几个原因: 其一是该方案的“视觉极客感”最强,由于直接使用透明盖板将PCB电路展现出来,个人觉得颜值方面化繁为简,符合个人审美哲学其次是对于CNC加工和3D打印在之前的作品中都已经有所使用,而亚克力设计方式还是第一次接触,尝试未知技术是很重要的一个考量因素其三是由于整体体积非常紧凑小巧,因而如果使用封闭式设计的话散热就变成需要考量的因素了,而夹层式的开放设计则在这方面完全无需担心最后一个原因是,亚克力便宜如上面草图所示,结构主要为三层:亚克力前盖、PCB电路板、亚克力后盖,使用M2的滚花轴铜柱进行组合连接,其中前板采用热弯折的方式弯折10度左右形成底座,后方走USB线。机械结构的设计使用Rhinoceros软件完成↓亚克力厚度使用的2mm, 找了个小伙伴操作机床雕刻成型, 然后用电烙铁加热弯折。值得注意的是亚克力的熔点是300度左右,但100度左右的时候就会变软了,因此这里将烙铁温度设定为100度,不带调温功能的烙铁是不能直接拿来操作的。使用机床雕刻的亚克力外壳使用电烙铁进行热弯↑电路设计说明:硬件电路方面使用自己设计的超迷你ARM-Linux核心板MiniPi↓MiniPi作为核心板,运行Linux系统,使用mini-PCIE的金手指封装引出了需要的IO。这里Pico主要使用到两个USB接口(一个接USB声卡,一个接无线网卡),串口(用于调试和控制台输出),几个GPIO(用于驱动按键和LED),I2C接口(保留,后期可能会用于和板载的Arduino通信,Arduino用于驱动一些外围交互模块如红外感应、手势识别等),此外OLED也是使用I2C接口驱动的。由于底板的功能比较简单,主要就是作接口扩展,因此底板的PCB采用2层Layout。板载的IC主要有: OLED12864,驱动IC为SSD1306,这个应该属于很常用了PCM2912A,TI出的USB接口声卡(很贵,30多一片,价格快赶上用的CPU了),音质还是不错的CP2102,USB转串口芯片,也很常用,通过USB线把Pico连接电脑之后,就可以直接用串口控制台使用Linux了LM4871,功放IC,用于音频放大然后扬声器输出USB-Type C母座,USB接口当然是使用我最爱的Type CPico底板原理图↑PCB的设计当然使用Altium Designer↓底板的设计没有太多可讲的,两层板走线很随意,也没有高速器件,USB那边做好差分走线就行,最好再加上ESD(本版属于功能验证性质就没加了)。声卡方面经过试验耦合电容的选择对声音效果还是有一些影响的。这次的Pico上用的MiniPi核心板做了微调,之前一共做过三版:第一版由于是初次设计高速多层板,虽然功能没问题,但是有不少小缺陷,比如电源电路BUG、没有加板载的关机按键、音频电路没有做数字地和模拟地的隔离等等;第二版则是做了一些IO调整;第三版是比较稳定了,但是考虑到把SD卡设计在核心板上可能会在一些项目中不太方便更换(被夹在核心板和地板中间了),因而在金手指上添加了外置SD卡的接口。MiniPi核心板的CPU和DDR部分的电路如下,滤波电容非常多,CPU这样极高频率的器件对电源的纯净度要求很高,要尽量保证每个电源脚都有一个滤波电容↓CPU部分外围电路↑PCB投板回来之后就是蓝翔技能施展阶段了,主要用到的工具有:热风枪、烙铁、镊子、锡浆、吸锡带、助焊剂等。这里科普一下贴片元件的焊接方法:与直插元件不同,贴片的器件由于焊盘太小(我用的0402阻容),器件分布太密集,是基本不可能用烙铁一个一个去焊接的,手工焊接采用的方法主要是回流焊。所谓回流焊,其实就是利用液体的张力,让融化之后的液态锡把器件拉到焊盘中央完成焊接,不太理解的可以百度搜索一下“回流焊”。进行回流焊的第一步是制作钢网,也就是器件焊盘的掩模,这个在设计好PCB之后把相关的加工文件发给厂家就可以进行激光切割制作了,价格也不贵一般50左右。PCB钢网掩膜↑把空PCB对准钢网掩模之后就可以刮上锡浆了,这样就完成了一次性对所有的焊盘上锡。然后把元件都按设计摆放上到PCB上,这一步不需要讲位置摆的非常准确因为再下一步回流的时候器件会由于液态锡的张力自动归位的。上好锡膏的PCB板子↑上一步贴片完成之后就需要用风枪进行吹焊回流了,相对于一般的器件来说BGA的吹焊难度要大很多因而将其放在最后焊接。吹焊温度大概控制在250-300度,风枪的吹嘴去掉以增大风口便于均匀加热,这一步对焊接经验要求较高,只能多练习尝试掌握技巧了。底板的焊接相对简单,就不多罗嗦了,焊接完毕之后首先用万用表测电源是否短路,没问题的话上电检测电压,没有BUG的话就可以进行功能测试了。焊接完的成品↑软件开发说明:硬件搞定之后就开始移植软件啦,MiniPi核心板运行的是Debian系的Ubuntu系统,完全兼容树莓派的各种软件,所以可以利用上很多优秀的开源资源。软件的实现上也参考了另外一个基于树莓派的智能音箱项目叫做叮当,主页在这里:叮当主页整个软件框架借鉴了Jasper项目。软件主要分为以下几个模块: ASR模块(Automatic Speech Recognition,语音识别),用于获取用户的指令,其中包括语音唤醒功能TTS模块(Text-To-Speech,语音合成),用于给出语音应答NLP模块(Natural Language Processing,自然语言处理),用于理解指令的语义,以便采取相应的动作,包括对话功能MQTT模块,用于实现智能家居联网控制功能智能音箱正常工作要解决的第一个问题就是如何接收指令,这里主要涉及两个问题: 被动唤醒(Passive Listening),即“什么时候开始听”。这个阶段只监听唤醒词,当听到唤醒词时,进入主动聆听。主动聆听(Active Listening),即“什么时候结束听”。这个阶段主动聆听用户的任何语音指令,然后对听到的内容进行分析处理。被动唤醒阶段的基本策略是:以1s的时间窗口通过麦克风进行滑窗采集语音,计算每一帧的波形强度,超过设定的阈值的话就把语音送到ASR模型中判断是否是唤醒词(“你好Pico”),判断为真的话,进入下一个阶段进行主动聆听。主动聆听的策略与被动唤醒基本相似,以1s的时间窗口通过麦克风进行滑窗采集语音,计算每一帧的波形强度,超过设定的阈值的话,就认为用户已说完了指令。唤醒关键词的识别使用的是一个开源引擎叫snowboy(另外还有一个库叫PocketSphinx也很好用), 这两个引擎都是离线工作的,不需要连接云端,识别率经测试还是比较高的,当然实际效果跟关键词的选取有关。snowboy个人使用是免费的↓SnowBoy的主页前端的唤醒和指令获取工作完成之后,剩下的功能都由讯飞SDK实现,具体的API介绍和使用说明可以参考官方的Reference文档:在线语音合成 Linux SDK 文档当然讯飞作为中文语音技术的扛把子,SDK开放的功能是非常丰富的,只要不是商业使用,很多功能基本也是免费的:对于智能家居的控制功能,这个就很有意思了,因为我之前用Android平台做过一个机器人项目,也实现了几乎一样的需求,所以智能家居控制的大部分的功能可以直接移植过来使用,包括自制的物联网网关硬件。但是跟上面那个娱乐向的手机器人不一样的是,这次要做的是一个正儿八经的语音助手设备,如果最后只能控制几个LED的话显然无法满足我的无理要求。所以我做出了一个大胆的决定,让Pico向【小爱同学】伸出魔爪,进行“语音接口对接”,具体效果可以看后面的演示视频。演示效果:
    来自:Hackaday Prize 2019时间:2019-07-21 智能家居 树莓派 linux
  • 基于ADXL335和MSP430实现背部姿势矫正装置

    每当您保持不良姿势时都会收到警报,帮助你避免由于姿势不当导致的背部疼痛问题。硬件组件:德州仪器MSP-EXP430G2 MSP430 LaunchPad× 1 SparkFun Triple Axis Accelerometer Breakout - ADXL335× 1 蜂鸣器× 1 LED(通用)× 2 软件应用程序和在线服务:德州仪器Energia目前,大多数人患有背痛或者和这相关的问题。该背部姿势矫正装置x通过检测判断错误和正确的背部位置,错误时发出警告来帮助用户调整姿势。该器件中使用的主要元件是德州仪器为我们提供的ADXL335加速度计和MSP430微控制器。目标:缓解日常生活中的背部疼痛。提供便宜的成本,易于使用和易于维护的设备供每个人使用。使用MSP430微控制器作为人与机器之间的接口。
    来自:可穿戴设备时间:2019-06-27 嵌入式 微控制器 加速度计
  • OrangePi

    智慧消防子节点设计,有温湿度,光强,气压计,烟雾传感器,可燃性气体传感器,火焰传感器,433模块组成.是OrangePi的扩展板子.如有需要留邮箱给代码.可以直接打板子.原理图如下PCB2D:PCB3D:反面;
    来自:通信与网络时间:2019-06-15 嵌入式 全志 bmp280
  • DIY 555精确可调节定时器

    了解如何使用555 IC制作精确可调的定时器,延迟时间为1 - 100秒。硬件组件:德州仪器555× 1 Adafruit3KΩ电阻器× 2 Adafruit10KΩ电阻器× 4 Adafruit1MΩ电位器× 1 Adafruit IN4004二极管× 1 Adafruit Tactile Momentary按钮× 2 Adafruit 5毫米LED× 2 SparkFun 100uF电容器× 2 SparkFun 0.1uF(100nF)电容器× 1 SparkFun 2针螺丝端子× 1 SparkFun 3针螺丝端子× 1 SparkFun 12VDC继电器× 1 SparkFun 12VDC适配器× 1 SparkFun SPDT滑动开关× 1 手动工具和制造机器:烙铁焊锡丝迷你PCB手钻+钻头钢丝钳剥线钳焊接助手了解如何使用555 IC制作精确可调的定时器,延迟时间为1 - 100秒。555定时器配置为单稳态多谐振荡器。555是一款高度稳定的器件,用于产生精确的时间延迟或振荡。如果需要,提供附加端子用于触发或重置。在延时工作模式下,时间由一个外部电阻和电容精确控制。电路可以在下降波形上触发和复位,输出电路可以提供或吸收高达200mA的电流或驱动TTL电路。在单稳态模式下,LM555定时器用作单触发脉冲发生器。当LM555定时器在触发输入端接收到低于电源电压1/3的信号时的脉冲。输出脉冲的宽度由RC网络的时间常数决定。当电容器上的电压等于电源电压的2/3时,输出脉冲结束。通过调整R和C值,可以根据应用扩展或缩短输出脉冲宽度。外部电容最初由定时器内的晶体管放电。在向引脚2施加小于1/3 VCC的负触发脉冲时,设置内部触发器,其均释放电容器两端的短路并将输出驱动为高电平。然后,电容器两端的电压呈指数增长,持续时间为t = 1.1RC,在此期间电压等于2/3 VCC。然后内部比较器复位触发器,触发器依次使电容器放电并将输出驱动至低电平状态。
    来自:基础电路时间:2019-06-10 时钟 家庭自动化 嵌入式
  • 带警报功能的的植物土壤水分测量系统

    您将学习如何创建一个系统来监控土壤湿度水平,并告知用户灌溉植物。硬件组件:DFRobot Gravity:用于Arduino的模拟土壤湿度传感器× 1 Arduino UNO和Genuino UNO× 1 跳线(通用)× 1 Pimoroni Maker Essentials - 迷你面包板和跳线生涩× 1 Adafruit标准LCD - 16x2白色蓝色× 1 旋转电位器(通用)× 1 软件应用程序和在线服务:Arduino IDE在住宅中,常见的是找到具有不同植物的罐子。但是由于日常工作的忙碌,人们忘记给他们的植物浇水,他们最终因缺水而死亡。作为避免这个问题的一种方法,我们决定创建一个系统,以告知土壤何时没有水。通过这种方式,您将永远不会忘记灌溉您的植物,它将长期存活。这是一个简单的系统,用于监测我们的残留物中的植物水分,并告知用户土壤水分含量。
    来自:基础电路时间:2019-05-31 传感器 家庭自动化 嵌入式
  • 适用于Arduino的3D打印和可扩展机器人

    这是一款功能多样的机器人,具有多种功能,底盘可以3D打印,并且有很大的扩展空间。硬件组件:Arduino UNO和Genuino UNO× 1 SparkFun双H桥电机驱动器L298× 1 带轮子的齿轮直流电动机× 2 SparkFun超声波传感器 - HC-SR04× 1 蓝牙HC-05收发器× 1 9V电池夹× 1 9V电池(通用)× 1 SparkFun面包板 - 迷你模块化× 1 跳线(通用)× 1 SparkFun LED - RGB漫射共阳极× 2 电阻330欧姆× 3 螺钉6-32 X 1/2英寸(通用)× 1 砂纸(通用)× 1 超级胶水(通用)× 1 手动工具和制造机器:普通螺丝刀迷你螺丝刀3D打印机(通用)只要您拥有3D打印机,这个项目就很容易实现,电子零件的成本仅为30-35美元左右。3D打印总共需要35个小时,但可以在大约30分钟内进行组装和编程。只需要2个螺丝刀即可构建,无需任何焊接。 我想把这个东西设计成便宜并且使用普通部件,所以这个机器人目前使用9V电池。它们很快就耗尽了很多用途,所以我可能最终设计出一种可以使用可充电锂离子电池和Adafruit强力助推器的新产品。
    来自:机器人时间:2018-09-26 机器人 3d打印 嵌入式
  • 基于Arduino设计的简单的倾角仪

    这是一个使用Arduino 101的简单测斜仪项目,包括温度特性和显示器的自动旋转(倒置视图)。硬件组件: Arduino 101和Genuino 101× 1 多功能护盾× 1 软件应用程序和在线服务 Arduino IDE这是一个简单的测斜仪项目,具有显示器的自动旋转功能。这个倾角仪可以在任何位置旋转,保持数字可读甚至颠倒!它由加速度计驱动的Arduino 101控制,以读取XY轴的倾斜角度。此外,还有一项功能可以显示摄氏或华氏度的环境温度。
    来自:DIY创意产品时间:2018-09-05 嵌入式 陀螺仪 加速度计
  • 使用Arduino和4x4键盘的无钥匙门锁系统

    在这个项目中,我们将制造一个无钥匙门锁系统,该系统使用4X4键盘输入键和伺服电机打开或关闭。硬件组件:Arduino UNO和Genuino UNO× 1 舵机(Tower Pro MG996R)× 1 跳线(通用)× 1 面包板(通用)× 1 5毫米LED:红色× 1 5毫米LED:黄色× 1 蜂鸣器× 1 Adafruit标准LCD - 16x2白色蓝色× 1 软件应用程序和在线服务:Blynk随着盗窃日益增加,安全性成为一个主要问题。在这个项目中,我们将使用Arduino Uno制作带键盘的数字门锁系统。只有输入了正确的密码(*#C9 ),它才会打开你的门,它会因错误的密码而发出哔哔声。
    来自:家用电器时间:2018-08-30 物联网 家庭自动化 嵌入式
  • 由Alexa控制的背光DIY空气加湿器

    介绍:北方冬季非常寒冷,因此集中供暖对于保持公寓温暖至关重要。然而,除了让我的房子变暖外,中央供暖系统还会让我家的空气变干。干燥的空气使我的鼻窦炎爆发,并且很难在没有生病的情况下度过冬季。厌倦了生病,我今年决定在家里管理干燥的空气。虽然商店里有很多加湿器,但我决定为自己制作一款智能的Alexa加湿器将是一个有趣的挑战。硬件组件:Arduino Micro和Genuino Micro× 1 ESP8266 ESP-01 × 1 WS2812B 5050 NeoPixel Ring 8× 1 SparkFun面包板电源棒5V / 3.3V× 1 电阻4.75k欧姆× 1 电容器100 nF× 1 20mm 113KHz超声波雾化器× 1 面包板(通用)× 1 软件应用程序和在线服务:Arduino IDEAlexa Skills Kit 亚马逊Alexa Alexa技能套件 MQTTAWS Lambda 亚马逊网络服务AWS Lambda手动工具和制造机器:烙铁(通用)3D打印机(通用)
    来自:家用电器时间:2018-08-17 物联网 家庭自动化 嵌入式
  • 数字时钟,LED显示自动旋转

    这个时钟可以在任何位置旋转,保持数字可读甚至颠倒或镜像!硬件组件:Arduino UNO和Genuino UNO× 1 SparkFun三轴加速度计和陀螺仪- MPU-6050× 1 多功能护盾× 1 母/母跳线这个项目是关于7-Seg LED显示屏自动旋转的数字时钟,它是我的数字时钟的升级版,带有由加速度计驱动的镜像显示器。这个时钟可以在任何位置旋转,保持数字可读甚至颠倒或镜像!它由Arduino控制,由加速度计驱动,找出3D坐标中的正确位置。此外,还有一项功能可以显示摄氏或华氏度的室内环境温度。组装非常简单,我希望你玩得开心!
    来自:照明与LED显示时间:2018-08-10 led 嵌入式 数字时钟
销量
0
查看
156
BEIfeng

BEIfeng

见习卖家
电子行业从事者
参数名 参数值
发布于 2019 年 11 月 08日
更新于 2019 年 11 月 13日
Moore8直播课堂

tracer