自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (6)
  • 收藏
  • 关注

原创 Marlin-2.0.9.1 串口数据存储进命令缓存

前面记录了下命令环形Buffer:RingBuffer今天记录下Marlin解析串口数据存储进命令缓存,先看执行主函数:部分代码做了折叠,这个主函数,首先是个for循环,然后里面又有个LOOP_L_N,本质上也是个for循环。接下来在里面首先判断命令环形buffer是不是满了,满了直接返回接下来检查串口是否有数据,没有的话continue接下来是数据解析了:读出串口的环形Buffer的一个字节,如果小于0,说明没有取到串口缓存的数据,没有取到的话则continue接下来读取.

2021-08-15 10:15:20 868

原创 Marlin-2.0.9.1 命令Buffer说明

Marlin2.0.9.1把命令缓存在字面上也命名为:RingBuffer不知道怎么这么多环形Buffer。。。。。。。RingBuffer是个结构体,如下所示:前四个参数,第一个length表示命令缓存中当前有几条命令,第二个index_r是读缓存区命令的指针位置,每取走一条,length减1,第三个index_w是写缓存区的指针位置,每写入一条,length加1,第四个commands是默认四条命令的缓存区,CommandLine结构如下:每条命令的buffer长度默认是MAX.

2021-08-10 21:24:09 428

原创 Marlin-2.0.9.1 串口接收——取出串口环形Buffer数据

接收到环形Buffer数据后,看一下主线程是怎么把环形Buffer的数据取走的接下来按图索骥就好首先是loop函数中调用idle函数Idle函数中调用manage_inactivity函数manage_inactivity中调用queue.get_available_commands()函数get_available_commands中调用get_serial_commands函数get_serial_commands中调用read_serial函数来获取环形Buffer的数据:来看

2021-08-09 23:04:04 469

原创 Marlin-2.0.9.1 串口接收——环形Buffer接收函数

接收函数是在中断中进行,首先来看下中断函数的注册位置:在Marlin的setup()函数中,初始化串口的函数中:此处是初始化串口位置:我们打开begin(),会看到在最后的位置会注册中断函数:中断接收函数就是:_rx_complete_irq()看一下该函数:接收函数首先去取串口数据,如果取到了正确的数据接下来判断环形Buffer是不是满了,如果满了(即将要写入的头指针位置(当前指针+1)与读指针一样的话,说明环形Buffer满了),则不作任何操作,但是此时已经将数据取出来了,所以最终结

2021-08-07 19:41:15 668

原创 Marlin-2.0.9.1 串口接收——环形Buffer

Marlin-2.0.9.1 串口接收——环形BufferMarlin串口的环形Buffer定义并不在Marlin的源码中,而是在.platform中的对应的芯片core中定义,比如STM32的环形Buffer是在:xxx\.platformio\packages\framework-arduinoststm32\cores\arduino\HardwareSerial.h文件中定义的,定义如下图:环形Buffer定义的位置环形Buffer默认大小为:64,接收和发送都是64接下来抽时间写写环形

2021-08-07 19:13:16 710

原创 在Ubuntu 16.04上安装Python3.7.x后运行pip出现的错误解决方法

在Ubuntu 16.04上安装好Python3.7.6以后,使用pip install安装出现的一堆错误,并且安装失败,使用下面的方法解决:执行下面的命令:sudo find / -name ‘lsb_release.py’结果如下:/usr/lib/python2.7/dist-packages/lsb_release.py/usr/lib/python3/dist-packages...

2019-12-27 16:08:52 1083

原创 Ubuntu 16.04安装Python3.7.x步骤

翻了N多资料,经过反复自行测试,终于安装成功新安装的系统里面的Python版本一个是2.7,一个是3.5.2想安装一个3.7.x的版本,先说清楚一个概念:不是由3.5.2升级到3.7.x,因为这是两个不同的版本,可以新安装一个3.7.x,建议保留系统安装的3.5.2,也没啥大影响。安装步骤如下:第一步:安装依赖环境:sudo apt-get install -y make build-e...

2019-12-27 14:14:14 641

原创 Ubuntu16.04的pip安装

以下是我的解决步骤,和你遇到的问题不一定一样,请参考:新装的Ubuntu系统是没有pip指令的,在终端输入:pip -V会提示以下信息:The program ‘pip’ is currently not installed. You can install it by typing:sudo apt install python-pip按照提示输入:sudo apt install py...

2019-12-26 14:52:14 457

原创 Ubuntu 16.04切换默认Python版本

Ubuntu16.04默认的Python是Python 2.7.12版本,现在一般都是使用3.x版本,切换默认的版本如下:udo update-alternatives --install /usr/bin/python python /usr/bin/python2 100sudo update-alternatives --install /usr/bin/python python /u...

2019-12-26 14:39:04 160

原创 使用Python通过MySQLdb向Mysql数据库写入中文的时候的异常处理

异常现象:使用Python通过MySQLdb向Mysql数据库写入中文的时候的异常处理,插入的字段含有中文,比如:比如插入数据:sql = ‘insert into student(id,name,age)’ ’ values(’{0}’,’{1}’,’{2}’)’.format(21,“王莽”,36)会出现如下异常:‘charmap’ codec can’t encode chara...

2019-12-13 10:53:38 304

原创 Object.assign 浅拷贝和深拷贝的问题

在此不举例了,直接说一下结果:先说数据类型:在js中,数据类型分为两种,基本类型和引用类型。基本类型指的是简单的数据段,而引用类型指的是那些可能由多个值构成的对象。js中有五种基本数据类型number,string,boolean,null,undefined,他们的值被以键值对的形式保存在栈中。引用类型只有object一种。但js中除了基本数据类型,万物皆对象,数组,函数,对象都是obje...

2019-11-12 13:07:46 185

原创 笔记二、基于Labview的BS系统web的项目示例

笔记对应的源码下载地址:https://download.csdn.net/download/hundred98/11938035

2019-10-30 21:17:40 541 2

原创 笔记二、基于Labview的BS系统web的项目示例

目标:1、建立浏览器端的HTML2、通过浏览器和后端完成数据交互通过浏览器向后端写入数据(这里演示用POST方式)通过浏览器向后端请求数据,(这里演示用GET方式)并显示在浏览器上步骤如下:1、把笔记一的工程名称更改为test22、新建一个文件夹命名为Public(名称随意)在该文件夹下新建一个HTML文件,命名为index.html(名称随意)内容如下:因为使用到jquer...

2019-10-30 21:15:46 2042 8

原创 笔记三、基于Labview的BS系统web的项目示例——数据库读写功能

目标:在上次笔记的基础上,添加数据库的读写功能浏览器端通过:写入数据按钮,将数据传入后端,后端接收数据并写入数据库浏览器端通过:读取数据按钮,传输数据ID,后端将根据数据ID读取数据库的数据,并传回浏览器端,显示在浏览器上数据库使用的是MySQL,数据库的驱动使用的是ODBC驱动,所以需要安装MySQL的ODBC驱动,以下是准备工作:1、 在MySQL数据创建数据库,命名为lvtest...

2019-10-30 20:57:17 1632

原创 笔记一、建立简单独立基于Labview的Web工程项目

笔记对应的源码下载地址:https://download.csdn.net/download/hundred98/11929163

2019-10-27 13:57:47 3049

原创 为什么推荐Labview

我比较认同前Apache基金会副总裁Niclas Hedhman说过的这段话:我认为工业界的整个发展都是不对的,在过去我们一天就能写出来的项目,现在同样的人需要两周才能完成。这个原因是有太多的框架、依赖库等等了,这些东西你不了解就不可能用的很好,以及去解决bug,所以需要长时间学习这些东西以让他们工作在一起。完成同样工作的时间变长了,这显然是不对的。就这个问题,我认为的解决方案就是Smaller...

2019-10-25 23:22:52 683 1

原创 因为爱——我的第一篇博客

因为一个偶然的机会接触了Labview,并且用他写一个漏洞百出的管理系统,发现这种编程语言(我比较倾向于叫做编程思想),不管是效率还是编程方式都是远远优于文字编程(请轻拍砖),**我真的喜欢Labview**。。。。。。我使用的Labview做的工作是比较偏门的,绝大多数中的绝大多数人都是用他来做测试和仪器类的设计和开发,我是用他来做web管理软件,从目前国内来看(我没有翻出去看过)基本上没有用...

2019-10-25 22:59:06 126

AWTK开发实践.pdf

AWTK开发实践.pdf

2021-06-26

TMC2160A-datasheet_Rev1.06.pdf

TMC2160A-datasheet_Rev1.06.pdf

2021-06-25

基于Labview的BS系统web的项目示例——数据库读写功能

基于Labview的BS系统web的项目示例——数据库读写功能 实现目标: 在上次笔记的基础上,添加数据库的读写功能 浏览器端通过:写入数据按钮,将数据传入后端,后端接收数据并写入数据库 浏览器端通过:读取数据按钮,传输数据ID,后端将根据数据ID读取数据库的数据,并传回浏览器端,显示在浏览器上 数据库使用的是MySQL

2019-10-30

基于Labview的BS系统web的项目示例

基于Labview的BS系统web的项目示例 1、建立浏览器端的HTML 2、通过浏览器和后端完成数据交互 通过浏览器向后端写入数据(这里演示用POST方式) 通过浏览器向后端请求数据,(这里演示用GET方式)并显示在浏览器上

2019-10-29

建立简单独立基于Labview的Web工程项目

使用的开发工具是Labview2017版本,主要完成的功能如下: 新建一个Web工程项目,目标如下: 通过浏览器和后台进行数据交互 获取浏览器传向后台的数据(Request),后台获取数据 通过后台向浏览器传输数据(Response),前端显示数据 具体就是从浏览器前端发送三个变量:id,name,age,后端接收后向浏览器前端返回一个错误簇,包括一个布尔数据、一个数值、一个字符串

2019-10-27

STM32双通道DMA数据实例

STM32双通道单片机DMA采样数据,采样AD通道,通过显示屏显示

2017-11-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除