*scanf函数的返回值是int型,表示正确输入的个数第5章选择结构程序设计1.关系运算符和关系表达式6种关系运算符:,>=,==,!=if关系运算符里的判断标准:非零即为真关系表达式这样使用“a
嵌入式学习Day6
Breeze0508
学习嵌入式linux
条件表达式(三目运算符形式)1?2:3若1为真,结果为2;若1为假,结果为3第六章循环控制1.goto语句格式:goto语句标号;goto语句是无条件跳转语句,但跳转位置要求必须在本函数以内*对于循环结构来说,必须包含以下三点:1)进入循环之前,必须进行循环变量初始化2)要有循环的执行条件3)使循环趋于结束的语句goto语句目前普遍禁止使用2.while循环(常用)格式:while(逻辑或关系表达
嵌入式学习Day4
gcc-oappmain.c为编译输出文件命名为app10.逗号运算符和逗号表达式逗号表达式的结果由最后一个逗号之后的结果决定第4章顺序程序设计#开头的都为预处理命令1.C语句分为以下5类(1)控制语句(2)函数调用语句(3)表达式语句(4)空语句(5)复合语句2.数据输入输出以计算机主体而言,从计算机向外部输出设备输出数据称为输出,从输入设备向计算机输入数据称为输入。1)putchar(输出字符
嵌入式学习-PyTorch(8)-day24
LGGGGGQ
学习pytorch深度学习
torch.optim优化器torch.optim是PyTorch中用于优化神经网络参数的模块,里面实现了一系列常用的优化算法,比如SGD、Adam、RMSprop等,主要负责根据梯度更新模型的参数。️核心组成1.常用优化器优化器作用典型参数torch.optim.SGD标准随机梯度下降,支持momentumlr,momentum,weight_decaytorch.optim.Adam自适应学习
嵌入式学习-PyTorch(3)-day20
LGGGGGQ
学习pytorch人工智能
transforms结构及用法transforms.yp是一个工具箱就是将一个特定格式的图片经过这个工具的到想要的变换Tensor数据类型一、transforms的使用(Python)fromPILimportImagefromtorch.utils.tensorboardimportSummaryWriterfromtorchvisionimporttransformswriter=Summar
嵌入式学习-PyTorch(4)-day21
LGGGGGQ
学习
1、torchvision中数据集的使用认识官方的一些数据集Datasets—Torchvision0.22documentation试了一下CIFAR10数据集,知道了如何下载官方数据集和展示他们去tensorboard中importtorchvisionfromtorch.utils.tensorboardimportSummaryWriter#处理数据集dataset_transform=t
嵌入式学习C语言(十五)指针函数 动态内存分配 函数指针 指针数组 指针指针
皮蛋sol周
学习c语言算法排序算法
目录一、指针函数二、动态内存分配malloc函数free函数realloc函数calloc函数reallocarray函数三、函数指针qsort函数四、指针数组五、指针的指针六、两句话技巧一、指针函数1.返回值为指针的函数,不能返回局部变量的地址,全局变量、静态变量与传进去的指针地址均可返。二、动态内存分配malloc函数1.void*malloc(size_tsize);2.size_tunsi
嵌入式学习-Day6
不想学习\??!
学习
c语言day6模拟获取co2,pm2.5的数值,并对co2的浓度,pm2.5的浓度做出划分,详情划分在代码注释首先写写出模拟获取数值的函数,但是由于要对浓度划分,所以先枚举出来等级划分typedefenum{Excellent,//默认0往下递增Good,Average,Poor}QualityLevel;接着写出模拟获取co2函数(在这里用到了static关键字,静态函数能够确保只在co2的c文
嵌入式学习-Day8
不想学习\??!
学习
c语言day8通过过指针来访问寄存器#defineGPIO_CTLO((uint32_t*)0x40012000)GPIO_CTLO=0XFFFFFFFF;0x40012000是一个十六进制数值,此时编译器不认为他是一个地址通过强制转换,让编译器认为他是一个地址,(uint32_t*)0x40012000此时可以将0x40012000理解为定义指针变量时,uint32_t*p中的p*((uint3
嵌入式学习之Linux入门篇笔记——8,Linux帮助手册讲解
玄奕子
嵌入式学习之Linux入门篇linux学习笔记ubuntu
配套视频学习链接:http://【【北京迅为】嵌入式学习之Linux入门篇】https://www.bilibili.com/video/BV1M7411m7wT/?p=4&share_source=copy_web&vd_source=a0ef2c4953d33a9260910aaea45eaec81.Linux帮助手册使用man命令打开,使用手册一共有九页。(按Q退出帮助手册)1.可执行的程序
嵌入式学习日志(八)
8学习函数1函数核心知识1.1函数基础与设计价值1.本质与入口:程序从main函数启动,函数是构建程序功能的基本单元,实现“从无到有”的功能拆分。2.设计意义:降低耦合性(功能模块独立,关联少)、提升复用性(代码可重复调用)。voidprtchar();是声明(告知编译器存在此函数,未定义实现),区别于函数定义(含具体逻辑)。1.2函数定义规则1.定义限制:函数不可嵌套定义(函数内部不能再定义新函
stm32二级菜单
oled是嵌入式学习中必不可少的显示器,但是往往显示的内容有限,有时候又需要进行多层显示,比如24年的电赛小车题,一共四问,这时候就可以使用二级菜单,在第一级菜单中显示每一问,再分别掉进各自的二级菜单中对pid进行调节,话不读书直接上代码intmenu1(void){uint8_tKeyNum=0;int8_toled1_display_mdoe=1;OLED_ShowString(0,0,"di
嵌入式学习 51单片机01
c6lala
学习51单片机嵌入式硬件
一、框架1、CPU(CentralProcessingUnit,中央处理单元)是计算机的核心部件,负责执行计算机指令和处理数据。2、MCU(MicrocontrollerUnit,微控制单元)是一种将中央处理器、内存、输入输出接口等多种功能模块集成在单一芯片上的微型计算机系统。(特殊的CPU重视对外摄的控制而非数据的处理)3、MPU(MicroprocessorUnit,微处理器单元)是一种
嵌入式学习-暑假学习总规划-day6
此文章为本人暑期学习计划,目标是在暑假学习吴恩达的机器学习,pytorch的使用,yolov8的使用,STM32的开发。在八月底九月初的总目标是在单片机上部署一个关于计算机视觉的轻量化AI。时间段学习任务目标成果6月17日-6月30日吴恩达监督学习课程含线性回归、逻辑回归、神经网络基础完成课程视频+习题,理解训练流程、损失函数、过拟合、正则化7月1日-7月10日PyTorch框架入门学习张量、自动
嵌入式学习笔记 - SH79F6441串口初始化时为什么TX必须输出高
Lester_1101
学习笔记单片机
SH79F6441串口初始化时TX引脚必须输出高电平,这是由UART通信协议规范决定的,主要原因如下:1.空闲状态定义UART协议规定:空闲状态(无数据传输时)的TX线必须保持高电平(逻辑1)若空闲状态为低电平,那么会被接收方误判为起始位,造成通信错误。2.起始位的识别机制接收端通过检测TX线的下降沿(高→低跳变)来判断数据帧起始若初始化时TX为低电平(上电瞬间会被误判为起始位),接收端
【开源推荐】嵌入式软件开发学习路线全景图:从裸机到 RTOS,再到嵌入式 Linux(附涵超全电子书资源以及面经资料)
Natsume1710
开源学习linux
本文将系统介绍一个适合初学者&进阶者的嵌入式开发学习开源项目,涵盖C语言、驱动开发、RTOS、嵌入式Linux、物联网通信等核心内容,特别适合电赛、毕设、面试准备和入行工程师使用。一、为什么推荐这个项目?嵌入式学习门槛高、知识零散,这是大多数学习者面临的第一大难题。GitHub项目0voice/EmbeddedSoftwareLearn是由国内技术社区整理并维护的开源仓库,它将整个嵌入式学习路径从
从STM32到NXP:GPIO就像装修房子,多了个“智能开关”
【云轩】
NXPstm32嵌入式硬件单片机
点击下面图片带您领略全新的嵌入式学习路线爆款热榜88万+阅读1.6万+收藏想象一下:STM32的GPIO是个精装房,所有开关都在墙上;而NXP的GPIO是毛坯房,需要先装一个智能配电箱(IOMUX)才能控制灯光!一、STM32:精装房的开关(简单直接)在STM32中,配置一个LED灯只需两步:选灯的位置:比如客厅顶灯(GPIOA_Pin5)直接按开关://相当于按下墙上的开关HAL_GPIO_Wr
嵌入式学习(基本操作)day1
生涯にわたる学び
学习linux
C语言基础一:基本命令行一:绝对路径和相对路径1.凡是/开头的,统统认为都是绝对路径含义:参考起点是根目录2.凡是不以/开头的,统统认为都是相对路径含义:参考起点是当前位置二:cd~(本质就是回家)1.就是/Linux/home//当前用户的主目录(家目录)//每个用户在自己的家目录中拥有最大权限2.直接cd也是一样的(回家)三:cd-(返回上一次目录)1.cd..返回上一级目录(和cd-分开)2
嵌入式学习笔记 - freeRTOS关于空闲任务的理解
Lester_1101
嵌入式stm32
由于freeRTOS的任务延时都是阻塞延时,阻塞延时是当任务进入延时后,该任务的CPU使用权被剥夺进入阻塞状态(阻塞状态可以理解为保持状态不变),可以理解为任务不运行时PC停止了。使用阻塞延时的好处就是可以让CPU充分的得到利用,不会空耗在软件延时上。但是所有任务都处在阻塞延时时,相当于PC停止了,很明显这是不合理的,而且会产生硬件错误,所以会有一个空闲任务,作为保底空闲任务的优先级是最低的。而且
嵌入式学习Day31---Linux软件编程---网络编程
踢球的程序猿
网络linux
目录一、网络基本概念1.1.协议1.2.国际网络通信协议标准1.OSI协议2.TCP/IP协议(现在常用)1.应用层2.传输层1)UDP(用户数据报协议)2)TCP(传输控制协议)3)端口号:找到同一台主机不同的应用程序;3.网络层1)IP地址分类2)MAC地址:设备自带网卡的地址(该地址是唯一的);1.3.命令1.ifconfig2.将虚拟机的网络IP设置为桥接模式二、UDP编程2.1.套接字1
嵌入式学习DAY32---Linux软件编程---网络编程
踢球的程序猿
学习网络linux
目录一、抓包软件的使用1.1.wireshark1.作用1.2.UDP包头二、TCP编程2.1.发送信息1.创建套接字2.配置目的对象信息3.将自己的端口和ip和套接字绑定4.建立连接5.发消息6.关闭套接字2.2.接收消息1.创建套接字2.配置自己的信息并将自己的端口和ip和套接字绑定3.检测连接4.处理链接5.接收消息6.关闭连接和套接字三、总结一、抓包软件的使用1.1.wireshark1.
嵌入式学习笔记——ROM、RAM、FLASH
CrasenTry
学习笔记
主要是从下面链接整理的笔记学习链接:ROM、RAM、SRAM、DRAM、FLASH区别(转载+梳理)_存储器分类sramdramflash-CSDN博客ROM、RAM、DRAM、SRAM、SDRAM_romramdramsdram-CSDN博客RAM和ROM都是半导体存储器。ROM(ReadOnlymemory)只读存储器,掉电时可以保存数据,在单片机中用作存储代码和常量等。种类:1.PROM:可
嵌入式学习笔记 - 新版Keil软件模拟时钟Xtal灰色不可更改的问题
Lester_1101
学习笔记单片机
在新版Keil软件中,模拟时钟无法修改XTAL频率,默认只能使用12MHz时钟。这是因为KeilMDK从5.36版本开始,参数配置界面不再支持修改系统XTAL频率,XTAL选项变为灰色,无法修改。这会导致在软件仿真时出现时间错误的问题,特别是对于调试实时操作系统(RTOS)来说非常不便。目前得知的解决办法只能使用默认的12MHz时钟进行调试:由于Keil软件默认使用12MHz时钟,可以直接使
单片机开发中,如何在断电前保存数据到dataflash?
小熊网络编程
单片机51单片机嵌入式硬件stm32linux
在单片机开发中,保存数据到DataFlash(数据闪存)是一项常见任务,尤其是在断电前需要保留重要数据时。我收集归类了一份嵌入式学习包,对于新手而言简直不要太棒,里面包括了新手各个时期的学习方向编程教学、问题视频讲解、毕设800套和语言类教学,敲个22就可以免费获得。下面是一个通用的步骤和方法说明:步骤和方法。选择合适的DataFlash:确保选择的DataFlash具有足够的存储容量和写入速度,
嵌入式学习笔记 - 关于ARM编辑器compiler version 5 and compiler version 6
Lester_1101
学习笔记arm开发
KEIL中关于ARM编译器是可选的,如下图,默认是最新版本,可以下载旧版本并放置到KEIL安装根目录下就可以在此处出现可选项。一关于ARM编译器compilerversion5和compilerversion6的区别,以下是deepseek的回答:ARMCompiler5(AC5)与ARMCompiler6(AC6)的主要区别体现在以下方面:一、编译架构差异AC5:基于传统编译器架构,优化策略
《嵌入学习入门资源整合篇——从工具到实践的系统化进阶手册》
潇晓周
学习机器人物联网自动化单片机stm32硬件工程
目录#前言:#嵌入式介绍#嵌入式学习要求#大家最关心的干货软件设计要点:学好C语言编程硬件设计要点:学好Layout(布局)3D建模要点:学好机械设计#学习资源#总结#前言:欢迎来到嵌入式开发新手村,这里将提供嵌入式所需软件下载链接和一些开发工具名称(包括硬件设计和软件编程)以及b站相关配套教学视频,帮助大家快速打破信息差。(仅供大家入门嵌入式)本人大学生在读,向大家分享的嵌入式学习所需要的一些工
mondb入手
木zi_鸣
mongodb
windows 启动mongodb 编写bat文件,
mongod --dbpath D:\software\MongoDBDATA
mongod --help 查询各种配置
配置在mongob
打开批处理,即可启动,27017原生端口,shell操作监控端口 扩展28017,web端操作端口
启动配置文件配置,
数据更灵活 
大型高并发高负载网站的系统架构
bijian1013
高并发负载均衡
扩展Web应用程序
一.概念
简单的来说,如果一个系统可扩展,那么你可以通过扩展来提供系统的性能。这代表着系统能够容纳更高的负载、更大的数据集,并且系统是可维护的。扩展和语言、某项具体的技术都是无关的。扩展可以分为两种:
1.
DISPLAY变量和xhost(原创)
czmmiao
display
DISPLAY
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:DISPLAY=:0.0
获取B/S客户端IP
周凡杨
java编程jspWeb浏览器
最近想写个B/S架构的聊天系统,因为以前做过C/S架构的QQ聊天系统,所以对于Socket通信编程只是一个巩固。对于C/S架构的聊天系统,由于存在客户端Java应用,所以直接在代码中获取客户端的IP,应用的方法为:
String ip = InetAddress.getLocalHost().getHostAddress();
然而对于WEB
浅谈类和对象
朱辉辉33
编程
类是对一类事物的总称,对象是描述一个物体的特征,类是对象的抽象。简单来说,类是抽象的,不占用内存,对象是具体的,
占用存储空间。
类是由属性和方法构成的,基本格式是public class 类名{
//定义属性
private/public 数据类型 属性名;
//定义方法
publ
android activity与viewpager+fragment的生命周期问题
肆无忌惮_
viewpager
有一个Activity里面是ViewPager,ViewPager里面放了两个Fragment。
第一次进入这个Activity。开启了服务,并在onResume方法中绑定服务后,对Service进行了一定的初始化,其中调用了Fragment中的一个属性。
super.onResume();
bindService(intent, conn, BIND_AUTO_CREATE);
base64Encode对图片进行编码
843977358
base64图片encoder
/**
* 对图片进行base64encoder编码
*
* @author mrZhang
* @param path
* @return
*/
public static String encodeImage(String path) {
BASE64Encoder encoder = null;
byte[] b = null;
I
Request Header简介
aigo
servlet
当一个客户端(通常是浏览器)向Web服务器发送一个请求是,它要发送一个请求的命令行,一般是GET或POST命令,当发送POST命令时,它还必须向服务器发送一个叫“Content-Length”的请求头(Request Header) 用以指明请求数据的长度,除了Content-Length之外,它还可以向服务器发送其它一些Headers,如:
HttpClient4.3 创建SSL协议的HttpClient对象
alleni123
httpclient爬虫ssl
public class HttpClientUtils
{
public static CloseableHttpClient createSSLClientDefault(CookieStore cookies){
SSLContext sslContext=null;
try
{
sslContext=new SSLContextBuilder().l
java取反 -右移-左移-无符号右移的探讨
百合不是茶
位运算符 位移
取反:
在二进制中第一位,1表示符数,0表示正数
byte a = -1;
原码:10000001
反码:11111110
补码:11111111
//异或: 00000000
byte b = -2;
原码:10000010
反码:11111101
补码:11111110
//异或: 00000001
java多线程join的作用与用法
bijian1013
java多线程
对于JAVA的join,JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means t
Java发送http请求(get 与post方法请求)
bijian1013
javaspring
PostRequest.java
package com.bijian.study;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURL
【Struts2二】struts.xml中package下的action配置项默认值
bit1129
struts.xml
在第一部份,定义了struts.xml文件,如下所示:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts
【Kafka十三】Kafka Simple Consumer
bit1129
simple
代码中关于Host和Port是割裂开的,这会导致单机环境下的伪分布式Kafka集群环境下,这个例子没法运行。
实际情况是需要将host和port绑定到一起,
package kafka.examples.lowlevel;
import kafka.api.FetchRequest;
import kafka.api.FetchRequestBuilder;
impo
nodejs学习api
ronin47
nodejs api
NodeJS基础 什么是NodeJS
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了docum
java-64.寻找第N个丑数
bylijinnan
java
public class UglyNumber {
/**
* 64.查找第N个丑数
具体思路可参考 [url] http://zhedahht.blog.163.com/blog/static/2541117420094245366965/[/url]
*
题目:我们把只包含因子
2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14
二维数组(矩阵)对角线输出
bylijinnan
二维数组
/**
二维数组 对角线输出 两个方向
例如对于数组:
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 },
slash方向输出:
1
5 2
9 6 3
13 10 7 4
14 11 8
15 12
16
backslash输出:
4
3
[JWFD开源工作流设计]工作流跳跃模式开发关键点(今日更新)
comsci
工作流
既然是做开源软件的,我们的宗旨就是给大家分享设计和代码,那么现在我就用很简单扼要的语言来透露这个跳跃模式的设计原理
大家如果用过JWFD的ARC-自动运行控制器,或者看过代码,应该知道在ARC算法模块中有一个函数叫做SAN(),这个函数就是ARC的核心控制器,要实现跳跃模式,在SAN函数中一定要对LN链表数据结构进行操作,首先写一段代码,把
redis常见使用
cuityang
redis常见使用
redis 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets
引入jar包 jedis-2.1.0.jar (本文下方提供下载)
package redistest;
import redis.clients.jedis.Jedis;
public class Listtest
配置多个redis
dalan_123
redis
配置多个redis客户端
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&quo
attrib命令
dcj3sjt126com
attr
attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
Yii使用公共函数
dcj3sjt126com
yii
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:
<?php /** * This is the shortcut to D
linux 系统资源的查看(free、uname、uptime、netstat)
eksliang
netstatlinux unamelinux uptimelinux free
linux 系统资源的查看
转载请出自出处:http://eksliang.iteye.com/blog/2167081
http://eksliang.iteye.com 一、free查看内存的使用情况
语法如下:
free [-b][-k][-m][-g] [-t]
参数含义
-b:直接输入free时,显示的单位是kb我们可以使用b(bytes),m
JAVA的位操作符
greemranqq
位运算JAVA位移<<>>>
最近几种进制,加上各种位操作符,发现都比较模糊,不能完全掌握,这里就再熟悉熟悉。
1.按位操作符 :
按位操作符是用来操作基本数据类型中的单个bit,即二进制位,会对两个参数执行布尔代数运算,获得结果。
与(&)运算:
1&1 = 1, 1&0 = 0, 0&0 &
Web前段学习网站
ihuning
Web
Web前段学习网站
菜鸟学习:http://www.w3cschool.cc/
JQuery中文网:http://www.jquerycn.cn/
内存溢出:http://outofmemory.cn/#csdn.blog
http://www.icoolxue.com/
http://www.jikexue
强强联合:FluxBB 作者加盟 Flarum
justjavac
r
原文:FluxBB Joins Forces With Flarum作者:Toby Zerner译文:强强联合:FluxBB 作者加盟 Flarum译者:justjavac
FluxBB 是一个快速、轻量级论坛软件,它的开发者是一名德国的 PHP 天才 Franz Liedke。FluxBB 的下一个版本(2.0)将被完全重写,并已经开发了一段时间。FluxBB 看起来非常有前途的,
java统计在线人数(session存储信息的)
macroli
javaWeb
这篇日志是我写的第三次了 前两次都发布失败!郁闷极了!
由于在web开发中常常用到这一部分所以在此记录一下,呵呵,就到备忘录了!
我对于登录信息时使用session存储的,所以我这里是通过实现HttpSessionAttributeListener这个接口完成的。
1、实现接口类,在web.xml文件中配置监听类,从而可以使该类完成其工作。
public class Ses
bootstrp carousel初体验 快速构建图片播放
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
img{
border: 1px solid white;
box-shadow: 2px 2px 12px #333;
_width: expression(this.width > 600 ? "600px" : this.width + "px");
_height: expression(this.width &
SparkSQL读取HBase数据,通过自定义外部数据源
superlxw1234
sparksparksqlsparksql读取hbasesparksql外部数据源
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源
前面文章介绍了SparSQL通过Hive操作HBase表。
SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访
Spring Boot 1.3.0.M1发布
wiselyman
spring boot
Spring Boot 1.3.0.M1于6.12日发布,现在可以从Spring milestone repository下载。这个版本是基于Spring Framework 4.2.0.RC1,并在Spring Boot 1.2之上提供了大量的新特性improvements and new features。主要包含以下:
1.提供一个新的sprin