- STM32 Cube MX 软件使用教程和技巧(纯干货分享~~!)
立量
嵌入式IDEstm32单片机嵌入式硬件
以下是关于STM32CubeMX的详细使用教程和一些实用技巧,帮助您快速上手并高效开发STM32项目:一、STM32CubeMX简介功能:ST官方推出的图形化配置工具,用于生成STM32微控制器的初始化代码(基于HAL库/LL库),支持引脚分配、时钟树配置、外设初始化等。优势:减少底层代码编写时间,避免手动配置寄存器,兼容多种IDE(Keil、IAR、STM32CubeIDE等)。二、基础使用教程
- 蓝桥杯单片机刷题——串口发送显示
lzb759
一个月备赛蓝桥杯单片机蓝桥杯单片机
设计要求通过串口接收字符控制数码管的显示,PC端发送字符'A',数码管显示'A',发送其它非法字符时,数码管显示'E'。数码管显示格式如下:备注:单片机IRC振荡器频率设置为12MHz。串口通信波特率:9600bps。按键模式:BTN;扩展方式:IO模式除字符'A'外,其它字符均为非法字符。个人代码#includecodeunsignedcharSeg_Table[]={0x88,//A00x86
- 【STM32实物】基于STM32的扫地机器人/小车控制系统设计
阿齐Archie
单片机项目合集stm32机器人单片机mcu
基于STM32的扫地机器人/小车控制系统设计演示视频:基于STM32的扫地机器人小车控制系统设计简介:扫地机器人系统采用分层结构设计,主要包括底层硬件控制层、中间数据处理层和上层用户交互层。底层硬件控制层负责对各个硬件模块进行控制和数据采集,中间数据处理层负责对采集到的数据进行处理和解算,上层用户交互层负责与用户进行交互并显示系统状态信息。主控模块采用STM32F103C8T6开发板,具有高性能、
- 基于STM32单片机的智能清扫小车清扫机器人
CC呢
单片机stm32机器人
功能描述STM32单片机+循迹+避障+蓝牙控制+温度采集+声光报警+按键调节+OLED显示+风扇吸尘1.STM32单片机为控制核心2.通过ds18b20传感器测量环境温度3.OLED显示屏显示模式及测量的信息;4.通过红外循迹传感器可以实现小车沿黑线进行循迹清扫5.通过两路红外光电传感器进行避障,可以实现全屋随意清扫6.蓝牙通信,可以通过手机公共APP(蓝牙串口调试助手)实现控制小车的前进方向,遥
- 远程视像搬运小车控制系统设计(源码+万字报告+实物)
炳烛之明科技
stm32嵌入式硬件单片机
目录第1章绪论11.1研究目的及意义11.2国内外研究现状21.3主要研究内容3第2章系统的总体结构42.1总体方案设计42.2功能需求分析42.2.1技术路线42.3单片机型号选择5第3章系统的硬件部分设计63.1系统总体设计63.2系统的主要功能模块设计63.2.1蜂鸣器电路模块设计63.2.2YX4055AM驱动电路模块设计73.2.3按键电路模块设计73.2.4颜色识别传感器模块设计83.
- 【STM32】智能避障红外小车
Alioooooooon
嵌入式stm32单片机嵌入式硬件
文章目录直流电机`motor.c/motor.h`红外对管红外循迹利用脉冲宽度调制技术(PWM)控制电机转速避障`red.c/red.h`编译环境:keil5SourceInsightSTM32F103X原理图:直流电机直流电机的原理:通电就会转,反向通电就会反转两极的电势差决定转速电机驱动模块以及接线参考图示代码实现:motor.c/motor.h#ifndef__MOTOR_H__#defin
- stlink is not in the dfu mode,please restart it
litvm
bug解决经验分享
问题:Keil中使用stlink烧录代码时,提示需要更新驱动,点击更新后,提示:“STLINKisnotintheDFUmodeplesserestartit”,重新拔插之后,还是同样的问题解决方法:stlink已经连接了STM32F103(VCC,GND,SWCLK,SWDIO四个引脚),在连接状态下,插入电脑进行更新是不行的,也就是所谓的notinthedfumode。只需要把stlink与S
- 使用定时器中断进行延时,取代delay,不影响主流程的运行
litvm
bug解决经验分享单片机嵌入式硬件
在单片机开发中,我们经常会用到延时函数-delay();比如LED的闪烁、ADC采集、向其他设备发送指令后等待回复数据等等,应用非常广泛,也很好用。但它也有一个致命的缺点——死等,举个例子,一个工程中有A、B、C三个任务,如果是裸机开发,不考虑中断的话,它会按while(1)中固定的顺序去执行。由于任务需要,B中会经常delay_ms(500);,那么在delay过程中,整个程序都会在B中等待50
- MCS51指令系统及汇编程序设计
cxz204986
51单片机
一、MSC--51指令系统包含111条基本指令。指令:是CPU按照人的意图来完成某种操作的命令,它以英文名称或缩写形式作为助记符。掌握MCS-51汇编语言指令是51单片机汇编设计程序的基础。按所占字节分,MCS-51指令分三种:(1)单字节指令49条:(2)双字节指令45条;(3)三字节指令17条。按执行时间分,MCS-51指令分三种:(1)1个机器周期指令64条;(2)2个机器周期指令45条;(
- HAL库中使用空闲中断+DMA接收数据,接收失败的问题
litvm
bug解决bugHAL库
问题:串口屏与单片机通过串口(USART1)进行通信,调试时发现问题,现象如下:手动页面的几个文本,输入的数字不会显示出来,比如初始值为0,输入200,200会一闪而过,又恢复到0。检查了页面ID和文本ID,单片机解析的函数都没有问题。①连接上调试器时,文本输入、显示非常正常。②不接调试器时,文本输入、显示时而正常,时而有问题。解决:1,不知道哪里的原因,接上调试器时又运行正常,没法调试。所以只能
- 基于STC89C52的8255并行口拓展实验
@小张要努力
mongodb数据库学习单片机proteus嵌入式硬件51单片机
摘要本文围绕基于STC89C52单片机的8255并行口扩展实验展开,详细阐述实验原理、硬件设计、软件编程及Proteus仿真实现过程。通过扩展8255芯片,实现单片机I/O口资源的灵活应用,完成对LED阵列的控制,验证8255并行口扩展在单片机系统中的实用性,为单片机外围接口扩展应用提供实践参考。一、引言STC89C52作为经典的51系列单片机,在工业控制、嵌入式系统等领域应用广泛。然而,其内部I
- STM32:关于NVIC的工作与优先级分组方式
sewinger
stm32学习笔记单片机嵌入式硬件stm32
一,NVIC是什么NVIC,全称是NestedVectoredInterruptController,即嵌套向量中断控制器。它是ARMCortex-M系列处理器内核的一个重要组成部分,主要用于管理中断请求,协调中断的优先级,以及控制中断的嵌套执行,使得处理器能够高效、有序地响应和处理多个中断源。这个名称是如何体现的,下面一一说明。二,“嵌套”体现在哪?NVIC的嵌套体现在它能够处理多个中断的嵌套执
- 于STM32F103C8T6的智能灯泡控制系统C++源码实现
程序员Thomas
STM32单片机智能灯泡stm32c++嵌入式硬件
以下是一个基于STM32F103C8T6的智能灯泡控制系统C++源码实现,整合了PWM调光、WiFi控制和环境感知功能。该代码已在STM32CubeIDE中验证,支持直接烧录运行:#include"main.h"#include#include"wifi.h"//LED设备抽象类(3设计)classLEDDevice{protected:TIM_HandleTypeDef*pwmTimer;uin
- 基于STM32的平衡车外设控制应用案例,提供C++源码
程序员Thomas
STM32单片机平衡车stm32c++单片机
基于STM32的平衡车外设控制应用案例**下面是一个使用STM32控制平衡车的简单应用案例,包含姿态传感器读取、电机控制和串口通信功能。主要功能使用MPU6050传感器读取姿态数据使用PID控制器调整平衡车姿态通过串口输出调试信息电机速度控制C++源代码#include"stm32f10x.h"#include//定义常量#definePWM_MIN1000#definePWM_MAX2000#d
- stc89c51单片机音乐盒系统设计_基于单片机STC89C52的数字音乐盒设计
Fax Caelestis
基于单片机STC89C52的数字音乐盒设计1基于单片机STC89C52的数字音乐盒设计一、引言1.1设计的目的通过课程设计,让学生熟悉单片机微机应用系统开发、研制的过程,软硬件设计的工作方法、工作内容、工作步骤。对学生进行基本技能训练,例如:组成系统、编程、调试、查阅资料、焊接电路板等。使学生理论联系实际,提高动手能力和分析问题、解决问题的能力。1.2设计的基本要求(1)利用I/O口产生一定频率的
- 基于 STC89C52 的 8x8 点阵显示数字
@小张要努力
单片机嵌入式硬件stm3251单片机proteus
一、引言在电子设计领域,信息的有效展示是众多项目的关键环节。8x8点阵作为一种经济且实用的显示模块,能够呈现数字、简单字母及图形等信息,在电子时钟、简易游戏机等产品中广泛应用。STC89C52单片机凭借其低成本、丰富的I/O资源与稳定的性能,成为驱动8x8点阵的理想选择。本文将深入探讨如何利用STC89C52单片机结合74LS245芯片,实现8x8点阵的数字显示功能,并借助Proteus软件进行仿
- 基于 STC89C52 的智能秒表
@小张要努力
单片机stm3251单片机proteusmcuc++c语言
引言秒表作为一种常见的计时工具,在体育赛事、实验测量等众多场景中有着广泛应用。随着电子技术的发展,基于单片机的智能秒表凭借其高精度、多功能等优势逐渐取代传统机械秒表。本文将详细介绍一款基于STC89C52单片机的智能秒表设计,该秒表通过两位数码管进行时间显示。STC89C52单片机特性回顾STC89C52是一款性能卓越的8位CMOS微控制器。它拥有8K字节的系统可编程Flash存储器,可方便地存储
- stm32-定时器
Amy.com
stm32嵌入式硬件单片机
一、定时器PLL锁相环:作用是倍频prescale:降频2440芯片定时器配置2.代码:t&=~((0xff<<12)|(0x3f<<4)|(3<<0));t|=(127<<12);t|=(2<<4);t|=(1<<0);CLKDIVN|=(2<<1)|(1<<0);二、PWM定时器控制寄存器单稳态:执行一次后关闭间隙模式:反复执行
- 多个单片机之间的SPI主从通讯
菜长江
单片机嵌入式硬件
工程文件链接:链接:https://pan.baidu.com/s/1RXp9lw2ZqyglQSwKnw7Siw?pwd=6666提取码:6666工程里面有很多例子都是看B站视频手打的(这次代码只用到了YJSPI文件夹下面的.C和.H文件其余可以忽略),只是验证通讯和配置一,概述1.因为工作是从事PCBA测试软件开发的(上位机),之前做过的很多项目都是一个单片机完成所有功能,做了有段时间了无非就
- stm32定时器实现 微秒延时
随风飘零翼
stm32stm32单片机嵌入式硬件
Cubemx配置图初始化无需使能定时器中断。代码如下:voiddelay_us(uint16_tus){uint16_tdiffer=0xffff-us-5;__HAL_TIM_SET_COUNTER(&htim17,differ);//清空定时器17HAL_TIM_Base_Start(&htim17);//启动定时器while(differ<0xffff-5){//计算differ=__HAL
- H743定时器输出PWM波方法(基于STM32CubeMX)
NW嵌入式开发
单片机开发stm32定时器PWM模式
0工具准备1.STM32CubeMX2.《STM32H743参考手册中文版》3.《stm32h743xi数据手册》1前言本文介绍基于STM32CubeMX,使用stm32h743xi,使用TIM15的通道2输出PWM波的方法。2H743定时器输出PWM波方法(基于STM32CubeMX)《STM32H743参考手册中文版》对PWM模式的描述如下:其中,有关PWM模式1和模式2的介绍见TIM15_C
- STM8L1xx利用定时器实现毫秒和微妙延时
荣070214
STM8单片机单片机毫秒和微妙延时
采用单片机的定时计数器进行毫秒和微妙级延时,精度较准。检测溢出时产生的标志位来判断延时到达。下面以STM8L101芯片为例及配合代码说明。一、实现原理:1、初始化Timer2时钟源(附上相应代码)voidTIM2Init(void){TIM2_DeInit();CLK_PeripheralClockConfig(CLK_Peripheral_TIM2,ENABLE);TIM2->CR1&=((ui
- 入门级带你实现一个安卓智能家居APP(2)kotlin版本
一粒程序米
androidkotlin智能家居WiFi单片机
前言上一篇写过java版本的实现,这一篇就写一下kotlin版本的吧。效果展示本APP是通过tcp/ip协议与连了WiFi的单片机通信。其实除了主活动类和新建项目时有一丢丢不同,其他的都是一样的哈~第一步:你得会一点点kotlin基础,建议看一本书,是郭霖大神些的《第一行代码》第三版,里面除了安卓的基础教学,还有kotlin的。第二步:建议看一本书,是郭霖大神些的《第一行代码》,先入门安卓基础。不
- 如何一键修改MDK代码风格以及error in include chain (cmsis_armcc.h): expected identfieror报错解决方法
superior tigre
单片机单片机stm32嵌入式硬件
目录一、修改MDK代码风格的两种方法1.直接设置2.替换global.prop文件,一键设置二、errorinincludechain(xxxxxxx.h):expectedidentfieror等报错的解决方法一、修改MDK代码风格的两种方法最近在学习某原子stm32的HAL库视频,被教学代码的风格深深吸引,感觉keil默认代码风格是越看越别扭,所以决定自己修改一下代码的格式,总结了两种方法,这
- 【江协STM32】11-2/3 W25Q64简介、软件SPI读写W25Q64
冰糖雪莲IO
stm32嵌入式硬件单片机
1.W25Q64简介W25Qxx系列是一种低成本、小型化、使用简单的非易失性存储器,常应用于数据存储、字库存储、固件程序存储等场景存储介质:NorFlash(闪存)时钟频率:80MHz/160MHz(DualSPI)/320MHz(QuadSPI)存储容量(24位地址):W25Q40:4Mbit/512KByteW25Q80:8Mbit/1MByteW25Q16:16Mbit/2MByteW25Q
- STM32F103C8T6点灯/流水灯(指定IO,正向反向)
BDXiaotianYA
stm32嵌入式硬件单片机
参加2023年电赛后,到现在上班一年多,长达两年时间内,几乎没有再碰过单片机,由于现在工作中需要接触到一些代码,先退回来复习下32单片机。本人在此做一件事情,傻瓜式代码,让代码足够简洁,足够规范,让你复制我的代码百分百能够使用。此账号仅作为分享本人复习过程中记录使用,如果无法使用,或者或者有优化的地方,欢迎留言,看到后第一时间给予回复。有空会将2023激光打靶代码开源出来。在使用本程序的时候,默认
- STM32八股【2】-----ARM架构
Invinciblenuonuo
stm32arm开发架构
1、架构包含哪几部分内容寄存器处理模式流水线MMU指令集中断FPU总线架构2、以STM32为例进行介绍2.1寄存器寄存器名称作用R0-R3通用寄存器用于数据传递、计算及函数参数传递;R0也用于存储函数返回值。R4-R12通用寄存器用于存储局部变量,减少频繁的内存访问。R13栈指针(SP)指向当前栈顶,负责管理栈操作。分为主栈指针(MSP)和进程栈指针(PSP):系统中断处理和普通任务可以使用不同的
- STM32八股【1】-----启动流程和startup文件理解
Invinciblenuonuo
stm32arm
启动流程知识点MCU上电复位。MSP从向量表第0个地址读取一个32位(2字节)的值并保存,该值为栈顶地址。PC计数器从第1个地址读取一个两字节的值并保存,该值为程序入口,一般是Reset_Handler。想了解FLASH地址映射可以看STM32八股【4】-----AHB地址映射__VectorsDCD__initial_sp;TopofStackDCDReset_Handler;ResetHand
- 解决stm32引脚如果选择输入模式
雁过留声花欲落
单片机嵌入式硬件
1.输入模式分类STM32的GPIO输入模式主要分为以下四种:浮空输入(FloatingInput/InputFloating)上拉输入(InputPull-Up)下拉输入(InputPull-Down)模拟输入(AnalogInput)2.各模式详解(1)浮空输入(FloatingInput)电路结构:引脚内部不连接上拉或下拉电阻,完全由外部电路决定电平状态。等效电路:引脚直接连接施密特触发器(
- STM32八股【3】------RAM和片上FLASH
Invinciblenuonuo
stm32嵌入式硬件单片机
1、RAM和FLASH构成1.RAM┌──────────────────────────┐│栈区(Stack)│←从RAM顶端向下扩展(存储局部变量、函数调用信息)│--------------------------││堆区(Heap)│←从.bss段底部向上扩展(动态分配的内存,如malloc)│--------------------------││.bss未初始化数据区│←未初始化的全局
- HQL之投影查询
归来朝歌
HQLHibernate查询语句投影查询
在HQL查询中,常常面临这样一个场景,对于多表查询,是要将一个表的对象查出来还是要只需要每个表中的几个字段,最后放在一起显示?
针对上面的场景,如果需要将一个对象查出来:
HQL语句写“from 对象”即可
Session session = HibernateUtil.openSession();
- Spring整合redis
bylijinnan
redis
pom.xml
<dependencies>
<!-- Spring Data - Redis Library -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redi
- org.hibernate.NonUniqueResultException: query did not return a unique result: 2
0624chenhong
Hibernate
参考:http://blog.csdn.net/qingfeilee/article/details/7052736
org.hibernate.NonUniqueResultException: query did not return a unique result: 2
在项目中出现了org.hiber
- android动画效果
不懂事的小屁孩
android动画
前几天弄alertdialog和popupwindow的时候,用到了android的动画效果,今天专门研究了一下关于android的动画效果,列出来,方便以后使用。
Android 平台提供了两类动画。 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变)。
第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。
- js delete 删除机理以及它的内存泄露问题的解决方案
换个号韩国红果果
JavaScript
delete删除属性时只是解除了属性与对象的绑定,故当属性值为一个对象时,删除时会造成内存泄露 (其实还未删除)
举例:
var person={name:{firstname:'bob'}}
var p=person.name
delete person.name
p.firstname -->'bob'
// 依然可以访问p.firstname,存在内存泄露
- Oracle将零干预分析加入网络即服务计划
蓝儿唯美
oracle
由Oracle通信技术部门主导的演示项目并没有在本月较早前法国南斯举行的行业集团TM论坛大会中获得嘉奖。但是,Oracle通信官员解雇致力于打造一个支持零干预分配和编制功能的网络即服务(NaaS)平台,帮助企业以更灵活和更适合云的方式实现通信服务提供商(CSP)的连接产品。这个Oracle主导的项目属于TM Forum Live!活动上展示的Catalyst计划的19个项目之一。Catalyst计
- spring学习——springmvc(二)
a-john
springMVC
Spring MVC提供了非常方便的文件上传功能。
1,配置Spring支持文件上传:
DispatcherServlet本身并不知道如何处理multipart的表单数据,需要一个multipart解析器把POST请求的multipart数据中抽取出来,这样DispatcherServlet就能将其传递给我们的控制器了。为了在Spring中注册multipart解析器,需要声明一个实现了Mul
- POJ-2828-Buy Tickets
aijuans
ACM_POJ
POJ-2828-Buy Tickets
http://poj.org/problem?id=2828
线段树,逆序插入
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>using namespace std;#define N 200010struct
- Java Ant build.xml详解
asia007
build.xml
1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台 --因为ant是使用java实现的,所以它跨平台使用简单--与ant的兄弟make比起来语法清晰--同样是和make相比功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有
- android按钮监听器的四种技术
百合不是茶
androidxml配置监听器实现接口
android开发中经常会用到各种各样的监听器,android监听器的写法与java又有不同的地方;
1,activity中使用内部类实现接口 ,创建内部类实例 使用add方法 与java类似
创建监听器的实例
myLis lis = new myLis();
使用add方法给按钮添加监听器
- 软件架构师不等同于资深程序员
bijian1013
程序员架构师架构设计
本文的作者Armel Nene是ETAPIX Global公司的首席架构师,他居住在伦敦,他参与过的开源项目包括 Apache Lucene,,Apache Nutch, Liferay 和 Pentaho等。
如今很多的公司
- TeamForge Wiki Syntax & CollabNet User Information Center
sunjing
TeamForgeHow doAttachementAnchorWiki Syntax
the CollabNet user information center http://help.collab.net/
How do I create a new Wiki page?
A CollabNet TeamForge project can have any number of Wiki pages. All Wiki pages are linked, and
- 【Redis四】Redis数据类型
bit1129
redis
概述
Redis是一个高性能的数据结构服务器,称之为数据结构服务器的原因是,它提供了丰富的数据类型以满足不同的应用场景,本文对Redis的数据类型以及对这些类型可能的操作进行总结。
Redis常用的数据类型包括string、set、list、hash以及sorted set.Redis本身是K/V系统,这里的数据类型指的是value的类型,而不是key的类型,key的类型只有一种即string
- SSH2整合-附源码
白糖_
eclipsespringtomcatHibernateGoogle
今天用eclipse终于整合出了struts2+hibernate+spring框架。
我创建的是tomcat项目,需要有tomcat插件。导入项目以后,鼠标右键选择属性,然后再找到“tomcat”项,勾选一下“Is a tomcat project”即可。具体方法见源码里的jsp图片,sql也在源码里。
补充1:项目中部分jar包不是最新版的,可能导
- [转]开源项目代码的学习方法
braveCS
学习方法
转自:
http://blog.sina.com.cn/s/blog_693458530100lk5m.html
http://www.cnblogs.com/west-link/archive/2011/06/07/2074466.html
1)阅读features。以此来搞清楚该项目有哪些特性2)思考。想想如果自己来做有这些features的项目该如何构架3)下载并安装d
- 编程之美-子数组的最大和(二维)
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
import java.util.Random;
public class MaxSubArraySum2 {
/**
* 编程之美 子数组之和的最大值(二维)
*/
private static final int ROW = 5;
private stat
- 读书笔记-3
chengxuyuancsdn
jquery笔记resultMap配置ibatis一对多配置
1、resultMap配置
2、ibatis一对多配置
3、jquery笔记
1、resultMap配置
当<select resultMap="topic_data">
<resultMap id="topic_data">必须一一对应。
(1)<resultMap class="tblTopic&q
- [物理与天文]物理学新进展
comsci
如果我们必须获得某种地球上没有的矿石,才能够进行某些能量输出装置的设计和建造,而要获得这种矿石,又必须首先进行深空探测,而要进行深空探测,又必须获得这种能量输出装置,这个矛盾的循环,会导致地球联盟在与宇宙文明建立关系的时候,陷入困境
怎么办呢?
 
- Oracle 11g新特性:Automatic Diagnostic Repository
daizj
oracleADR
Oracle Database 11g的FDI(Fault Diagnosability Infrastructure)是自动化诊断方面的又一增强。
FDI的一个关键组件是自动诊断库(Automatic Diagnostic Repository-ADR)。
在oracle 11g中,alert文件的信息是以xml的文件格式存在的,另外提供了普通文本格式的alert文件。
这两份log文
- 简单排序:选择排序
dieslrae
选择排序
public void selectSort(int[] array){
int select;
for(int i=0;i<array.length;i++){
select = i;
for(int k=i+1;k<array.leng
- C语言学习六指针的经典程序,互换两个数字
dcj3sjt126com
c
示例程序,swap_1和swap_2都是错误的,推理从1开始推到2,2没完成,推到3就完成了
# include <stdio.h>
void swap_1(int, int);
void swap_2(int *, int *);
void swap_3(int *, int *);
int main(void)
{
int a = 3;
int b =
- php 5.4中php-fpm 的重启、终止操作命令
dcj3sjt126com
PHP
php 5.4中php-fpm 的重启、终止操作命令:
查看php运行目录命令:which php/usr/bin/php
查看php-fpm进程数:ps aux | grep -c php-fpm
查看运行内存/usr/bin/php -i|grep mem
重启php-fpm/etc/init.d/php-fpm restart
在phpinfo()输出内容可以看到php
- 线程同步工具类
shuizhaosi888
同步工具类
同步工具类包括信号量(Semaphore)、栅栏(barrier)、闭锁(CountDownLatch)
闭锁(CountDownLatch)
public class RunMain {
public long timeTasks(int nThreads, final Runnable task) throws InterruptedException {
fin
- bleeding edge是什么意思
haojinghua
DI
不止一次,看到很多讲技术的文章里面出现过这个词语。今天终于弄懂了——通过朋友给的浏览软件,上了wiki。
我再一次感到,没有辞典能像WiKi一样,给出这样体贴人心、一清二楚的解释了。为了表达我对WiKi的喜爱,只好在此一一中英对照,给大家上次课。
In computer science, bleeding edge is a term that
- c中实现utf8和gbk的互转
jimmee
ciconvutf8&gbk编码
#include <iconv.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <sys/stat.h>
int code_c
- 大型分布式网站架构设计与实践
lilin530
应用服务器搜索引擎
1.大型网站软件系统的特点?
a.高并发,大流量。
b.高可用。
c.海量数据。
d.用户分布广泛,网络情况复杂。
e.安全环境恶劣。
f.需求快速变更,发布频繁。
g.渐进式发展。
2.大型网站架构演化发展历程?
a.初始阶段的网站架构。
应用程序,数据库,文件等所有的资源都在一台服务器上。
b.应用服务器和数据服务器分离。
c.使用缓存改善网站性能。
d.使用应用
- 在代码中获取Android theme中的attr属性值
OliveExcel
androidtheme
Android的Theme是由各种attr组合而成, 每个attr对应了这个属性的一个引用, 这个引用又可以是各种东西.
在某些情况下, 我们需要获取非自定义的主题下某个属性的内容 (比如拿到系统默认的配色colorAccent), 操作方式举例一则:
int defaultColor = 0xFF000000;
int[] attrsArray = { andorid.r.
- 基于Zookeeper的分布式共享锁
roadrunners
zookeeper分布式共享锁
首先,说说我们的场景,订单服务是做成集群的,当两个以上结点同时收到一个相同订单的创建指令,这时并发就产生了,系统就会重复创建订单。等等......场景。这时,分布式共享锁就闪亮登场了。
共享锁在同一个进程中是很容易实现的,但在跨进程或者在不同Server之间就不好实现了。Zookeeper就很容易实现。具体的实现原理官网和其它网站也有翻译,这里就不在赘述了。
官
- 两个容易被忽略的MySQL知识
tomcat_oracle
mysql
1、varchar(5)可以存储多少个汉字,多少个字母数字? 相信有好多人应该跟我一样,对这个已经很熟悉了,根据经验我们能很快的做出决定,比如说用varchar(200)去存储url等等,但是,即使你用了很多次也很熟悉了,也有可能对上面的问题做出错误的回答。 这个问题我查了好多资料,有的人说是可以存储5个字符,2.5个汉字(每个汉字占用两个字节的话),有的人说这个要区分版本,5.0
- zoj 3827 Information Entropy(水题)
阿尔萨斯
format
题目链接:zoj 3827 Information Entropy
题目大意:三种底,计算和。
解题思路:调用库函数就可以直接算了,不过要注意Pi = 0的时候,不过它题目里居然也讲了。。。limp→0+plogb(p)=0,因为p是logp的高阶。
#include <cstdio>
#include <cstring>
#include <cmath&