嵌入式系统学习
Yuk丶
联系邮箱:zhangxuhan_c@163.com
专注学习成长
运用视景仿真,嵌入式软件开发,人工智能,计算机视觉,无人系统,游戏等
linux qt ue4 mak vr-force开发等
https://github.com/zhangxuhan
展开
-
STM32能不能跑Linux
操作系统有两种 用MMU的 和 不用MMU的 用MMU的是Windows MacOS Linux Android 不用MMU的是FreeRTOS VxWorks ucOS…CPU有两种 带MMU的 和 不带MMU的 带MMU的有 Cortex-A系列 ARM9 ARM11系列 不带MMU的有 Cortex-M系列…STM32是M系列…不可能运行Linux… ucLinux不算Lin转载 2017-11-30 16:38:53 · 22637 阅读 · 5 评论 -
16道嵌入式C语言面试题(转载)
转自:http://blog.chinaunix.net/uid-26495963-id-3165021.html预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1) #defin转载 2017-11-28 13:59:14 · 591 阅读 · 0 评论 -
Linux操作指令学习笔记
摘抄总结了一些常用的操作指令,不很全面,主要是常用的用于学习记忆掌握 一、通配符 Shell提供了一种通配符(wildchar) * :代表0,1,more,char ? :代表1,char [character] one char in set [!character]not one char in set [[:class:]]one char in class /////五原创 2018-01-02 16:22:22 · 409 阅读 · 0 评论 -
嵌入式系统学习——储存管理器
1.想访问一个芯片,需要哪些条件? a.地址线 b.数据线 8/16/32位的数据宽度 c.时钟/频率 d.芯片相关的一些特性比如SDRAM(行地址、列地址、Bank)运行时,CPU通过存储管理器->SDRAM(列/行、刷新周期、Bank地址、数据位宽)分别看内存芯片手册,原理图 想使用SDRAM,就需要 a.配置存储管理器 b.使用8bank,也就是8个片选信号。每个Bank外原创 2018-01-15 16:45:32 · 630 阅读 · 0 评论 -
Linux——Socket之UDP编程
一、linux网络通讯的BSD套接字(Berkeley Software Distribution) 包括三种方式:1、流式(可靠TCP)2、数据表(面向报文UDP)3、原始(访问底层协议) 端式:大端(最高字节先发现)小端(最低字节先发现) 通讯端点(绑定IP地址,端口号)二、基本函数 unsigned short unsigned long 网络到主机短:ntohs(net原创 2018-01-10 13:50:31 · 347 阅读 · 0 评论 -
多进程之间的互斥信号量实现(Linux和windows跨平台)
多线程之间实现互斥操作方式很多种,临界区(Critical Section),互斥量(Mutex),信号量(Semaphore),事件(Event)等方式其中临界区,互斥量,信号量算是严格意义的实现互斥操作的,事件应该说算是一种线程间的通信机制来保证互斥在多线程中,可以直接将这些变量定义为全局的,然后在不同的线程中使用,那么多进程环境就不行了。多进程如果要实现多共享资源的互斥操作,只能...转载 2018-04-11 16:46:30 · 1253 阅读 · 1 评论 -
C获得命令行输出结果
在c程序中,system函数可以运行命令行,但是只能得到该命令行的int型返回值,并不能获得显示结果。例如system(“ls”)只能得到0或非0,如果要获得ls的执行结果,则要通过管道来完成的。首先用popen打开一个命令行的管道,然后通过fgets获得该管道传输的内容,也就是命令行运行的结果在linux上运行的例子如下:void executeCMD(const char *cmd, ch...原创 2019-04-09 17:42:36 · 2910 阅读 · 0 评论