嵌入式
文章平均质量分 89
ruglcc
一个有代码洁癖的技术宅,研发12年,专注于 android ios 嵌入式 桌面应用
展开
-
代替交叉编译-搭建ARM Linux板级本地开发环境-实现在线编译调试
1、问题描述交叉编译的方式有时很不便, 比如需要搭建交叉编译工具链, 每次编译后上传代码运行再调试, 通过打印日志方式进行调试效率也不高,本文尝试在Arm Linux 板子上直接搭建开发及调试环境,并使用功能强大的vscode实现在线编辑和调试的功能,如果板子的性能可以,这种方式可以提高开发效率, 同学们可以试试。2、环境搭建1、无连网情况下,手动安装工具链,参考【教程】制作能在ARM板上直接运行的gcc本地编译器2、ARM Linux板子或设备有连网能力情况下:以32位 ARM7的设备为例,原创 2022-02-21 15:18:32 · 2670 阅读 · 0 评论 -
学习Emacs系列教程(五):编辑(2)—— 标记
有段时间没写这个教程了,自己险些放弃,不过回头想想看个小说都讨厌太监,自己写更不能太监,还是要坚持下去。闲话不多说,进入这次的正题,关于编辑文本的另一些内容。一、标记和区域 所谓区域(region)就是平时我们使用鼠标选中的一段文字,在emacs中用样可以使用鼠标来选择一段文字表示区域,如果使用键盘操作的话需要用一个术语叫标记(mark),也就是一个基准点,或者说是区域的起点,使转载 2012-08-02 09:32:15 · 1122 阅读 · 0 评论 -
学习Emacs系列教程(十):多窗口
首先先明确下Emacs窗口的概念,我们双击Emacs图标打开程序见到的Windows窗口叫做Frame,包含了标题栏,菜单栏,工具栏,最下面的Mode Line和回显区域,而中间一大块显示文本的区域则是Window,实际上每个窗口都有自己的Mode Line。下文中我将称Frame为框,Window为窗口,这里和我们平时理解的Windows窗口有点区别。 在Emacs里面,一个框可以分割出多转载 2012-08-02 10:14:22 · 2192 阅读 · 0 评论 -
学习Emacs系列教程(二):导航
上回开了个头,简单的介绍了Emacs的一些基本常识,这回继续说基本常识,怎么移动你的光标。可能有人会说,这上下左右键不是很好用吗,还用你来讲。呶,Emacs的强大在于你能够只使用键盘左边那堆键来完成任何事情(不包括顶上的ESC和Function),这也是Emacs的设计宗旨。 为了试验这些按键,大家在进入Emacs时选择页面中间的Emacs Tutorial,这里面可以随便乱按不用担心出什么转载 2012-08-02 08:19:38 · 1109 阅读 · 0 评论 -
vim的简单配置
第一步,安装gvim。sudo apt-get install vim-gtk vim-doc cscope第二步,新建一个配置文件 vimrcvi ~/.vimrc第三步,将下列内容添加到该文件中,保存。set nocompatible "关闭与VI的兼容set number "显示行号filetype on set history=1000 set back转载 2012-07-31 17:20:46 · 1304 阅读 · 0 评论 -
gcc 工具链简介实例
linux Gcc 工具链的基本组成与工作流程hello.c#include int main(){ printf("Hello World!\n"); return 0;} 执行 命令:gcc hello.c -E > hello.i 只做预处理hello.i# 1 "hello.c"# 1 ""# 1 ""# 1 "原创 2012-08-01 10:26:33 · 4428 阅读 · 2 评论 -
Linux中的环境设置PATH与export
详解Linux系统修改环境变量PATH路径的方法一.比如要把/etc/apache/bin目录添加到PATH中,方法有三:1.#PATH=$PATH:/etc/apache/bin使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效2.#vi /etc/profile在适当位置添加 PATH=$PATH:/etc/apache/bin(注意转载 2012-07-31 13:53:26 · 2644 阅读 · 0 评论 -
Linux环境变量的设置和查看方法
1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH转载 2012-07-31 13:39:05 · 696 阅读 · 0 评论 -
初学makefile
初学makefile 作为一个初学者,第一次自己动手写makefile,虽然参照了不少资料,但是实践过程中还是遇到了很多问题。希望给后来者一个参考。 为什么要写makefile?之前学C语言,用的都是IDE工具,基本都是在windows下进行的。现在转到linux下了,开发的方式发生了改变。要在linux下开发C语言程序,有三样很基础的东西一定要熟悉转载 2012-07-31 17:02:15 · 7377 阅读 · 2 评论 -
Ubuntu terminator 多窗口终端的快捷键
KEYBINDINGS The following keybindings can be used to control Terminator: Ctrl+Shift+O Split terminals Horizontally.(上下开新窗口) Ctrl+Shift+E Split terminals Vertically.(垂直开新窗口) Ctrl+Shif转载 2012-07-31 12:12:25 · 8608 阅读 · 0 评论 -
ubuntu终端快捷键
测试--修改--添加ingctrl+alt+t 打开shellBash Shell 快捷键 :删除从光标到当前单词结尾的部分 :将光标移到当前单词头部 :将光标移到当前单词尾部 :插入最近删除的单词 :重复前一个命令最后的参数。 Ctrl + a -转载 2012-07-31 11:25:13 · 1233 阅读 · 0 评论 -
Vim 配置详解
http://www.cnblogs.com/witcxc/archive/2011/12/28/2304704.html 首先安装完整版本的VIM 如果是在Linux下,可以安装VIM-Enhance使其扩展为完整版本的VIM,如果在Windows下,直接安装它的Binary就行了。当然自己编译安装可能更好些。安装成功以后就是第二步设置vim vim通过一个叫vim转载 2012-07-31 09:07:23 · 2258 阅读 · 0 评论 -
linux alias命令参数及用法详解--linux定义命令别名alias
命 令: alias功能说明:设置指令的别名。语 法:alias[别名]=[指令名称]补充说明:用户可利用alias,自定指令的别名。若仅输入alias,则可列出目前所有的别名设置。 alias的效力仅及于该次登入的操作。若要每次登入是即自动设好别名,可在/etc/profile或自己的~/.bashrc中设定指令的别名。 还有,如果你想给转载 2012-07-31 08:53:21 · 1563 阅读 · 0 评论 -
学习Emacs系列教程(六):编辑(3)
这次介绍编辑中关于粘贴复制的部分,不过在Emacs中称粘贴复制为Killing和Yanking,而不是通常说的Cutting和Pasting,当然差别不会太多。 一、Killing Killing就是指删除指定的一段内容并将其放入kill 环中,kill 环和上章所介绍的标记环差不多也是一个先进先出的队列,我们还可以理解为Windows里的粘贴板。在Emacs中删除命令分为两大类,一转载 2012-08-02 09:39:20 · 1299 阅读 · 0 评论 -
Emacs 编辑环境,第 7 部分: 让 Emacs 帮助您走出困境
这是关于学习 Emacs 的系列教程中的第 7 部分(请参见参考资料)。本系列文章前面的教程带您了解了关于 Emacs 的基础知识;本篇中级水平的实践教程构建于您在前面教程中所学习的基础知识之上,并向那些已经熟练掌握 Emacs 基本控制方法的读者介绍如何在 Emacs 中使用各种内置的帮助特性来获得相关的帮助。我们之所以将 Emacs 称为自身配备相关说明内容的编辑器,是因为对于您所进行转载 2012-08-02 11:27:44 · 844 阅读 · 0 评论 -
学习Emacs系列教程(七):剪切板
Emacs 在不同的操作系统中表现会有一些小的差异,这里我接着上一章所提到的粘贴复制来比较一下不同操作系统中Emacs的剪切板。 m - w 复制c - w 剪切c - y 粘贴一、复制到剪切板 在Emacs中我们剪切、复制文本除了使用命令之外,还可以利用工具栏上的快捷按钮或者菜单栏里面菜单项,在默认情况使用工具栏和菜单栏进行剪切复制都会把相关内转载 2012-08-02 09:40:54 · 1623 阅读 · 0 评论 -
【好文记录】嵌入式框架Zorb Framework搭建过程
嵌入式框架Zorb Framework搭建一:嵌入式环境搭建、调试输出和建立时间系统嵌入式框架Zorb Framework搭建二:环形缓冲区的实现嵌入式框架Zorb Framework搭建三:列表的实现嵌入式框架Zorb Framework搭建四:状态机的实现嵌入式框架Zorb Framework搭建五:事件的实现嵌入式框架Zorb Framework搭建六:定时器的实现嵌...转载 2019-08-13 10:56:48 · 770 阅读 · 0 评论 -
C语言和设计模式(总结篇) 用了多年的C
设计模式的书相信很多人都看过。对于设计模式这样一种方法,相信不同的人有不同的理解。我在这里写的博客只是我个人对设计模式的粗浅认识。文中肯定存在很多的不足和不成熟之处,希望朋友们谅解。望大家多多指正,谢谢!01)C语言和设计模式(继承、封装、多态)02)C语言和设计模式(访问者模式)03)C语言和设计模式(状态模式)04)C语言和设计模式(命令模式)05)C语言和设...转载 2019-08-07 20:23:21 · 652 阅读 · 0 评论 -
ubuntu永久修改主机名
ubuntu永久修改主机名 1、查看主机名在Ubuntu系统中,快速查看主机名有多种方法:其一,打开一个GNOME终端窗口,在命令提示符中可以看到主机名,主机名通常位于“@”符号后;其二,在终端窗口中输入命令:hostname或uname –n,均可以查看到当前主机的主机名。2、临时修改主机名命令行下运行命令:“hostname 新主机名”其中“新主机名原创 2012-07-30 14:57:10 · 169619 阅读 · 5 评论 -
用vmare虚拟机,虚拟linux下串口对联
最近公司项目在搞modbus协议,本人想在linux环境中搭建串口开发环境,由于要实现主从的通信,开发环境最好是可以在一个虚拟机下实现两个虚拟串口的对联,一个模拟上位机主机,一个模拟下位机从站通信。经网上收集资源,特将配置方法及步骤和相关资源记录如下:这个方法在同一台电脑上使用两个vmare机虚拟linux,(在同一个vmare机上也可以建立两个串口对联,见文章末尾),建立一对虚拟串口,并虚拟原创 2012-11-06 20:26:26 · 9874 阅读 · 2 评论 -
在线视频教程
成都国嵌专业嵌入式Linux视http://www.xuexi114.com.cn/neirong/cfe9fda9E4C2093E.html 高 linux ARM10TX2440视频教程http://www.youku.com/playlist_show/id_17265450_ascending_1_mode_pic_page_2.html 汇编微机原理及汇编语言原创 2012-08-21 22:35:24 · 1641 阅读 · 0 评论 -
从TQ2440开发板学习各接口
以TQ2440为例,总结一些接口的基本知识原创 2012-08-22 09:01:23 · 1166 阅读 · 0 评论 -
POSIX操作系统的串口编程指南(2) 分类: Linux串口编程
第二章:配置串口这一章介绍怎样使用C语言的POSIX终端接口配置串口。 POSIX终端接口多数系统支持使用POSIX终端接口改变波特率、字符数等参数。首先要包含头文件;这样就定义了终端控制结构和POSIX控制函数。两个最重要的POSIX函数是tcgetattr(3)和tcsetattr(3),用了获取和设置终端属性。你可以设置一个指向term转载 2012-08-22 10:12:56 · 995 阅读 · 0 评论 -
POSIX操作系统的串口编程指南(1)
5th EditionMichael R. SweetCopyright 1994-1999, All Rights Reserved 原文:http://digilander.libero.it/robang/rubrica/serial.htm 第一次翻译文档,不当之处请指正。 引言《POSIX操作系统的串口编程指南》将转载 2012-08-22 10:06:38 · 1868 阅读 · 0 评论 -
串口通信的基本概念
1,什么是串口? 2,什么是RS-232? 3,什么是RS-422? 4,什么是RS-485? 5,什么是握手? 1,什么是串口? 串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232转载 2012-08-22 09:53:38 · 1732 阅读 · 0 评论 -
arm-linux-gcc-4.3.2.tgz 安装配置步骤
安装交叉编译工具链:下载 arm-linux-gcc-4.3.2.tgz 可以到这里(下载两部分一起解压)arm-linux-gcc-4.3.2.tgz.part1.rararm-linux-gcc-4.3.2.tgz.part2.rar 安装arm-linux-gcc-4.3.2: 1、首先以root用户登入 2、复制arm-linux-gcc-4.3.2.tgz原创 2012-08-29 13:26:01 · 4895 阅读 · 0 评论 -
学习Emacs系列教程(九):缓冲管理
首先提及一点,这里的缓冲就是Emacs中的buffer。闹,所谓的缓冲就是当前你正在编辑的东东。比如,你打开一个文件Emacs会建立一个缓冲来装载这个文件,当你调用帮助时Emacs会建立一个叫"*Help*"的缓冲来显示帮助内容,打开Tutorial则会出现TUTORIAL.cn这个缓冲。本质上来说缓冲就是内存中开辟的一段空闲空间。 每个缓冲都有自己的名字,像上面说的"TUTORIAL.cn转载 2012-08-02 10:14:01 · 1308 阅读 · 0 评论 -
学习Emacs系列教程(八):查找替换
查找替换是任何编辑器都不可能缺少的功能,就连小小的Notepad都有快速查找,更不用说像Emacs这样的庞然大物了。其重要性这里就不多说了,接下来将一步一步给你介绍如何在Emacs中进行查找和替换。 Emacs将查找分成了四个大类,分别是:简单查找,增量查找,词组查找和正则查找。四种方式各有特点,适用范围也不同,大家根据需要熟悉一两种即可。一、增量查找 先介绍增量查找的转载 2012-08-02 10:13:13 · 1298 阅读 · 0 评论 -
linux touch命令参数及用法详解---linux修改文件的时间
名字 touch - 修改文件的时间戳记. 总览 touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名)... 被废弃的版本: touch [-acm][ugly_time] file(文件)... GNU版本:转载 2012-07-31 08:48:39 · 2203 阅读 · 0 评论 -
Ubuntu Samba服务安装与配置
一. Ubuntu samba配置的安装:sudo apt-get install samba smbfs smbclient二. 创建共享目录:mkdir /home/komy/sharesodu chmod 777 /home/komy/share三. 创建Ubuntu Samba配置文件:1. 保存现有的配置文件sudo cp /etc/samba/smb.con转载 2012-07-30 17:07:26 · 1150 阅读 · 0 评论 -
如何学习嵌入式系统(基于ARM平台)
关于嵌入式系统--献给热爱此道的初学者们前言 网上看到众多网友都问了关于嵌入式系统方面的很多问题,很多都可在这里找到答案,希望我的这篇文章能给他们以启发。也请大家不要轻易转载。一、嵌入式系统的概念 着重理解“嵌入”的概念 主要从三个方面上来理解。 1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下转载 2012-08-10 07:59:21 · 1973 阅读 · 0 评论 -
大话Emacs Shell Mode:让工作更轻松的技巧
GNU Emacs 有很多“神奇”的功能。常言说“每一个 hacker 都有一个自己的 GNU Emacs”。这个事实在很大程度上得益于人们能够按照完全自我的方式去使用 GNU Emacs。将 Shell 运行在 GNU Emacs 里面就是众多的用法之一。 在 GNU Emacs 里面运行 Shell 有很多种不同的方法。包括各种各样的终端模拟。但是在笔者的工作当中更多的使用的是 She转载 2012-08-04 17:20:57 · 2638 阅读 · 0 评论 -
ubuntu 12.04安装telnet和ssh服务
ubuntu安装telnet服务1. sudo apt-get install xinetd telnetdsudo vi /etc/inetd.conf并加入以下一行,假如没有发现这个文件,自己新建立一个也是可以的哦,刚开始我也不知道,自己试了之后才知道的。telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in转载 2012-07-31 09:26:59 · 10195 阅读 · 0 评论 -
Vim 实用技术,第 3 部分: 定制 Vim
3.1. Vim 脚本基础在 .vimrc 文件中,和在第二章提到的插件和语法文件中,使用的语言就是 Vim 脚本语言。这种脚本语言语法有点像 BASIC,表达式有点像 C,还是比较容易理解的。本章中并不打算对其作很系统的介绍(要完整了解的话,请参见“:help usr_41.txt”),而只是介绍一些基本知识,特别是,了解定制 .vimrc 所需要的基本知识。Vim 脚本相当于可转载 2012-08-03 12:34:16 · 834 阅读 · 0 评论 -
Emacs 编辑环境,第 6 部分: 自定义您的 Emacs 环境
1.关于本教程本文是学习 Emacs 的系列教程中的第 6 部分。本系列文章中前面的几个教程向您介绍了 Emacs 的一些基础知识;这篇中级水平的实践教程基于您在前面的教程中所学习的基础知识,并向那些已经熟练掌握 Emacs 的基本控制方法的读者介绍如何根据他们特定的需求来自定义和使用该系统。在本教程中,您将了解如何采用各种方法对系统进行自定义、更改其行为、并使转载 2012-08-02 11:25:55 · 2485 阅读 · 0 评论 -
Emacs 编辑环境,第 3 部分: 高级 Emacs 文本操作
这是了解 Emacs 的系列教程中的第三部分,基于您在前两部分教程中所学习的内容,介绍一些用于文本操作的更高级的 Emacs 功能。您将学习高级编辑技术的实际示例,包括如何执行递归编辑、进行标记和使用文本矩形区块,并了解使用剪切环和二次选择的复杂选择技术。 本教程的主要目标是面向那些已经对 Emacs 文本编辑技术具有基本认识的用户,并向您展示如何以初级和中级技术为基础转载 2012-08-02 11:13:36 · 1783 阅读 · 0 评论 -
Emacs 编辑环境,第 2 部分: 学习 Emacs 的基本模式和编辑特性
本教程是系列文章中的第二部分,展示了如何使用文本编辑中的一些重要特性,并引入了模式的概念,向您介绍了它们的用途、如何调用它们、以及在您的日常编辑工作中可能用到的常见模式。此外还描述了一个用于定义缩写的特殊模式,而这些缩写可用于进行速记,并且解释了如何使用与具体模式无关的一些文本编辑特性——包括重要的文本操作命令、搜索和替换方法、以及内置拼写检查器。本教程主要面向那些已经熟悉 Ema转载 2012-08-02 11:12:10 · 1156 阅读 · 0 评论 -
Emacs 编辑环境,第 5 部分: 确定您的 Emacs 视图的形状
1.确定您的 Emacs 视图的形状 这篇中级水平的实践教程构建于您在本系列文章前面部分中所学习的知识的基础之上,并向您介绍了如何针对您的特定需求自定义和使用该系统。在本教程中,您将了解如何管理和操作您的 Emacs 会话视口,即 Emacs X 客户端主窗口和其中显示缓冲区以及其他信息的空间。您将了解对这个区域进行分区的最好方法,包括通过使用水平的和垂直的分割来划分屏幕,为一个转载 2012-08-02 11:19:17 · 4451 阅读 · 0 评论 -
Emacs 编辑环境,第1部分:学习Emacs的基础知识
1、开始之前了解本教程中包含的内容以及如何最好地利用本教程。关于本系列Emacs 编辑环境深受 UNIX® 开发人员的喜爱。它是世界公认的编辑器之王,但许多用户发现它学起来需要一定的过程。Emacs 环境初看起来并不是很直观,而且和其他编辑器和字处理器的工作方式不大一样。但 Emacs 的学习并不困难。一旦您熟悉了它,就会发现它有多么直观,而且越用越顺手。这个系列教程将为您转载 2012-08-02 11:10:14 · 26432 阅读 · 0 评论 -
学习Emacs系列教程(四):Minibuffer
上回介绍了在Emacs中如何插入删除文本的简单操作,以及一些杂七杂八的命令,都还是蛮容易的。这回先跳过编辑这部分,介绍Emacs中的Minibuffer,呃,翻译过来叫迷你缓冲,听着比较难受,后面还是用E文吧。一、初识Minibuffer Minibuffer 乃是Emacs命令读取复杂参数的位置。比如说文件名,缓冲名,命令名以及Lisp表达式这些东西。Minibuffer显示在转载 2012-08-02 09:21:17 · 1441 阅读 · 0 评论