- 博客(28)
- 收藏
- 关注
原创 编译cifx的驱动代码报错“netlink/cli/utils.h: No such file or directory”
ethercat编译时遇到netlink/cli/utils.h: No such file or directory。发现该路径在系统默认的库查找路径内。依旧编译失败,找到文件所在路径。
2024-10-14 15:55:12
232
原创 Linux设备上cifx板卡作为ethercat从站的调试记录
然后再点击总线上的slave控件图标,右键选择download,就会生成一个nxd后缀的配置文件到/opt/cifx/deviceconfig/FW/channel0路径下。windows系统的PC,PC上的intel网卡(必须选用支持做主站的网卡型号),linux设备,插在linux设备的cifx网卡,Twincat软件(做主站),SYCON.net(调试从站)左边是Twincat模拟的ethercat主站的IO收发情况,右边是SYCON.net模拟的ethercat从站的IO收发情况。
2024-09-29 11:47:24
1183
2
原创 goahead源码解析(四)---------websListen()与websServiceEvents()函数
websListen()与websServiceEvents()解析
2022-05-24 16:47:33
941
原创 goahead解析(一)---------route.txt
参考网址:https://www.embedthis.com/goahead/doc/users/route.txt1、auth=xxx该语句指定了该请求需要用那种方式验证身份。(1)auth=form表单式身份验证。该方法是在web界面中由用户输入账号和密码,提交后进行验证。例子:route uri=/img/route uri=/action/login methods=GET|POST handler=action redirect=200@/index.asp redirect=40
2022-05-23 17:09:10
1881
1
原创 html提示弹窗(纯js,无需引入其他库)
网页开发很多时候都需要一些提示框,来显示某个动作的执行状态。自带的window.alert还需要点确定按钮,很多时候我们只需要停留几秒的小弹窗,不需要用户点击或输入。用js写一个函数,实现该功能。//type:success, error, info//time:msfunction displayAlert(type, data, time){ if(type == "success") { lunbo.style.backgroundColor = "#009900"
2022-04-14 17:09:58
17347
3
原创 html表格设计(分列,设置边框)
先放一段代码,展示效果,再详细解释。<html><body> <table border = "1px" cellspacing = "0px" width = "800px"> <tr> <th colspan="2">姓名</th> <td colspan="3" style="background-color:#f5f5f0;">Rhett Butler<
2022-04-14 16:15:53
6487
原创 微信小程序调用weUI库
就想搞个加号的图标,折腾了快4个小时。记录一下踩的坑。下载node.js。官网链接https://nodejs.org/zh-cn/虽然微信小程序开发工具的目录里面也有一个node.exe,但是不一样的,还是要重新下一个。(这里也浪费我不少时间,一直把那个node.exe的路径加入环境变量,结果根本不一个东西)2、安装weui进入项目目录下,打开终端,执行npm initnpm install weui-miniprogram 3、在app.wxss中引入weui。这里这个路径把我
2022-01-25 16:47:32
1369
原创 链表笔记。(单向,双向,初始化,插入,删除,遍历)
笔记是去年写的了,然后最近年终总结回顾了一下,发现全是漏洞,就把代码练习那部分修改完善了一些,其他部分应该是当时随便copy的,就没怎么看。重点是练习部分,包含了所有使用情况。先暂时传上来吧。链表单向链表链表的结构类型typedef struct LinkList { int Element; LinkList * next;}LinkList;链表内包含很多结点。其中每个结点的数据空间一般会包含一个
2022-01-14 09:40:44
269
原创 shell脚本语法整理(1)
临时被安排写一个脚本。把这次用到的相关语句记录一下。1、case语句.用于对脚本输入参数进行检验。注意shell内的case语句与C语言中不同,只会匹配第一个符合的条件。而C语言中不加break,就会一直往下运行。if内需要空格,并且等号用单个等号即可。#!/bin/bashfunction parameter_judgement(){ case $# in 0) echo "Please run this shell with paramete
2021-12-27 15:33:06
785
原创 linux定时重启脚本
1、间隔时间给定,周期性重启。示例脚本为:#!/bin/shcd /optecho "*/5 * * * * sudo reboot" > autoReboot.txtcrontab /opt/autoReboot.txt上述示例脚本中重启间隔为5分钟。echo后的字符串,前五个位置对应的分别为分,时,天,月,星期。*/n 代表每n个单位执行一次命令。例如 每5小时可写作 “0 */5 * * *”。2、每天的固定时间重启。示例脚本为:#!/bin/shcd /optec
2021-10-22 10:18:55
4329
原创 vscode无法跳转到定义的问题
之前一直使用虚拟机进行开发,虚拟机崩了之后,转为Windows的vscode通过ssh访问虚拟机,进行开发。然后发现,右键无法跳转到定义。之前单独打开windows下的文件夹是可以正常使用的,但是用ssh访问虚拟机,打开虚拟机内文件就不行了。解决办法为安装下图中的插件:(本方法只适用于使用C进行开发的情况。)装第一个后,右键会出现跳转到定义。但是点击会提示未找到定义。装了第二个过后,就能正常跳转到定义。为防止图片失效,插件名字为:C++ IntellisenseC/C++ Extension
2021-09-23 09:33:42
4450
3
原创 一个服务端,一个主机,多个从机的tcp通信
本文主要解决的需求是,通过一个服务端控制多个设备。多个设备中分为一主多从。服务端与主机直接通信,主机拆分转发消息到从机,再从从机中接收数据,并整合数据发送给服务端。 不难看出在该需求中,主机既作为tcp的客户端与服务端通信,又作为服务端与多个从机通信。因此涉及到tcp的多线程及同一个端口既作服务端又作客户端。 我用windows系统的通信助手作为服务端。以下为通信助手的界面: format support,按Y选中这一项,保存退出重新执行make编译内核就搞定了。...
2020-10-29 16:09:22
317
原创 安装VMware-Tools后屏幕依然无法自适应客户机的解决办法
这个问题可能不太常见,我尝试了很多办法。把VMware-Tools卸载再安装的,还尝试了网上给出的open-vm-tools,都不行。就很迷惑。至今也不清楚是因为什么,可能是当初装的虚拟机有点问题?最后意外解决了,就在安装VMware-Tools后重启,一般人到这就好了,我还是不行,然后点上方状态栏里面的“重新安装VMware-Tools”,点了一下就好了,然后再取消安装,就还是保持这个自适应的状态。这个时候上方状态栏里面的“立即适应客户机”还是灰的,但是的确是已经自适应屏幕了,看起来舒服多了。但
2020-10-13 09:25:12
7518
13
原创 几种常用排序法的C语言代码(2)------快速排序法
快速排序法我花费了比较长的时间,可能比较笨吧,没太理解百度上的写法。最后终于自己悟了。我们进行快速排序,需要三个条件:1,需要排序的数组 ( a[ ],例如 a[10]={1,-3,4,2,8,10,3,98,53,25 )2,需要排序的起始位置 ( left ,例如 0)3,需要排序的结尾位置 (right,例如 9)然后我们把需要排序第一个数字当成比较的基准,也就是key=a[left]我们让j在i-right之间左移,让i在 left和j之间右移。(移动范围这里,划重点!)j左移的时候把
2020-09-05 17:37:14
219
原创 几种常用排序法的C语言代码(1)-----直接插入法
备考嵌入式时候看到一个选择题答案解析上提到了几种排序方法,就想写写试试。后续有时间接着写其他的。这篇先放第一个直接插入法。因为我闲的想比较一下这几种的速度,就把需要排序的数组写成了一样固定的。(有详细的注释哦)#include<stdio.h>int main(){ int a[10]={1,-3,4,2,8,10,3,98,53,25}; //需要排序的数组 int b[10]={}; //空数组,用来存放正确的顺序 int i
2020-09-05 16:37:45
708
原创 软考备考-流水线吞吐率的计算
首先,来看题目中的流水线图然后,先画出执行一条指令时的时序图:纵轴对应题目中的四个段,为四个处理子过程的专用模块,横轴为时间轴。然后加上第二条指令,看一下时序图。红色边框的为第二条指令的部分每个模块必须执行完当前指令的对应子过程后再执行下一指令的对应子过程,如图中的第三横行。并且单条指令的四个过程也必须遵循先后顺序,比如第四横行。因此,如图所示,第一,二条指令执行完毕的时间差为3t,即时间最长的子过程的时长。以此类推,可以得出,总执行时间=单条指令执行时间+(指令条数-1)*最长的子过程
2020-07-29 15:12:51
2702
原创 根据外界光强改变LED亮度
用普中的51开发板,点亮点阵中的一个LED,并使这个LED的亮度随着光敏电阻感受到的光强变化而变化。这个开发板的点阵使用四个级联的74HC595控制的。附上用到的模块的原理图。这个是16*16的点阵。这个是四片级联的74HC595。这个是光敏电阻及ADC模块随下附上我的代码,已写好十分详细的注释。#include<reg51.h>sbit RCK=P1^5; ...
2019-12-10 22:07:10
2251
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人