博客园 - 码好每一天
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=159376
2024-03-29T03:50:28Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
feed.cnblogs.com
https://www.cnblogs.com/zhanghongfei/p/17919093.html
WPF:如何以Binding方式隐藏DataGrid列 - 码好每一天
预想方案 像这样: 先在ViewModel创建数据源 People 和控制列隐藏的 IsVisibility,这里直接以 MainWindow 为 DataContext public partial class MainWindow : Window, INotifyPropertyChanged
2023-12-21T07:11:00Z
2023-12-21T07:11:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】预想方案 像这样: 先在ViewModel创建数据源 People 和控制列隐藏的 IsVisibility,这里直接以 MainWindow 为 DataContext public partial class MainWindow : Window, INotifyPropertyChanged <a href="https://www.cnblogs.com/zhanghongfei/p/17919093.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17804663.html
一台服务器最大能支持多少条 TCP 连接? - 码好每一天
一台服务器最大能打开的文件数 调整服务器能打开的最大文件数示例 一台服务器最大能支持多少连接 一台客户端机器最多能发起多少条连接 其他 相关实际问题 之前有一位读者向我诉苦,有次面试,好不容易(今年行情大家都懂的)熬到到技术终面,谁知道面试官突然放个大招问他:一台服务器最大能支持多少条 TCP 连接
2023-11-02T01:15:00Z
2023-11-02T01:15:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一台服务器最大能打开的文件数 调整服务器能打开的最大文件数示例 一台服务器最大能支持多少连接 一台客户端机器最多能发起多少条连接 其他 相关实际问题 之前有一位读者向我诉苦,有次面试,好不容易(今年行情大家都懂的)熬到到技术终面,谁知道面试官突然放个大招问他:一台服务器最大能支持多少条 TCP 连接 <a href="https://www.cnblogs.com/zhanghongfei/p/17804663.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17513391.html
论单片机中时钟的重要性 - 码好每一天
1.单片机内部需要储存器、累加器,这些都需要逻辑门电路。比如锁存器就是一个D触发器,而触发器的置1、清0、置数的功能都需要跳变沿。D触发器就是上升沿后存入数据,而这个上升沿就得外部提供脉冲,这就是脉冲信号 ,而这个脉冲信号就是我们稳定的时钟信号。 2.单片机运行需要时钟支持 就像计算机的CPU一样,
2023-07-05T01:16:00Z
2023-07-05T01:16:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】1.单片机内部需要储存器、累加器,这些都需要逻辑门电路。比如锁存器就是一个D触发器,而触发器的置1、清0、置数的功能都需要跳变沿。D触发器就是上升沿后存入数据,而这个上升沿就得外部提供脉冲,这就是脉冲信号 ,而这个脉冲信号就是我们稳定的时钟信号。 2.单片机运行需要时钟支持 就像计算机的CPU一样, <a href="https://www.cnblogs.com/zhanghongfei/p/17513391.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17480371.html
STM32之外部中断/时间控制器(EXTI) - 码好每一天
一、EXTI 管理控制23个中断/事件,每个中断/事件 都对应一个边沿检测器,可以实现信号输入的上升沿检测和下降沿检测。 EXTI可实现对每个中断/事件线单独配置, 可以单独配置为中断或事件,以及触发事件的属性。 二、EXTI的功能框图,见具体资料手册。 三、EXIT中断/事件线 #define E
2023-06-17T05:54:00Z
2023-06-17T05:54:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、EXTI 管理控制23个中断/事件,每个中断/事件 都对应一个边沿检测器,可以实现信号输入的上升沿检测和下降沿检测。 EXTI可实现对每个中断/事件线单独配置, 可以单独配置为中断或事件,以及触发事件的属性。 二、EXTI的功能框图,见具体资料手册。 三、EXIT中断/事件线 #define E <a href="https://www.cnblogs.com/zhanghongfei/p/17480371.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17477089.html
STM32之中断简介 - 码好每一天
一、F407在内核水平上搭载了一个异常响应系统,支持为数众多的系统异常和外部中断。其中系统异常10个,外部中断82个。 除了个别异常的优先级被定死外,其他异常的优先级都是可以编程的。结构体: IRQn_Type包含全部异常声明。 二、嵌套向量中断控制器 NVIC,在STM32中NVIV 是 Cort
2023-06-14T03:56:00Z
2023-06-14T03:56:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、F407在内核水平上搭载了一个异常响应系统,支持为数众多的系统异常和外部中断。其中系统异常10个,外部中断82个。 除了个别异常的优先级被定死外,其他异常的优先级都是可以编程的。结构体: IRQn_Type包含全部异常声明。 二、嵌套向量中断控制器 NVIC,在STM32中NVIV 是 Cort <a href="https://www.cnblogs.com/zhanghongfei/p/17477089.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17465736.html
CAN通信(二) :协议介绍 - 码好每一天
CAN 协议经 ISO 标准化后有 ISO11898 标准和 ISO11519-2 标准两种。ISO11898 和 ISO11519-2 标准对于数据链路层的定义相同,但物理层不同。 在阅读完上文后,对CAN总线中的一个极其重要的知识点需要搞明白:回读机制。 指的是节点在向总线上发送报文的过程中,同
2023-06-08T07:50:00Z
2023-06-08T07:50:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】CAN 协议经 ISO 标准化后有 ISO11898 标准和 ISO11519-2 标准两种。ISO11898 和 ISO11519-2 标准对于数据链路层的定义相同,但物理层不同。 在阅读完上文后,对CAN总线中的一个极其重要的知识点需要搞明白:回读机制。 指的是节点在向总线上发送报文的过程中,同 <a href="https://www.cnblogs.com/zhanghongfei/p/17465736.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17465130.html
CAN通信(一) :通信过程 - 码好每一天
一、CAN通讯并不是以时钟信号来进行同步的,它是一种异步半双工通讯。(同步即在同一个时钟驱动下数据通信,半双工即接受与发送不能同时进行) 二、CAN的组成方式 CAN的组成一般有两种方式:一种是CPU与CAN控制器集成到一起、再外接CAN收发器;另一种是CPU与CAN控制器分开的,使用的时候需要配置
2023-06-08T07:50:00Z
2023-06-08T07:50:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、CAN通讯并不是以时钟信号来进行同步的,它是一种异步半双工通讯。(同步即在同一个时钟驱动下数据通信,半双工即接受与发送不能同时进行) 二、CAN的组成方式 CAN的组成一般有两种方式:一种是CPU与CAN控制器集成到一起、再外接CAN收发器;另一种是CPU与CAN控制器分开的,使用的时候需要配置 <a href="https://www.cnblogs.com/zhanghongfei/p/17465130.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17454017.html
C指针 - 码好每一天
一、指针基础 1.不同内存变量的作用域和生命周期 2.指针与底层硬件联系紧密,指针可操作数据的地址,实现对数据的简介访问。 3.指针的使用场景: 3.1 使用指针传递大容量的参数,主函数和子函数使用的是同一套数据,避免了参数传递过程中的数据复制,提高了运行效率,减少了内存占用。 3.2 使用指针传输
2023-06-06T03:49:00Z
2023-06-06T03:49:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、指针基础 1.不同内存变量的作用域和生命周期 2.指针与底层硬件联系紧密,指针可操作数据的地址,实现对数据的简介访问。 3.指针的使用场景: 3.1 使用指针传递大容量的参数,主函数和子函数使用的是同一套数据,避免了参数传递过程中的数据复制,提高了运行效率,减少了内存占用。 3.2 使用指针传输 <a href="https://www.cnblogs.com/zhanghongfei/p/17454017.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17453364.html
CAN通信协议 - 码好每一天
一、概览 1.CAN总线协议是一种ISO国际化的串行通信协议,有ISO-11898和ISO-11519两个系列 2.高速CAN和低速CAN的速率分别为:125kbps~1Mbps 、 10~125kbps 3.串行通信:Rx:用于接收数据 Tx:用于发送数据 4.双绞线提高了CAN通信的抗干扰能力
2023-06-03T03:02:00Z
2023-06-03T03:02:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、概览 1.CAN总线协议是一种ISO国际化的串行通信协议,有ISO-11898和ISO-11519两个系列 2.高速CAN和低速CAN的速率分别为:125kbps~1Mbps 、 10~125kbps 3.串行通信:Rx:用于接收数据 Tx:用于发送数据 4.双绞线提高了CAN通信的抗干扰能力 <a href="https://www.cnblogs.com/zhanghongfei/p/17453364.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17452132.html
C# 一些非常用关键字 - 码好每一天
一、fixed 1、fixed 语句禁止垃圾回收器重定位可移动的变量。fixed 语句只能出现在不安全的上下文中。Fixed 还可用于创建固定大小的缓冲区。2、fixed 语句设置指向托管变量的指针并在 statement 执行期间“钉住”该变量。如果没有 fixed 语句,则指向可移动托管变量的指
2023-06-02T08:16:00Z
2023-06-02T08:16:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、fixed 1、fixed 语句禁止垃圾回收器重定位可移动的变量。fixed 语句只能出现在不安全的上下文中。Fixed 还可用于创建固定大小的缓冲区。2、fixed 语句设置指向托管变量的指针并在 statement 执行期间“钉住”该变量。如果没有 fixed 语句,则指向可移动托管变量的指 <a href="https://www.cnblogs.com/zhanghongfei/p/17452132.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/17273820.html
Modbus协议 - 码好每一天
Modbus协议也是属于一种应用层的通讯协议。 PDU:简单协议数据单元 ADU:应用数据单元 一.功能码:向服务器指示执行何种操作 有效范围:1-255(128-255为异常响应保留) 添加子功能码来定义更多的操作项 MODBUS 在串行链路的长度约束256字节 ,所以PDU = 256 - 1(
2023-03-30T09:49:00Z
2023-03-30T09:49:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】Modbus协议也是属于一种应用层的通讯协议。 PDU:简单协议数据单元 ADU:应用数据单元 一.功能码:向服务器指示执行何种操作 有效范围:1-255(128-255为异常响应保留) 添加子功能码来定义更多的操作项 MODBUS 在串行链路的长度约束256字节 ,所以PDU = 256 - 1( <a href="https://www.cnblogs.com/zhanghongfei/p/17273820.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/16966059.html
JavaScript简介 - 码好每一天
一、web前端有三层:结构、样式和行为,它们分别对应HTML、CSS和JavaScript 二、JavaScript既是前端语言,又是后端语言(Nodejs) 三、Javascript的特点: 1、它是一种解释性语言,脚本语言 2、单线程 3、ECMAScript标准 四、网页引入JS代码的三种方式
2022-12-08T07:08:00Z
2022-12-08T07:08:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一、web前端有三层:结构、样式和行为,它们分别对应HTML、CSS和JavaScript 二、JavaScript既是前端语言,又是后端语言(Nodejs) 三、Javascript的特点: 1、它是一种解释性语言,脚本语言 2、单线程 3、ECMAScript标准 四、网页引入JS代码的三种方式 <a href="https://www.cnblogs.com/zhanghongfei/p/16966059.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/16534262.html
select top 后需要加参数,怎么办? - 码好每一天
如何学习存储过程。无他,多写,多做。多实践。 掌握了各种SQL命令,理解连接的原理、子查询的原理等SQL基本知识,就具备写存储过程的基础. 其次,应该了解所使用的数据库管理系统的逻辑结构,譬如数据库的系统表,系统视图,系统存储过程,系统函数等,这些都是必须了解的,再深一点就是表、索引等数据库对象的存
2022-07-30T00:14:00Z
2022-07-30T00:14:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】如何学习存储过程。无他,多写,多做。多实践。 掌握了各种SQL命令,理解连接的原理、子查询的原理等SQL基本知识,就具备写存储过程的基础. 其次,应该了解所使用的数据库管理系统的逻辑结构,譬如数据库的系统表,系统视图,系统存储过程,系统函数等,这些都是必须了解的,再深一点就是表、索引等数据库对象的存 <a href="https://www.cnblogs.com/zhanghongfei/p/16534262.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/16054604.html
WPF样式-SVG图标转换成Wpf path Geometry - 码好每一天
转载:https://blog.csdn.net/badxnui/article/details/111529265 开发WPF程序的UI 时,我们经常用到矢量图,复杂好看的SVG图可以先由专业的画图工具生成,这里推荐一个SvgToXaml的开源工具 网址:https://github.com/Be
2022-03-25T06:44:00Z
2022-03-25T06:44:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】转载:https://blog.csdn.net/badxnui/article/details/111529265 开发WPF程序的UI 时,我们经常用到矢量图,复杂好看的SVG图可以先由专业的画图工具生成,这里推荐一个SvgToXaml的开源工具 网址:https://github.com/Be <a href="https://www.cnblogs.com/zhanghongfei/p/16054604.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/15407537.html
WPF之资源专题 - 码好每一天
1.一般程序的资源可以分为四个等级: 数据库中的数据相当于放在仓库里 资源文件里的数据相当于放在旅行箱里 WPF对象资源里的数据相当于携带在背包里 变量中的数据相当于拿在手里 2.资源的查找顺序是沿着逻辑树向上一级控件查找,如果连顶级容器都没有就会去程序级Application.Resources中
2021-10-15T02:26:00Z
2021-10-15T02:26:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】1.一般程序的资源可以分为四个等级: 数据库中的数据相当于放在仓库里 资源文件里的数据相当于放在旅行箱里 WPF对象资源里的数据相当于携带在背包里 变量中的数据相当于拿在手里 2.资源的查找顺序是沿着逻辑树向上一级控件查找,如果连顶级容器都没有就会去程序级Application.Resources中 <a href="https://www.cnblogs.com/zhanghongfei/p/15407537.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/15407052.html
【设计模式】- 单例模式 - 码好每一天
1.单例模式:保证一个类只要一个实例,并提供一个访问它的全局访问点。 2.谈到单例模式,可能有人听过‘饿汉式单例类’ 和 ‘饱汉式单例类’。 饿汉式单例类, 类在被加载时就实例化了。 饱汉式单例类, 类在第一次被引用时被实例化。 3.多线程下保证单例,双重锁定,代码如下: namespace Sin
2021-10-14T07:51:00Z
2021-10-14T07:51:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】1.单例模式:保证一个类只要一个实例,并提供一个访问它的全局访问点。 2.谈到单例模式,可能有人听过‘饿汉式单例类’ 和 ‘饱汉式单例类’。 饿汉式单例类, 类在被加载时就实例化了。 饱汉式单例类, 类在第一次被引用时被实例化。 3.多线程下保证单例,双重锁定,代码如下: namespace Sin <a href="https://www.cnblogs.com/zhanghongfei/p/15407052.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/15406092.html
【设计模式】- 适配器模式 - 码好每一天
1.适配器模式:将一个类的接口转换为客户希望的另外一个接口。Adapter 模式是原来由于接口不兼容而不能一起工作的那些类可以一起工作。 2.形象的例子:姚明刚去NBA需要一个翻译,这个翻译就充当一个适配器的角色。在.NET体系中,经常使用的DataAdapter就是这个模式。 3.适配器模式一般情
2021-10-14T05:35:00Z
2021-10-14T05:35:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】1.适配器模式:将一个类的接口转换为客户希望的另外一个接口。Adapter 模式是原来由于接口不兼容而不能一起工作的那些类可以一起工作。 2.形象的例子:姚明刚去NBA需要一个翻译,这个翻译就充当一个适配器的角色。在.NET体系中,经常使用的DataAdapter就是这个模式。 3.适配器模式一般情 <a href="https://www.cnblogs.com/zhanghongfei/p/15406092.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/15398766.html
【设计模式】- 总览及设计原则 - 码好每一天
一.设计原则 1、单一职责原则 一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。
2021-10-13T00:03:00Z
2021-10-13T00:03:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】一.设计原则 1、单一职责原则 一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。 <a href="https://www.cnblogs.com/zhanghongfei/p/15398766.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/15398693.html
【设计模式】- 桥接模式 - 码好每一天
在面向对象的设计中,一个重要的设计原则,优先使用【合成/聚合】原则。 聚合表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但是B对象不是A对象的一部分;合成表示一种强的‘拥有’关系,体现了严格的部分与整体的关系,部分和整体有一样的生命周期。 优先使用【合成/聚合】将有助于你保持每个类被封装,
2021-10-12T09:10:00Z
2021-10-12T09:10:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】在面向对象的设计中,一个重要的设计原则,优先使用【合成/聚合】原则。 聚合表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但是B对象不是A对象的一部分;合成表示一种强的‘拥有’关系,体现了严格的部分与整体的关系,部分和整体有一样的生命周期。 优先使用【合成/聚合】将有助于你保持每个类被封装, <a href="https://www.cnblogs.com/zhanghongfei/p/15398693.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/zhanghongfei/p/13998063.html
InstallScript脚本语言基本知识(一) - 码好每一天
1.自定义函数 1 //函数的声明:prototype 返回值 函数名(形参类型1,...) 2 export prototype STRING GetPreDir(STRING); 3 4 //函数体 5 function STRING GetPreDir(szDir) 6 //定义内部使用的变量
2020-11-18T01:43:00Z
2020-11-18T01:43:00Z
码好每一天
https://www.cnblogs.com/zhanghongfei/
【摘要】1.自定义函数 1 //函数的声明:prototype 返回值 函数名(形参类型1,...) 2 export prototype STRING GetPreDir(STRING); 3 4 //函数体 5 function STRING GetPreDir(szDir) 6 //定义内部使用的变量 <a href="https://www.cnblogs.com/zhanghongfei/p/13998063.html" target="_blank">阅读全文</a>