- 博客(48)
- 资源 (2)
- 收藏
- 关注
原创 学嵌入式不得不知的linux内核
Linux内核基本概念从技术上说 linux 是一个内核“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。通常我们使用的 linux 系统是一个集 linux 内核、工具集、各种库、桌面管理器、应用程序等一体的一个发布包 (发行版)主流的 Linux 发行版Gentoo LinuxAsianuxSlackware LinuxTurbo LinuxCentOSDebian GNU/LinuxRed Hat LinuxF
2020-07-05 15:43:01 666 1
原创 2020上半年度个人总结
不看不知道,已经是7月1号。感觉过的匆匆忙忙的,抽点时间做个总结吧。先来说说上半年干了些什么。 首先谈工作,在一家做开源硬件公司上班,工作内容我还是比较喜欢的,但是待遇是真的不咋样。家人朋友包括我自己都在吐槽我自己,咋个这么菜呢。大学四年,是我人生中最荒废的四年。四年没啥进步,也没收获爱情。也是因为四年没有明确的目标和规划,导致毕业实习随便找了一份工作,实习的时候感觉做的工作,对不
2020-07-02 10:54:06 1571 5
原创 嵌入式工程师常见面试题
题目封装一个用于payload传出的结构体,参考typedef struct{ uint8_t header55; uint8_t headeraa; uint8_t cmd; uint8_t cs; uint8_t length; uint8_t payload[0];} __attribute__ ((packed)) sPacketHeader_t;申请一段内存,结构体指针为其赋值,计算cs将这个包模拟传输到另一个设备(函数代替),还原成结构
2020-07-01 14:19:26 1022
原创 面试前必须掌握(C语言写一个字符串查找函数 strstr)
这是面试嵌入式软件工程师常考的题目,面试前必须掌握。参考博客定义:strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。定义说的有点羞涩难懂。举个例子就知道了。比如:char str2 = “cdef”;char str1 = “abcdefgh”;则通过函数,将返回strstr(str1,str2) = cdefgh;如果str1不包含有str2。char str2 = “cxef
2020-07-01 13:38:09 595
原创 学嵌入式不得不知的Bootloader(U-boot)
Bootloader 基本概念Bootloader是硬件启动的引导程序,是运行操作系统的前提;在操作系统内核或用户应用程序运行之前运行的一小段代码。对软硬件进行相应的初始化和设定,为最终运行操作系统准备好环境;在嵌入式系统中,整个系统的启动加载任务通常由Bootloader来完成。Bootloader的特点Bootloader不属于操作系统,一般采用汇编语言和C语言开发。需要针对特定的硬件平台编写。在移植系统时,首先为开发板移植Bootloader。Bootloader不但依赖于CPU的体系结
2020-07-01 00:52:50 1603
原创 arduino学习中常用电机科普之步进电机
由于前段在学习arduino控制一个小马达的时候,才开始接触电机,不接触不知道,一接触发现电机的种类还挺多的。搞得我晕头转向的,然后花了点时间总结了arduino常常用到的记住电机,算是做个总结,也是给小白分享一下电机小知识,如果有错,欢迎纠正,我及时更正。本篇帖接着上篇 arduino学习中常用电机科普之直流有刷电机与无刷电机继续科普总结,这次主要讲步进电机与伺服电机的工作原理。步进电机工作原理步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。每输入一个脉冲信号,转子就转动一个
2020-06-30 11:34:09 3682 1
原创 TFTF服务器搭建总结
连接之 TFTP 服务TFTP 服务使用条件是:需要网络连接主机端需要安装 tftp 服务器软件目标机需要实现tftp客户端优点:传输速度快可以将编译好的内核下载到目标机,提高开发效率tftp 是用来下载远程文件的最简单网络协议,它基于udp协议而实现。嵌入式 linux 的 tftp 开发环包括两个方面:一是 linux 开发主机端的 tftp-server 支持,二是嵌入式目标系统的 tftp-client 支持。主机端tftp服务器配置1、检查是否安装tftp
2020-06-22 01:28:33 639
原创 学4412arm基础之波形控制(uart,iic,pwm)
设备间 通讯实现串行通讯单线双线 uart (全双工 异步)双线 i2c (半双工 同步)三线 spi (全双工 同步)并行通讯多根数据线 地址线,如内存串口 UART 协议发送 0xFF 0X00 0X04 0X08数据串行通信参数设置:BAUD:115200,8位数据,1个停止位,无奇偶校验,发送顺序为低位先发送。波形实现方法:1. CPU 已实现,仅需设置寄存器/* 功能: 实现k2 interrupt 输出字符显示 1.
2020-06-21 23:25:26 658
原创 学4412arm基础之中断总结
中断4412中断的核心图(面试一般会问)中断过程中断初始化a. 管脚初始化b. 中断控制器初始化中断向量表a.中断发生后,硬件自动跳转b. 现场保护c. 调用中断处理中断处理a. 根据中断号做相应处理b. 清中断c. 现场恢复中断源Exynos4412中断控制器包含160个中断控制源,分三类分别是:1.用于CPU之间通信的SGI(Software Generated Interrupt),2.专用于特定CPU核的PPI(Private Peripheral I
2020-06-20 23:34:14 873
原创 4412上电开机不能进入uboot的原因
**现象:**4412上电开机不能进入uboot,按屏幕按键无反应,不能终止自启动。解决办法:看是不是鼠标移出超级终端外边了,确定鼠标在超级终端框里面换一个超级终端软件换一根4412的连接线,前面两个办法都没有解决,那么应该是连接线坏了...
2020-06-16 22:16:24 1178
原创 arduino学习中常用电机科普之直流有刷电机与无刷电机(本帖不讲程序,只讲电机原理与构造)
由于前段在学习arduino控制一个小马达的时候,才开始接触电机,不接触不知道,一接触发现电机的种类还挺多的。搞得我晕头转向的,然后花了点时间总结了arduino常常用到的记住电机,算是做个总结,也是给小白分享一下电机小知识。
2020-06-12 17:26:56 3336 1
原创 Exiting with failure status due to previous errors解决办法
不是sudo的问题,是共享目录不能解压tar,把文件复制出来,换到linux下进行解压就可以了!!!花了我两个多小时去解决问题!!!。。。。气死我了,,,,,,,,,,,,,,,,,,,,,,,,希望大家注意...
2020-06-06 15:23:59 2417 1
原创 华为机试之字串的连接最长路径查找
题目描述:给定n个字符串,请对n个字符串按照字典序排列。输入描述:输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。输出描述: 数据输出n行,输出结果为按照字典序排列的字符串。输出示列:输入:9captocatcardtwotooupboatboot输出: boatbootcapcardcattotootwoupC语言解析: #include <stdio.h>
2020-05-18 23:36:19 165
原创 华为机试之数字颠倒
题目描述描述:输入一个整数,将这个整数以字符串的形式逆序输出程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001输入描述:输入一个int整数输出描述: 将这个整数以字符串的形式逆序输出示例输入:123输出:321C解答(方法1)#include<stdio.h>#include<string.h>in...
2020-04-28 00:02:09 197
原创 怎样在C语言中修改字符串的一个字符的值
怎样在C语言中修改字符串的一个字符的值*注复意char a="abcdef"与char a[]="abcdef"的区别1、字符串存放的内存区域不同制:前者存放在知常量区,不可修改,后则存放在栈中,可以修改;2、变量a存放的内容不同:前者存放的是一个地址,而后者存放的是字符串"abcdef",因此使用sizeof它们的结果是不同的,分别是4和7;...
2020-04-27 23:55:44 3510
原创 华为机试之字符个数统计
题目描述编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。注意是不同的字符输入描述:输入N个字符,字符在ACSII码范围内。示例输入: abc输出: 3C解答#include<stdio.h>#include<string.h>#include<std...
2020-04-27 22:17:27 222
原创 华为机试之提取不重复的数
题目描述输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。输入描述:输入一个int型整数输出描述:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数示例输入:9876673输出: 37689C解答#include <stdio.h>#include <string.h> int main(void){...
2020-04-26 23:41:46 126
原创 数组与指针的关系看这个示例就搞定了
#include <stdio.h>int main (void){ int a[10] = {0,111,2,66,4,5,6,7,8,9}; printf("%d\n",sizeof(a)); printf("a[1] = %d\n",a[1]); printf("++a[1] = %d\n",++a[1]); printf("++...
2020-04-26 22:10:23 97
原创 华为机试之合并表记录
题目描述数据表记录包含表索引和数值(int范围的整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。输入描述:先输入键值对的个数然后输入成对的index和value值,以空格隔开输出描述:输出合并后的键值对(多行)示例1输入:40 10 21 23 4输出:0 31 23 4解答#include <stdi...
2020-04-26 21:21:59 186
原创 生活用电火线与零线
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...
2020-04-25 23:31:53 424
原创 华为机试题目之取近似值
题目描述写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。输入描述:输入一个正浮点数值输出描述:输出该数值的近似整数值** 实例**输入:5.5输出:6解答 #include <stdio.h> int main(){ int i,j=2; float fl; scanf...
2020-04-25 23:06:23 171
原创 五分钟搞定面试官(嵌入式软件工程师)常问的static相关问题
static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值;static函数与普通函数有什么区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝
2020-04-21 17:36:30 635
原创 嵌入式面试题——常见字符串编程小题目(持续更新)
这是我收集的一些面试常见的字符串操作的考题,可能不完善,但是会持续更新!1.写一个程序,从键盘输入字符,然后对字符进行逆序操作解析: #include<stdio.h>#include<string.h>void main(){ int i=0,n,t; char str[100]; printf("请输入字符专串...
2020-04-21 16:53:12 471 1
原创 C语言中字符数组只能存放字符串?字符数组和字符串的唯一区别?
C语言中字符数组只能存放字符串?不是的,C语言中字符数组既可以保存字符,又可以保存字符串。字符数组本意就是是指用来存放字符数据的数组。字符数组的元素是字符类型的。字符数组用于存放字符或字符串。C语言中字符数组的一般形式为: char 数组名[数据长度] 。例如:char a[10]; a[0]=‘0’; a[1]=’ 1’; a[2]=‘2’; a[3]=‘3’; a[4]=‘4’; a[5...
2020-04-21 16:09:42 8062
原创 嵌入式软件工程师面试常见问题3
1.有一个16位的整数,每4位为一个数,写函数求他们的和。解释:整数1101010110110111和 1101+0101+1011+0111 /* n就是16位的数,函数返回它的四个部分之和 */char SumOfQuaters(unsigned short n){charc = 0;inti = 4;do{c += n & 15;n = n >> ...
2020-04-19 22:37:10 1193 1
原创 嵌入式软件工程师面试常见问题2
在c语言库函数中将一个字符转换成整型的函数是atol()吗,这个函数的原型是什么?函数名: atol功能: 把字符串转换成长整型数函数的原型: long atol(const char *nptr);程序例子: #include <stdlib.h>#include <stdio.h>int main(void){long l;char *str = "...
2020-04-19 21:51:42 986
原创 嵌入式软件工程师面试常见问题1
static有什么用途?(请至少说明两种)答:限制变量的作用域在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。设置...
2020-04-19 20:48:13 409
原创 面试题之数组指针问题
题目下面代码的输出结果是什么? #include<stdio.h> int main(void){ int a[5] = {1,2,3,4,5}; int *ptr = (int*)(&a+1); printf("%d,%d",*(a+1),*(ptr-1)); return 0;}解答输出结果:2,5分析:&a指向...
2020-04-19 19:25:09 177
原创 5分钟带你了解程序的内存分配(C语言)
C/C++——程序的内存分配声明:本篇文章是参考https://blog.csdn.net/lili0710432/article/details/46628027?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158728185219724811856151%2522%252C%2522scm%2522%253A%2522201...
2020-04-19 15:56:36 178
原创 给定一个数组,有n个元素的int型数组,求取数组中所有元素之和(要求代码量越少越好)
题目给定一个数组,有n个元素的int型数组,求取数组中所有元素之和( 要求:代码量越少越好)解答用递归实现#include<stdio.h>int sum(int *a,int n);int main(void){ int arr[10] ={1,2,3,4,5,6,7,8,9,10}; //55 int value = sum(arr,10);...
2020-04-19 15:24:08 1793
原创 经典面试题之C语言(数组)
题目有一个数组int arr[20] = {1,0,1,1,1,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1};数组中的全部都是0,1组成,试写程序,计算数组中的0,1的个数。要求:不能使用任何形式的判断语句解答#include<stdio.h>int main(void){ int arr[20] = {1,0,1,1,1,1,1,1,1,0,0,1,0,0...
2020-04-19 14:58:46 765 2
原创 面试题解答之C语言(逻辑短路问题)
求1+2+3+ … +n的和。(要求:不能使用条件循环(if,while,for,switch-case等))用递归求解 #include<stdio.h>int test(int n,int *sum){ n && test(n-1,sum); return *sum += n;}int main(void){ int...
2020-04-19 14:17:51 252
原创 16进制打印输出
python 以16进制打印输出打印整数16进制num=10print(’%#x’%num)打印字符串中的16进制arr=‘12342535’for i in arr:print(’%#x’%ord(i))
2020-04-14 23:03:57 3708
原创 快速搞懂数据结构之链式队列
链式队列使用链表来实现,链表中的数据域用来存放队列中的元素,指针域用来存放队列中下一个元素的地址,同时使用队头指针和队尾指针指向队列的第一个元素和最后一个元素。
2020-04-12 17:47:21 1190 3
原创 快速搞懂数据结构之顺序队列
队列是限制在两端进行插入操作和删除操作的线性表允许进行存入操作的一端称为“队尾”允许进行删除操作的一端称为“队头”当线性表中没有元素时,称为“空队”
2020-04-10 23:46:55 1806 3
原创 快速搞懂C 库函数 - memmove()
C 库函数 - memmove()描述C 库函数 void *memmove(void *str1, const void *str2, size_t n) 从 str2 复制 n 个字符到 str1,但是在重叠内存块这方面,memmove() 是比 memcpy() 更安全的方法。如果目标区域和源区域有重叠的话,memmove() 能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中,...
2020-04-10 21:05:50 99
工作模式切换(嵌入式系统原理及应用实验报告).doc
2020-04-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人