UML StateChart提示:进入状态时处理错误

马修eShleman. March 8, 20204评论

这是我的第二篇文章,其中包含使用UML StateCharts设计软件的建议和提示。 我的第一个条目就在这里.

自我之后近20年了 首先研究了UML StateCharts。自那次初始曝光(谢谢同名!),我已经应用了事件驱动的活动对象StateChart设计到众多项目[3]。在我的固件和嵌入式软件项目中,没有任何东西对此模式的偏好。多年来,我在......时注意到了一些常见的挑战


我从未解决过的最难的错误

马修eShleman. December 27, 20189评论

我同意四个小时。 

四个小时帮助追捕并杀死一个虫子。一个可怕的恶意错误,正在在这个项目中脱离,造成严重破坏了关键特征的基础,并从这个项目上的八个固件工程师中的每一台固件工程师随机排出时间。好的,诚实地,我不记得最后一次花费了一两个小时或两个时间来定位,隔离和修复固件错误。当然,我可以帮助找到并解决四个问题......


enderdfoot:如何编写一个伟大的错误报告

马修eShleman. May 31, 20184评论

我是一个奇怪的人。为什么?因为我喜欢写作良好的书面和描述性错误报道。我喜欢一个包括清晰易于遵循的再现步骤的案例。我喜欢一个书面错误报告,包括有关版本,配置,连接和其他系统详细信息的所有必要信息。为什么?因为我相信效率。我认为,作为工程师,我有责任为我的雇主或客户产生价值。大错误报告是我们集体永无止境的一部分......


enderfoot:嵌入式软件和固件专业

马修eShleman. August 20, 201710评论

曾几何时(七年前) 我回答了堆栈溢出的问题。然后是斯蒂芬芬 建议我将该答案转变为博客文章。好点子!这篇文章潜入原始问题:“可以将此字段(嵌入式软件和固件)分段为子字段吗?”

此帖子表示对原始堆栈溢出答案的详细和更新响应。我希望这篇文章能够为...的“植物脚轮”提供指导和有用的信息


植物进攻:推荐阅读

马修eShleman. June 28, 20171条评论

二十年前我读了 代码完成史蒂夫McConnell。然后再读一次。然后再次。然后再次。在我的职业生涯中我读过的所有书籍中,我相信这是将我从一名年轻电气工程师转移到一个年轻人和抱负的嵌入式软件工程师的书。所以所有的'招标脚步开始嵌入嵌入式系统,特别是嵌入式软件和固件职业,此条目适合您。

首先,我当然建议所有工程师阅读和阅读......


植物脚:魔术介绍(数字的数字......)

马修eShleman. May 10, 20173评论

曾几何时,在参与源代码审查时,我偶然发现了在标题文件中的以下C代码:

struct foo { //各种结构字段 char string_buffer [45 + 3]; //缓冲区需要大约45个字节 };

我的右眉抬起,我拍了一下,并继续进行代码审查,稍后偶然进入C函数的正文中的代码行:

char * temp_string_buffer =(char *)malloc(45 + 3);

再次,我对此功能拍了一下,并继续......


最喜欢的工具:C ++ 11 STD :: Array

马修eShleman. February 26, 20172评论

必须为高标准的可靠性开发许多嵌入式软件和固件项目。为满足这些可靠性要求,固件项目团队将考虑许多设计权衡。例如,工程团队可以避免或彻底禁止使用动态内存分配,通常通过C库调用访问的功能“Malloc.“或C ++分配器”新的“。在这样的创作软件时......


最喜欢的工具:C ++ 11用户定义的文字

马修eShleman. November 14, 20161条评论

在许多软件域中,测量单位通常对软件的数据处理要求至关重要。那些相同的单位,或者往往使用错误的单位 虫子和灾难性错误的来源。虽然对其他目的有用, 用户定义的文字 在使用测量单位时,对于C ++ 11标准和方便的优点。

假设设备测量速度。为了帮助防止错误,软件规范需要......


令人惊讶的Linux实时调度程序行为

马修eShleman. November 5, 2016

我最近帮助嵌入式软件设计和开发数据采集和可视化设备。该软件在嵌入的Linux上下文中执行,包括呈现所获取的数据的各种动画用户界面。

通过UART和SPI连接接收数据。在项目开发期间,我们在繁重的用户界面动画期间发现了糟糕的UART数据延迟问题。对于本产品妥善满足其收购要求,UART ......


最喜欢的工具 - 查找表

马修eShleman. October 22, 20163评论

随着我们在我们的工程职业中成长,我们必须不断向我们的集体工具套件添加新工具。我的工具包中最喜欢的工具对于许多经验丰富的嵌入式软件工程师来说是显而易见的。我仍然记得通过同事编写的代码在我的职业生涯中学习这种方法 大卫椋鸟。有问题的工具: 

查找表 

查找表简化了代码并改善固件维护。什么是抬头表?一个抬头桌子往往没有什么比......


最喜欢的工具:C ++ 11 STD :: Array

马修eShleman. February 26, 20172评论

必须为高标准的可靠性开发许多嵌入式软件和固件项目。为满足这些可靠性要求,固件项目团队将考虑许多设计权衡。例如,工程团队可以避免或彻底禁止使用动态内存分配,通常通过C库调用访问的功能“Malloc.“或C ++分配器”新的“。在这样的创作软件时......


enderfoot:嵌入式软件和固件专业

马修eShleman. August 20, 201710评论

曾几何时(七年前) 我回答了堆栈溢出的问题。然后是斯蒂芬芬 建议我将该答案转变为博客文章。好点子!这篇文章潜入原始问题:“可以将此字段(嵌入式软件和固件)分段为子字段吗?”

此帖子表示对原始堆栈溢出答案的详细和更新响应。我希望这篇文章能够为...的“植物脚轮”提供指导和有用的信息


最喜欢的工具 - 查找表

马修eShleman. October 22, 20163评论

随着我们在我们的工程职业中成长,我们必须不断向我们的集体工具套件添加新工具。我的工具包中最喜欢的工具对于许多经验丰富的嵌入式软件工程师来说是显而易见的。我仍然记得通过同事编写的代码在我的职业生涯中学习这种方法 大卫椋鸟。有问题的工具: 

查找表 

查找表简化了代码并改善固件维护。什么是抬头表?一个抬头桌子往往没有什么比......


植物进攻:推荐阅读

马修eShleman. June 28, 20171条评论

二十年前我读了 代码完成史蒂夫McConnell。然后再读一次。然后再次。然后再次。在我的职业生涯中我读过的所有书籍中,我相信这是将我从一名年轻电气工程师转移到一个年轻人和抱负的嵌入式软件工程师的书。所以所有的'招标脚步开始嵌入嵌入式系统,特别是嵌入式软件和固件职业,此条目适合您。

首先,我当然建议所有工程师阅读和阅读......


令人惊讶的Linux实时调度程序行为

马修eShleman. November 5, 2016

我最近帮助嵌入式软件设计和开发数据采集和可视化设备。该软件在嵌入的Linux上下文中执行,包括呈现所获取的数据的各种动画用户界面。

通过UART和SPI连接接收数据。在项目开发期间,我们在繁重的用户界面动画期间发现了糟糕的UART数据延迟问题。对于本产品妥善满足其收购要求,UART ......


我从未解决过的最难的错误

马修eShleman. December 27, 20189评论

我同意四个小时。 

四个小时帮助追捕并杀死一个虫子。一个可怕的恶意错误,正在在这个项目中脱离,造成严重破坏了关键特征的基础,并从这个项目上的八个固件工程师中的每一台固件工程师随机排出时间。好的,诚实地,我不记得最后一次花费了一两个小时或两个时间来定位,隔离和修复固件错误。当然,我可以帮助找到并解决四个问题......


UML StateChart提示:进入状态时处理错误

马修eShleman. March 8, 20204评论

这是我的第二篇文章,其中包含使用UML StateCharts设计软件的建议和提示。 我的第一个条目就在这里.

自我之后近20年了 首先研究了UML StateCharts。自那次初始曝光(谢谢同名!),我已经应用了事件驱动的活动对象StateChart设计到众多项目[3]。在我的固件和嵌入式软件项目中,没有任何东西对此模式的偏好。多年来,我在......时注意到了一些常见的挑战


enderdfoot:如何编写一个伟大的错误报告

马修eShleman. May 31, 20184评论

我是一个奇怪的人。为什么?因为我喜欢写作良好的书面和描述性错误报道。我喜欢一个包括清晰易于遵循的再现步骤的案例。我喜欢一个书面错误报告,包括有关版本,配置,连接和其他系统详细信息的所有必要信息。为什么?因为我相信效率。我认为,作为工程师,我有责任为我的雇主或客户产生价值。大错误报告是我们集体永无止境的一部分......


最喜欢的工具:C ++ 11用户定义的文字

马修eShleman. November 14, 20161条评论

在许多软件域中,测量单位通常对软件的数据处理要求至关重要。那些相同的单位,或者往往使用错误的单位 虫子和灾难性错误的来源。虽然对其他目的有用, 用户定义的文字 在使用测量单位时,对于C ++ 11标准和方便的优点。

假设设备测量速度。为了帮助防止错误,软件规范需要......


植物脚:魔术介绍(数字的数字......)

马修eShleman. May 10, 20173评论

曾几何时,在参与源代码审查时,我偶然发现了在标题文件中的以下C代码:

struct foo { //各种结构字段 char string_buffer [45 + 3]; //缓冲区需要大约45个字节 };

我的右眉抬起,我拍了一下,并继续进行代码审查,稍后偶然进入C函数的正文中的代码行:

char * temp_string_buffer =(char *)malloc(45 + 3);

再次,我对此功能拍了一下,并继续......