本篇文章整理下嵌入式开发中一些入门的基础技能,都是根据以往的工程经验整理,适用于之前没做过嵌入式开发的新手。

嵌入式开发流程一般如下,一般是在PC机的Windows系统下安装Ubuntu虚拟机,搭建嵌入式开发环境及交叉编译环境,开发完成后,编译得到bin文件,然后在Windows下将bin文件通过串口或网络下发到嵌入式板卡,程序在嵌入式板卡上运行。

1. RS232串口接孔图解

串口,一般也指COM接口,传输速度较慢,适合远距离传输。这里用于主机与嵌入式版之间的数据通信,一般用于指令下发等。按照协议标准还分为RS-232-C、RS-422、RS485等。其中RS-232也是最常用的串口,称为标准串口。下面仅介绍RS-232的的接线图。RS232串口为9针接口,分为公头与母头,PC机上的串口一般为公头,如下图。

各个针孔功能如下:

最简单的串行接口需要的信号线是2数据发送(TxD)3数据接收(RxD)和5信号地(GnD) ,只需要接通这3根线即可实现上位机PC与嵌入式板的通信,如下图:

2. 上位机与嵌入式板串口通信工具

一般使用SecureCRT工具进行上位机与板卡通信。

(1)串口连接

打开快速连接

协议选择Serial,端口与波特率根据实际情况而设置,

点击连接,弹出新窗口,敲回车键,出现以下界面表示上位机与板卡连接成功。

(2)使用Telnet连接

Telnet连接就是使用网络(即网线)实现PC机与板卡通信,而不需要串口。

Tlenet新建连接,选择Telnet协议,主机名是板卡的ip。

点击连接,弹出新窗口,输入用户名和密码:

3. 上位机与嵌入式板卡实现文件传输

在SecureCRT中使用命令ifconfig查看板卡的ip地址:

将上位机PC与嵌入式板卡用网线直接连接,将PC机的本地连接ip地址改成与嵌入式板卡同一个网段,例如:

在上位机中打开tftpd32工具,在Server interface中选择上位机与嵌入式板卡相同网段的ip,如下:

注意之类PC机是作为TFTP协议的服务端,板卡作为客户端。

将文件从上位机下载到板卡,在SecureCRT中输入以下命令:

tftp -g -r 1080P.jpg 192.168.1.100

这里-g表示从PC下载文件到板卡,-r表示远程服务器(即PC)的文件, 1080P.jpg表示要传输的文件,后面的ip地址就是PC机的IP地址,例如:

输入以上命令后,板卡在当前目录下即收到该文件。如果需要在某个目录下接收文件,需要切换到该目录下,再输入以上命令。

将文件从板卡传输到上位机,在SecureCRT中输入以下命令:

tftp -p -l 10801P.jpg 192.168.1.100

这里-p即推送的意思,-l表示本地(板卡)的文件。

4. 常用Linux命令

  • 回到根目录:cd /
  • 解压文件:tar -xvf data.tar
  • 删除文件: rm -f 1.txt
  • 改变目录的读写权限:sudo chmod 777 /usr/share/themes

说明:这里777表示每个用户都可以读写,后面设的是路径

  • 重命名:mv aaa.h264 bbb.h264

说明:将aaa.h264重命名为bbb.264

  • 查看ip地址:ifconfig
  • 查看文件属性:stat sample_nnie_main
  • 查看当前路径:pwd
  • 创建文件夹:mkdir
  • 更改ip地址:ifconfig eth0 192.168.6.111  (重启后会丢失)

(持续更新)

5. MP4、AVI等转换为*.h264格式

在嵌入式系统中,程序往往无法直接解码mp4,avi等格式视频文件,需将其转换为裸流.h264格式,方法如下:

PC上下载ffmpeg工具,切换到ffmpeg.exe的目录,用cmd打开命令行窗口:

.mp4转.h264:

ffmpeg -i 1920x1080.mp4 -codec copy -bsf: h264_mp4toannexb -f h264 1920x1080.h264

.avi转.h264:

ffmpeg -i 160x120.avi -vcodec h264 -s 160*120 -an -f m4v test.h264

即在ffmpeg目录下生成所需格式的文件。

嵌入式开发(一):嵌入式开发新手入门(转载后续需要修改补充)相关推荐

  1. python手机开发的软件_Python新手入门教程_在手机上就能学习编程的软件

    Python新手入门教程_在手机上就能学习编程的软件 很多小伙伴会问:我在学编程,想利用坐地铁坐公交吃饭间隙学编程,在手机上能学编程的软件有哪些?毕竟时间宝贵啊!!哈哈哈!!! 这个问题,在悟空回答的 ...

  2. 低功耗蓝牙开发权威指南 pdf_新手入门神器!物联网低功耗蓝牙开发板,免费申请...

    特性: 支持Arduino IDE编程 支持BLE 4.1主从机切换 支持蓝牙串口数据透传 支持蓝牙点对点无线编程 支持蓝牙4.1多设备级联(最多4个) 支持Arduino蓝牙库(支持多蓝牙连接使用) ...

  3. 嵌入式培训怎么学?新手怎么学习嵌入式开发

    在当今社会中一个非常显着的代名词就是"高科技",可谓是无处不在,首先哪些像火箭,飞船的咱就不多说了,说了咱也搞不明白,我们就说身边的东西,例如无人驾驶汽车,自动收藏的床,声控灯,四 ...

  4. 《嵌入式 Linux应用程序开发标准教程(第2版)》——第1章 Linux快速入门 1.1 嵌入式Linux基础...

    本节书摘来自异步社区<嵌入式 Linux应用程序开发标准教程(第2版)>一书中的第1章,第1.1节,作者 华清远见嵌入式培训中心,更多章节内容可以访问云栖社区"异步社区" ...

  5. 学习嵌入式linux与ARM开发板入门方法(一)

    嵌入式开发板(Embedded development board)就是半导体行业分工合作的载体之一,它为开发产品的厂商提供基本的底层硬件.系统和驱动等资源,使得用户不需要再投入人力和时间来完成这些底 ...

  6. 什么是嵌入式开发?嵌入式软件开发入门教程

    嵌入式系统发展到今天,对应于各种微处理器的硬件平台一般都是通用的.固定的.成熟的,这就大大减少了由硬件系统引入错误的机会.此外,由于嵌入式 操作系统屏蔽了底层硬件的复杂性,使得开发者通过操作系统提供的 ...

  7. 新手学习嵌入式Linux和Android开发板推荐

    一,确定目标,linux是一个非常非常大的概念.想全部吃透是不可能的.理想的说,搞懂linux,就可以做所有工作.个人更倾向于说想做什么样工作,需要侧重学linux的哪部分. 二,选择开发板 学习嵌入 ...

  8. 嵌入式系统Linux内核开发实战指南(ARM平台) 书评

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! < ...

  9. 中国嵌入式高端ARM开发板的江湖故事——详细分析国内各家ARM11 S3C6410 开发板的选型以及竞争格局

    // Topic:中国嵌入式高端ARM开发板的江湖故事--详细分析国内各家ARM11 S3C6410 开发板的选型以及竞争格局 //作者:gooogleman //版权:gooogleman  邮箱 ...

最新文章

  1. 前沿 | 一文详解自动驾驶激光雷达和摄像头的数据融合方法
  2. nginx 负载均衡配置_LINUX系统nginx负载均衡配置
  3. unix 存储空间不足 无法处理此命令_大数据分析命令行使用教程
  4. 乐学python_【IT专家】铁乐学python
  5. html填满剩余空间,html – 标题,两侧填充剩余空间
  6. js cookie 存储checkbox_[cookie实战记录-1]种下一个cookie
  7. WordPress无其他语言解决方法
  8. jQuery简单插件开发
  9. 【白皮书分享】2021中国女性婚恋观白皮书.pdf(附下载链接)
  10. mysql 怎么修改成新字段_Mysql入门第一课《建表、改表、删表》
  11. 社区团购微信小程序开发
  12. 管家婆普及版安装问题
  13. gitHub报错10054、443解决办法
  14. dell服务器uefi启动u盘安装系统,uefi启动u盘安装系统怎么装|uefi u盘启动装系统步骤...
  15. 怎么把PDF分割成几个文件?分享几种分割方法
  16. 【Python爬虫案例学习4】Python 爬取meizitu
  17. (android文档原创翻译)管理Activity的生命周期一
  18. 07 仿网易严选微信小程序商城
  19. 魔改大西瓜源码下载之后画面显示只有一半的解决方法
  20. 从Flink SQL doesn't support consuming update and delete changes 错误谈起

热门文章

  1. npm 的 --unsafe-perm 参数
  2. Java String.contains()方法
  3. tabindex 属性 - HTML中代表使用Tab键的遍历顺序
  4. 关于println()和print()的区别
  5. 微服系列之Feign使用HttpClient和OkHttp网络请求框架
  6. Gruobi多目标规划
  7. 利用C#写一个模拟的摇号系统
  8. js正则表达式(2)
  9. Windows远程桌面提示CredSSP加密数据库修正
  10. ROS常用的仿真软件