- C# 与串口通信:解决常见问题的调试技巧与实用建议
威哥说编程
c#单片机stm32
串口通信作为一种经典的通信方式,在很多领域中仍然广泛应用,尤其是在嵌入式系统、工业自动化、测控系统等场景中。通过串口接口,可以实现设备间的短距离、低速数据传输。C#提供了强大的System.IO.Ports.SerialPort类来支持串口通信的开发,但在实际开发中,开发者常常遇到一些问题,比如数据丢失、串口冲突、波特率不匹配等。本文将深入探讨如何使用C#进行串口通信,结合调试技巧和实用建议,帮助
- Linux I/O 文件操作详解:从系统调用到实际工程应用
平凡灵感码头
linux学习linux运维服务器
一、写在前面在Linux或任何类Unix操作系统中,文件是一切的核心——无论是硬盘上的文本文件,还是串口设备、GPIO寄存器、甚至网络接口,几乎都被抽象为“文件”。理解Linux下的I/O文件操作机制,不仅是嵌入式开发的基础,也是进行系统编程与底层控制的关键。二、I/O的本质:一切皆文件Linux将外设抽象成文件的方式,统一了对各种资源的操作模型。你可以用open打开串口设备/dev/ttyS0,
- Memfault 简介及在Nordic nRF91 系列 DK的应用
1:Memfault是一个云平台,它允许您和您的团队持续监控设备、调试固件问题,并将OTA更新部署到您的设备群,从而以软件的速度交付硬件产品。Memfault以嵌入式优先:支持运行在任何实时操作系统(RTOS)或Android、Linux等操作系统上的嵌入式系统和设备它适用于任何设备:从功能强大的SoC一直到功能受限的MCU,Memfault都能适配您设备的可用闪存、RAM和带宽我们的SDK是专为
- Linux 设备树详解:从概念到实战
Jay_515
Linux学习嵌入式linux设备树
关键词:设备树(DeviceTree)、DTS、DTC、DTB、嵌入式Linux驱动开发为什么需要设备树?在旧版Linux内核中,硬件信息(如内存映射、外设地址、中断号等)直接硬编码在内核源码中。这导致:内核臃肿,需为不同硬件编译不同版本硬件变动需重新编译内核代码冗余严重(一个board-*.c文件对应一块开发板)设备树(DeviceTree)的引入彻底解决了这一问题!它通过描述硬件拓扑结构的文本
- 嵌入式开发中.su文件的作用
小米人儿
我的博客嵌入式
reference:https://interrupt.memfault.com/blog/measuring-stack-usagehttps://github.com/ttsiodras/checkStackUsage测试代码#includeintfoo_2(intc){intarray[4];array[1]=c;array[3]=c*c;returnarray[3]-array[1];}i
- 基于GD32F4XX的CAN总线消息处理系统
森焱森
c语言架构驱动开发单片机算法
基于GD32F4XX的CAN总线消息处理系统在嵌入式系统开发中,CAN总线广泛应用于汽车、工业自动化等领域。高效处理CAN总线数据对于系统性能至关重要。本文介绍基于GD32F4XX的CAN总线消息接收和解析系统,利用环形缓冲区和函数指针实现高效、灵活的数据处理。核心实现-环形缓冲区环形缓冲区用于暂存接收到的CAN消息,防止数据丢失。支持两种模式:正常模式(缓冲区满则丢弃新数据)和覆盖模式(缓冲区满
- 嵌入式八股文
NAccept
c语言
对一个寄存器某个位进行改变,用位操作怎么做new对象时,怎么知道内存是否分配成功浮点数在计算机中怎么存储模板使用和多态左值和右值的区别静态链接,动态链接引用传递define宏lambda表达式和变量捕获C++面向对象多态实现,模板算不算多态?C++类的组合虚拟内存(为了解决什么问题)线程与进程的区别?进程间的通信方式进程的虚拟地址空间划分线程安全和线程不安全内存分段和分页new对象时,怎么知道内存
- 基于51单片机开发多功能菜单系统项目介绍(开源)
菜鸟—历险记
51单片机嵌入式硬件单片机
51单片机多功能菜单系统一、项目介绍基于51单片机开发的多功能菜单系统是一种集成多种功能的嵌入式系统,广泛应用于电子产品中,该系统的核心是AT89C52芯片,其强大的处理能力和丰富的外设接口使其成为许多项目的理想选择。这是一个有趣且实用的项目,可以帮助用户实现多种功能,我设计了的功能有:矩阵键盘输入密码、PWM直流电机驱动风扇调速、DS18B20温度监控、光敏电阻检测模块、加减乘除计算器、人的BM
- 第 1 章 嵌入式C语言概述
KPing.
嵌入式C语言编程入门c语言stm32
嵌入式C语言是一种用于编写嵌入式系统软件的编程语言。嵌入式系统是指嵌入在其他设备或系统中的计算机系统,通常用于控制和监控硬件设备的操作。嵌入式C语言是一种高级语言,它提供了一种结构化的编程方法,并且具有适应嵌入式系统特性的特定语法和功能。嵌入式C语言主要用于开发嵌入式系统的底层软件,包括驱动程序、操作系统、实时系统和应用程序等。与传统的桌面应用程序相比,嵌入式系统通常具有资源有限、实时性要求高、对
- 【软件系统架构】系列四:嵌入式软件-M2M 与 NPU 技术对比及协同设计方案
目录一、基本定义二、技术目标差异三、架构组成对比四、功能能力对比五、应用场景对比六、综合对比总结表七、协同场景建议八、M2M+NPU协同系统设计方案1.系统架构图(简化逻辑)2.模块划分与功能说明三、通信时序图(关键路径)四、数据协议定义(JSON)上报事件(推理结果)云端控制命令五、协同机制设计建议六、典型应用示例(如:AI门锁、边缘安防)一、基本定义项目M2M(MachinetoMachine
- 【软件系统架构】系列四:嵌入式软件-CMMI 安全认证标准及认证所需资源模板
34号树洞
自学软件系统架构嵌入式硬件系统架构CMMI
目录CMMI能力成熟度模型集成详解一、什么是CMMI?二、核心价值三、五个成熟度等级(MaturityLevels)四、CMMI模型结构(V2.0为例)1.领域(Domains)2.能力域(PracticeAreas,PAs)3.实践(Practices)4.能力等级(CapabilityLevels)五、CMMI认证流程六、常见输出物(过程资产模板)七、CMMIvsDO-178B对比(典型对比)
- 【软件系统架构】系列四:嵌入式软件开发流程全解析(包含示例)
34号树洞
自学软件系统架构大数据系统架构嵌入式
目录一、需求分析阶段二、系统架构设计阶段:三、开发准备阶段四、底层驱动开发阶段(HAL/BSP)五、操作系统集成阶段(RTOS/OS)六、中间件与协议栈集成阶段七、应用逻辑开发阶段八、调试与测试阶段:九、集成与联调阶段十、发布与维护阶段总结:完整开发流程图附:ESP32智能锁完整开发流程(含源码结构与文档模板)1.项目概述项目名称:功能特性:2.项目源码结构(推荐)3.开发流程分解(与上文流程对齐
- 系统架构设计综合知识(1.2)嵌入式系统
Curtain_0216
系统架构设计师系统架构架构
前言这里主要内容为系统架构设计师教程(第二版)上对应2.4,嵌入式系统,教材中对于嵌入式描述十分简略只介绍了基本概念,虽然偶尔会考到,但考的时候就一直超纲这里内容较少,后续会逐步进行补充。文档内容是看了视频后整理,如有遗漏,欢迎评论补充。刷题使用51CTO小程序如果大家有更好的可以分享一下。文章目录前言嵌入式技术嵌入式系统嵌入式微处理器嵌入式微处理器体系结构嵌入式微处理器分类多核处理器结构嵌入式软
- 【软件系统架构】系列四:嵌入式软件-NPU(神经网络处理器)系统及模板
目录一、什么是NPU?二、NPU与CPU/GPU/DSP对比三、NPU的工作原理核心结构:数据流架构:四、NPU芯片架构(简化图)五、NPU的优势六、NPU应用场景视觉识别语音识别自动驾驶智能监控AIoT设备七、主流NPU芯片/架构实例八、开发者工具生态(通用)九、NPU集成建议(嵌入式开发场景)十、NPU芯片选型对比+模型部署流程+嵌入式工程模板1.主流NPU芯片选型对比表2.模型部署流程(以T
- 一些针对FOC算法的 Clark/Park变换 和 SVPWM生成 的案例代码
鹿屿二向箔
算法
以下是一些针对FOC算法的Clark/Park变换和SVPWM生成的案例代码,涵盖Python仿真、C语言嵌入式实现和ArduinoSimpleFOC库的示例。代码将保持简洁,并附带关键注释。1.Python仿真示例(1)Clark/Park变换实现importnumpyasnpdefclark_transform(ia,ib,ic):"""Clark变换(幅值不变,k=2/3)"""i_alph
- FPGA与Verilog实现的Cordic算法测试项目
weixin_42668301
本文还有配套的精品资源,点击获取简介:Cordic算法是一种在FPGA和Verilog硬件描述语言中实现高效的数值计算技术,它简化了硬件资源需求,特别适合资源有限的嵌入式系统。通过模块化设计,Cordic算法可以拆分为多个子模块来实现,包括旋转步骤、误差校正和控制逻辑等。该算法通过迭代过程逼近目标值,无需乘法器,从而减少了硬件资源消耗并提高了效率。在实现时需要考虑位宽、迭代次数和误差处理等因素,以
- 特斯拉及新能源车企笔试面试题型解析上-21期
启芯硬件笔记
经验分享PCBEMI硬件工程面试职场和发展
本专栏预计更新90期左右。当前第21期-特斯拉硬件.特斯拉作为全球领先的电动汽车、能源存储和人工智能公司,其硬件工程师岗位的招聘通常包括笔试和多轮技术面试,考察领域涵盖数字电路设计、模拟电路、嵌入式系统、电动车技术和自动驾驶等。由于特斯拉的创新性和技术领先地位,其面试问题可能更加注重实际应用和问题解决能力。笔试通常旨在考察候选人的基础理论知识、问题分析能力、电路设计与调试经验、以及对相关工具和方法
- ARM嵌入式核心板赋能体外诊断POCT、超声、AED设备解决方案
学海无涯_come on
医疗器械单片机ARM开发arm开发
一、ARM嵌入式核心板赋能体外诊断POCT设备解决方案近年,POCT(即时检验)作为IVD(体外诊断)的细分领域,市场规模持续增加。POCT(point-of-caretesting)即时检验,指在病人旁边进行的临床检测及床边检测(bedsidetesting),是利用便携式分析仪器以及配套试剂快速得到检测结果的一种检测方式。常见的POCT设备有生化分析仪、免疫分析仪、PCR仪等,采用干化学、免疫
- 深入解析 SSD FW 顶层架构之 OS 元素:挑战与应对
Richard_Lynn
SSD架构SSDFTLOSIO
在SSD(固态硬盘)固件(FW)的复杂顶层架构中,OS(操作系统)元素扮演着至关重要的角色,它参考嵌入式操作系统,承担着启动、任务调度、内存管理、调试手段提供等关键功能,同时也面临着一系列棘手的挑战。下面我们就来深入剖析这一架构元素,聊聊它在SSD开发过程中带来的难题与应对思路。一、OS元素的核心功能与价值(一)基础支撑功能OS在SSDFW架构里,是整个系统的“大管家”。它负责启动流程,有序初始化
- 【OpenHarmony】二维码生成器:qr-code-generator
mn_xiaona666
鸿蒙开发移动开发OpenHarmonyharmonyosOpenHarmony移动开发鸿蒙开发三方库
往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️市场巨变,移动开发行业即将迎来“第二春”?✏️记录一场鸿蒙开发岗位面试经历~✏️持续更新中……简介用于生成符合国际标准的高质量QR码
- 【OpenHarmony】轻便易用的JSON模式验证器:jsonschema
mn_xiaona666
移动开发OpenHarmony鸿蒙开发jsonharmonyosopenharmony鸿蒙开发移动开发Json
往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️市场巨变,移动开发行业即将迎来“第二春”?✏️记录一场鸿蒙开发岗位面试经历~✏️持续更新中……简介jsonschema是一个轻便易用
- 结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
麻辣长颈鹿Sir
FreeRTOS嵌入式开发C/C++stm32单片机FreeRTOSSTM32CubeMX实时操作系统C/C++
前言在STM32CubeMX软件出现以后,创建嵌入式项目变得简洁了许多,开发者无需重复编写MCU的外设初始化配置,只需在STM32CubeMX软件中动动鼠标配置完毕,就可以自动生成基于HAL/LL库的Keil项目文件,提高了开发效率。最近想要学习一下FreeRTOS操作系统,发现在STM32CubeMX中可以直接在项目中生成FreeRTOS系统源码,非常方便,而目前网上有关使用STM32CubeM
- 鸿蒙开发5.0案例分析:TaskPool数据库操作实战
程东升6
HarmonyOS移动开发鸿蒙开发harmonyos数据库鸿蒙开发移动开发ArkUITaskPool多线程
往期推文全新看点(文中附带最新·鸿蒙全栈学习笔记)市场巨变,移动开发行业即将迎来“第二春”?鸿蒙应用开发与鸿蒙系统开发哪个更有前景?嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~对于大前端开发来说,转鸿蒙开发究竟是福还是祸?鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?记录一场鸿蒙开发岗位面试经历~持续更新中……介绍本实例通过列表场景实例讲解,介绍在TaskPool线程中操作关系型
- AUTOSAR汽车电子嵌入式编程精讲300篇-基于CAN总线的气动控制(中)
格图素书
汽车
目录2.2CAN总线技术及TTCAN协议2.2.1CAN总线技术2.2.2TTCAN协议3气动系统的定位控制研究3.1滑模控制原理3.1.1滑模控制概念和特性3.1.2滑模控制的抖振问题3.1.3非奇异终端滑模控制3.2气动系统定位控制策略设计3.2.1跟踪微分器的设计3.2.2非奇异终端滑模控制器的设计3.2.3滑模变结构扩张状态观测器的设计3.2.4基于扩张状态观测器的非奇异终端滑模控制器3.
- 67、故障注入:提升嵌入式系统可靠性的关键技术
职场老油条170
嵌入式系统设计:从理论到实践故障注入嵌入式系统可靠性
故障注入:提升嵌入式系统可靠性的关键技术1.故障注入的意义在嵌入式系统的设计和验证过程中,确保系统在出现故障时依然能够正常运行或安全地进入故障状态至关重要。故障模拟虽然是验证系统行为的一种方法,但对于真实系统而言,它可能过于耗时且难以实现。因此,故障注入作为一种替代方法,越来越受到重视。故障注入通过修改实际系统中的某些组件或环境条件,来检查系统在故障情况下的反应,从而验证系统的容错能力和可靠性。故
- 大模型·知识蒸馏·学习笔记
小先生00101
笔记人工智能神经网络机器学习自然语言处理深度学习语言模型
第一部分:核心概念入门1.1什么是知识蒸馏?核心问题:深度学习模型(如大型神经网络)虽然性能强大,但其巨大的参数量和计算需求使其难以部署到手机、嵌入式设备等资源受限的平台。核心思想:知识蒸馏是一种模型压缩和优化的技术,其灵感来源于“教师-学生”范式。我们先训练一个复杂但性能强大的“教师模型”,然后利用这个教师模型来指导一个轻量级的“学生模型”进行学习。生动的比喻(Hinton,2015):这个过程
- 工业4.0技术PLC远程控制模块的升级处理
huajiezhikong
PLC远程数据传输模块PLC数据上下载PLC远程控制模块多点组网蓝牙远程控制工业产品PLC远程控制无线通讯西门子
工业4.0是实体物理世界与虚拟网络世界融合的时代,产品全生命周期、全制造流程数字化以及基于信息通信技术,升级版PLC远程控制器带你轻松进入工业4.0技术文档:HJ8900是深圳市华杰智控技术有限公司开发的一款远程控制模块,采用嵌入式LINUX系统,工业级低功耗处理器和工业级通信模块,支持1个WAN口和3个LAN口,2路USB接口,2路RS232和2路RS485,支持4G全网通和2.4GWi-Fi。
- rust做嵌入式开发_用Rust重写Linux内核模块体验
weixin_39614060
rust做嵌入式开发
最近,我用Rust重写了一个2W+行C代码的linux内核模块。在此记录一点经验。我此前没写过内核模块,认识比较疏浅,有错误欢迎指正。为什么要重写?这个模块2W+行代码量看起来不多,却在线上时常故障,永远改不完。十多年的老代码,经手了无数程序员,没人能解决其中的内存安全问题。拿过来一看,代码中的确有不少会产生UB的写法,线上的故障从core来看都飘得太远,难以定位根本原因在哪里。所以我没有把握(没
- STM32[笔记]--4.嵌入式硬件基础
wind_one1
STM32入门教程stm32嵌入式硬件笔记
4.嵌入式硬件基础4.1认识上官二号开发板主控芯片:STM32F103C8T6高速晶振:8M低速晶振:32.768kLED:5颗KEY:3个主控芯片内部的资源如下项目介绍内核Cortex-M3Flsah64K*8bitSRAM20K*8bitGPIO37个GPIO,分别为PA0-PB15,PC13-PC15,PD0-PD1ADC2个12bitADC合计12了通道,外部通道:PA0到PA7+PB0到
- SPI NOR FLASH是什么,与SPI NAND Flash的区别
义嘉泰IC烧录服务
前端javascript网络
SPINORFLASH是什么?SPINORFLASH是一种非易失性存储器,它通过串行接口进行数据传输,具有读写速度快、可靠性高、体积小等优点。它采用类似SRAM的存储方式,每个存储单元存储一位数据(0或1),可以直接寻址,寻址速度非常快。SPINORFLASH支持全双工、单工以及半双工传输方式,被广泛应用于嵌入式系统中,如Bootloader、操作系统内核等程序的存储。由于它的读写速度和寻址方式类
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen