原地址:http://www.eefocus.com/bbs/article_1156_541662.html
当我们去研究一个系统的时候,首先需要从最简单的程序开始入手。前面文章的介绍已经描述了项目的环境搭建以及启动过程。
虚拟串口(虚拟 COM 端口),应该很多人都知道,也就是一种模拟物理串行接口的 软件 。 它完全复制了硬件 COM 接口的功能,并且将被操作系统和串行应用程序识别为真实端口。
在做rt-thread系统移植的这段时间里,积累一些快速移植的经验,不论是现有架构的不同型号的芯片,还是一个全新架构的移植,只需要按照一定的步骤进行,一般大的方向不会出错。剩下的事情就是解决为什么没有达到预期效果的问题。
在编写好汇编程序后,可以用as.exe 进行编译生成x.bin文件。由于在学习的初期,需要一些参数的设置,以及生成后的文件需要做一些转换处理,因此我们将C语言及汇编语言组织起来,形成一个有效的工具链供学员使用。工具链如图3-1:
1.文章说明2.走进wifi的世界3. 快速上手3.1 新建工程3.2 工程编译3.3 烧写验证4. 8266与Arduino4.1 什么是Arduino4.2 Arduino的好处4.3 怎么用?5. 总结
51单片是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89X51 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。
BootLoader的目标是正确调用内核的执行,由于大部分的BootLoader都依赖于CPU的体系结构。因此大部分的BootLoader都分为两个步骤启动。依赖于CPU体系结构(如设备初始化等)的代码都放在stage1。而stage2一般使用C语言实现,能够实现更加复杂的功能,代码的可移植性也提高。
start.S代码结构 u-boot的stage1代码通常放在start.S文件中,用汇编语言,主要实现功能如下:
大家好,又见面了,我是你们的朋友全栈君。 c语言和java语言哪个比较好 java语言和c语言的区别有单文件的编译时间java比c语言快;c语言可以直接操作内存,java不能直接操作;c语言可以
在系统中有三个标准文件,即标准输入、标准输出、标准错误三文件。在C语言中printf函数和scanf函数是其中两个,包含在stdio.h库文件中,printf函数是标准输出,输出到屏幕,拥有可以将任何的数据类型转换为字符串类型的强大格式化转换功能;而scanf函数是标准输入,从键盘中获取数据,拥有可以将字符串类型转换为任何的数据类型的强大格式化转换功能。
今天给大家带来一款MicroPython开发板的拆解和测评。所谓MicroPython也就是运行在单片机上的Python。Python在国外是一门非常热门的编程语言,近些年在国内也被发掘与追捧, Python的开放、简洁、黏合正符合了现发展阶段对大数据分析、可视化、各种平台程序协作产生了快速的促进作用。自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢经过了太漫长的时间,然而可能也与国情与发展需求有着相当的关系。总之,越来越多人开始使用Python。
何谓串口?串口就是一个计算机接口,用于数据通信,例如计算机。老一点的PC和笔记本都有串口,工控机一般配置有串口,如果没有可以到淘宝上买USB-串口转换器。
学习初期最难找的就是找学习资料了,本贴精心汇总了一些嵌入式相关资源,包括但不限于编程语言、单片机、开源项目、物联网、操作系统、Linux等资源,并且在不断地更新中,致力于打造全网最全的嵌入式资料库。
一路摸爬滚打,时至今日,与心爱的TQ2440相伴已有一年,从当初的一无所知到今天的得心应手,其间经历的种种,实在难以言表。想起第一次在串口打出一个字符的时候,那种心情,简直激动得快要爆了,这里先将我学习ARM中的整个过程简单总结一下,以后再详细的针对每个知识点写写东西。希望对刚接触的朋友有个提示作用,也希望高手不吝赐教,给些学习建议,欢迎拍砖^_^。需要说明的是,这仅仅说是ARM,其间涉及到别的知识也是需要很多时间去学习的,这里我就不列举了。
想使用ESP8266完成这样一个操作——远程关闭电脑,达到人在别的任何地方都可以操作我们的电脑。
手机APP: 采用QT设计,程序支持跨平台编译运行(Android、IOS、Windows、Linux都可以编译运行,对应平台上QT的环境搭建,之前博客已经发了文章讲解)
实物图(以实物为准) 📷 📷 📷 开发板原理图: https://mnifdv.cn/resource/cnblogs/LearnCH32V307VCT6/ZLIOTE.pdf 开发板购置链接: ht
STM32F411简单应用 STM32F411简单应用 我以前写过关于这个芯片的一些简单介绍: 📷 就是这样,其实是一个引脚引出来的最小系统 https://github.com/WeActTC/MiniSTM32F4x1 我们在这个链接里面下载网店给的一些资料 📷 📷 📷 都是两个稳压器 📷 这个手册呢,一百多页,细节不是很多 📷 这个大几百页,细节繁复 参考手册 📷 microPython的引脚定义,板子完美支持mpy https://micropython.org/ 📷 引脚的定义是这样的,编
Linux系统内核是C语言编写的,所以,Linux系统开发可能会和很多系统API打交道,需要掌握C语言基础,C语言是Linux最基础的开发语言,当然也可以用C++。一般做与系统交互的模块时,用C语言多一些,做上层业务应用时,为了开发效率,会使用C++来开发,毕竟C++是面向对象的开发语言,适合大型项目的开发,方便模块化,代码复用率高。
在 单片机串口实现字符串命令解析 这篇文章中分析了在串口通信中如何去解析字符串命令,这篇文章就来讨论下字符串比较的方法都有哪些?
5G边缘计算物联网关的出现意义重大,随着物联网不断扩大的用户网络和不断增长的数据量,网络性能不受影响是企业面临的巨大挑战,因此边缘计算正成为物联网的解决方案。
核心板实物图(以实物为准) 📷 📷 CH32V307VCT6概述 1,CH32V307VCT6的引脚原理图和PCB完全兼容STM32F103VCT6 2,MCU主频为144MHz; Flash 256KB; RAM 64KB 3,CH32程序基本下载方式和STM32完全一样; 串口下载使用PA9,PA10; SWD下载使用PA13,PA14(CH32使用的下载器为WCH-Link); 4,CH32的两路USB接口也支持下载(PA11,PA12; PB6,PB7) 5,CH32V307VCT6内部集成了以太网
透传,即透明传输(pass-through),指的是在通讯中不管传输的业务内容如何,只负责将传输的内容由源地址传输到目的地址,而不对业务数据内容做任何改变。
选择C语言,开发者必须独立设计所有的细节,小到栈与队列,大到串口与通信,必须从底层开始设计全部的代码
寄存器不用全部记住,更不能死记硬背,小代玩单片机多年,还是只记住了最常用的几个寄存器的名称,具体的位设置的什么,还是没记住。在编程时需要配置寄存器的时候,可以上网找,或者书上找别人配置的程序,稍加修改,再或者查找芯片数据手册,查看相关的寄存器的说明。死记硬背寄存器是最最下策的。每种单片机有几十上百个的寄存器,学的单片机系列多了,你记得了那么多来吗?
嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有μcos,vxworks,linux,android等。当然,对于嵌入式或单片机工程师的利器就是C语言、C++或汇编语言。那么有哪些好工具可以让工作事半功倍呢?
2、对51单片机的操作本质上就是对寄存器的操作,对其他单片机也是如此。库只是一个接口,方便使用者使用而已。
摘要:听说还有好多学单片机的小伙伴不会用结构体?指针和结构体是学单片机必须要掌握的,如果你C语言掌握的不牢,单片机根本学不到精髓,只能完成一些低级的项目。看得懂结构体并且能够灵活运用结构体才能说你入门了单片机。本篇将以最通俗的方式结合STM32单片来讲讲结构体的运用。解决你学完C语言、考过了计算机二级还是看不懂单片机结构体的苦恼。宝藏文章,记得点赞转发收藏
微雪官方教程:http://www.waveshare.net/wiki/SIM7600CE_4G_HAT
大家好,又见面了,我是你们的朋友全栈君。 📷 IO接口编程 作者: Saint 掘金:https://juejin.im/user/5aa1f89b6fb9a028bb18966a 微博:
这是我13年前创作和发表在互联网上的文章,这么多年过去了,这篇文章仍然在到处传播。现在贴回Linuxer公众号。 全文目录: C语言嵌入式系统编程修炼之道——背景篇 C语言嵌入式系统编程修炼之道——软件架构篇 1.模块划分 2.多任务还是单任务 3.单任务程序典型架构 4.中断服务程序 5.硬件驱动模块 6.C的面向对象化 总结 C语言嵌入式系统编程修炼之道——内存操作篇 1.数据指针 2.函数指针 3.数组vs.动态申请 4.关键字const 5.关键字volatile 6.CPU字长与存储器位宽不一致处
.NET Core 虽然实现了跨平台,但是不可能处处使用 C# 开发,就好像没人使用SQL开发安卓APP,每种语言都有其优秀的地方和局限性。
shell,中文是外壳的意思,就是操作系统的外壳。通过shell命令可以操作和控制操作系统,比如Linux中的Shell命令就包括ls、cd、pwd等等。总结来说,Shell是一个命令解释器,它通过接受用户输入的Shell命令来启动、暂停、停止程序的运行或对计算机进行控制。
一、面向对象 面向对象是软件开发方法,是相对于面向过程来讲的。通过把数据与方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式 单片机C语言的面向对象编程,是利用结构体,将变量、指针、函数等进行封装,达到编程更加方便、程序可读性更好、方便移植等目的。
5G+物联网的来临工业制造业逐步趋向智能化,各企业工厂致力于打造具有传感设备、工控设备,利用5G无线通信,实现与远程管理平台数据采集传输的人机界面的高效交互的智能车间,以节省资源成本、提高生产效率、提高经济效益。
1在运行方式上: C:原始的C是面向过程的.就是按行执行. JAVA:绝对的面向对象.就像按模块执行. (补充:当然,在C++,及C#上,C也有向面向对象模式转换) 2在语句结构上: C:在中国应该算是编程语言的颠峰应用.C就像个完全服从的军人.你让他做什么他就做什么.你完全控制他,但你必须全程了解他之后才能控制好他.
计讯物联边缘网关,支持全网通5G/4G网络,数据边缘处理满足工业等物联网场景高速率低延时多接入量的自动化数字化管理。
本系列为FPGA系统性学习学员学习笔记整理分享,如有学习或者购买开发板意向,可加交流群联系群主。
将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现,而目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡。
前几天我看到知乎上的一篇文章《时代的眼泪:繁华落尽的SPARC处理器》,大致上讲述了一下Sun公司的UltraSPARC处理器,那时左批HP,右打IBM,俨然一副高高在上的气势。我觉得关于SPARC如何一步一步从繁荣走向平淡,又是如何在历史长河中发挥出浓墨重彩的一笔,我就不赘述了。这篇文章主要想讲一些sparc体系相关的问题。目前,sparc出现在我们视野中并不多见,其实利用sparc处理器一直是航天上面在使用,由于其特殊的架构以及目前美国对中国的态势,sparc架构在航天、飞机、雷达领域的利用也是越来越重要了。目前北京微电子技术研究所出来几款SPARC V8架构的芯片。其中BM3803是基于SPARC V8体系结构的32位精简指令集的国产嵌入式芯片,其特点是功能强、可靠性高、低功耗等等。下面从系统启动、窗口寄存器、中断处理这三部分看一看sparc v8处理器的特点。
在去年的时候,我就开过一个专栏,就是试图找出Arduino的构成,就是代码的组织,一个硬件库的打包等。可以后来平台没有给我专辑,我就没有再写了,但是最近又拾起来了,所以想开一个新的专辑。老办法,还是读TT的相关的库,除了官方的,还有第三方的。试图从源码中挖掘语言的含义。
嵌入式岗位,是介于硬件工程师和软件工程师之前的一个岗位。他的工作内容需要他既懂代码编写,也会硬件板子。
最近学习一款优秀的开源AI开发套件M1 Dock,该模块集成了Micropython,使用专业的AI芯片k210作为核心处理单元,k210带独立FPU的双核处理,64位的CPU位宽,8M的片上SRAM,400M的可调标称频率,支持乘法、除法和平方根运算的双精度FPU,在AI处理方面k210可进行卷积、批归一化、激活、池化等运算。也可以进行语音方向扫描和语音数据输出的前置处理工作,可实现人脸检测,语音识别,颜色、物体识别,MNIST手写数字识别,Feature map显示,tiny yolov2 20分类等多种功能。
从事嵌入式研发行业十年,认为学习就是要不断的吸纳知识,在研发过程中,经常会遇到一些问题,这种发现问题并解决问题的过程就是进步。
领取专属 10元无门槛券
手把手带您无忧上云