重构,着实是一件让程序员兴奋的事情。今年年初,我们团队完成了一个复杂项目的重构工作,它属于广告系统最核心的引擎部分,大概有300多个文件,3万多行代码。 从技术方案设计到最终全量上线仅仅花了1个月左右的时间,而且没有产生事故。 这应该是我8年程序生涯中,经历过的最大型的同时最成功的一次重构项目:速度足够快、计划比较周全、质量过关。
很多刚开始学习单片机的小伙伴最苦恼的就是如何入门,不知道从哪一部分开始、在哪里查找学习资源、按照怎样的学习步骤进行学习,而且摸索学习步骤的过程在浪费时间的同时也会降低学习兴趣。为了帮助大家解决这种情况,小编将单片机达人的学习经验进行了整理,以文章的形式分享给大家。
首先你要有一个bin文件(bin文件的获取方法不在此展开介绍,今后有机会可以专门开一个贴聊一聊)。本次实验用到的bin文件 stm32_xwrtos.bin.zip (6 KB) 是用ST官方CMSIS和外设库编译的跑在stm32f103c8t6上的bin文件,比较具有代表性。
从单片机上知道,在上电的那一刻,MCU的程序指针会被初始化为上电复位时的地址,从那个地址处读取将要执行的指令,由此程序在MCU上开始执行。PC在上电时,和MCU差不多,不过读取的是BIOS,有它完成了很多初始化操作,最后,调用系统的初始化函数,将控制权交给了操作系统,于是我们看到了Windows,Linux系统启动了。
本文档主要介绍,在python环境下,如何开发嵌入式应用程序,以STM32H43板卡为例介绍. 从系统环境搭建,到编译,到用python实现硬件控制。可作为入门教程。
小张,开发一个大型系统,写了一个统一的接口层;日志门面(日志的一个抽象层);logging-abstract.jar;给项目中导入具体的日志实现就行了;我们之前的日志框架都是实现的抽象层……
本文主要分享菜鸟进口实时数仓的升级经验,以及如何利用Flink的特性解决在开发实践中遇到的问题。
本文详细介绍了C/C++中的字节对齐,建议收藏!
为什么在EWARM中可以编译通过,却在MDK-ARM中会出错呢?
如果说各种编程语言是程序员的招式,那么数据结构和算法就相当于程序员的内功。想写出精炼、优秀的代码,不通过不断的锤炼,是很难做到的。
SPI是单片机外设电路中常用的一种通讯方式,适用于近距离通信,通常用于芯片间的通讯,有四根线。 在SPI通讯中总线时钟和总线相位也两个比较重要的概念,一般在使用SPI通信时都使用默认设置,所以容易把这两个参数忽略。 和大家分享一下SPI通讯、时钟极性以及时钟相位的基础知识。
有粉丝问我到底什么是ARM,搞不清楚Cortex、arm内核、arm架构、ARM指令集、soc这些概念都是什么关系,本文给大家整理一下关于ARM相关的一些概念。
YUV是一种颜色编码方法,和它等同的还有RGB颜色编码方法。RGB三个字母分别代表了 红(Red)、绿(Green)、蓝(Blue),这三种颜色称为 三原色,将它们以不同的比例相加,可以产生多种多样的颜色。
嵌入式常见的GUI,你了解几个?
我们学习单片机的目的就是为了进行嵌入式系统的开发,学好单片机首先要有一个整体认识,下面将简要介绍一下单片机应用系统的开发流程。
本文介绍了Linux查看资源使用情况和性能调优常用的命令,包括top、htop、ps、free、vmstat、iostat、netstat、df和du命令。
知乎上有网友提问:当前集成电路设计工程师的薪资是否可持续?这个话题应该是我们所有IC人都关心的一个话题了,以下摘录几段知乎网友的回答,也希望大家留言补充。
面对超高的并发,首先硬件层面机器要能扛得住,其次架构设计做好微服务的拆分,代码层面各种缓存、削峰、解耦等等问题要处理好,数据库层面做好读写分离、分库分表,稳定性方面要保证有监控,熔断限流降级该有的必须要有,发生问题能及时发现处理。这样从整个系统设计方面就会有一个初步的概念。
单片机的基准电压一般为3.3V,如果外部信号超过了AD测量范围,可以采用电阻分压的方法,但是要注意阻抗匹配问题。比如,SMT32的模数输入阻抗约为10K,如果外接的分压电阻无法远小于该阻值,则会因为信号源输出阻抗较大,AD的输入阻抗较小,从而输入阻抗对信号源信号的电压造成分压,最终导致电压读取误差较大。
C语言里,每个源文件是一个模块,头文件为使用该模块的用户提供接口。接口指一个功能模块暴露给其他模块用以访问具体功能的方法。使用源文件实现模块的功能,使用头文件暴露单元的接口。用户只需包含相应的头文件就可使用该头文件中暴露的接口。