这是2022年一个全新的专栏,叫互联网冲浪见闻录,其实一开始准备叫互联网冲浪指南,但是我觉得众口难调,可能只写自己的见闻会好很多。
不限于各种新奇好物,也可能会有各种影片推荐,也有可能是一段我对产品的理解,总之我之所见,文中所现。
首先出场的是一个主打长续航的穿越机:
就是这样
电池在上面安装
摄像头位置是打印件
平放
还有这个天线的套管
配置给你撸过来了,如果感兴趣可以自己去看看。3000mAh的电池,怪不得长续航,这个电池估计不便宜呢。。。
自己配置的话,按照自己买一下(可能可以的,算一种方案)
1103
省电的来源是这个小电机,真的很小
比较
你看和这个牛黄上清片的比较,很小。
这里有一个相机是insta360的相机,感觉很有趣,名字叫🥜。
卖1400,卖nm,这么贵,狗不香?
磁吸充电,这个设计好评
surface的初代设计就有这样的设计的了,而且还可以有扩展坞,我这里就不展示了。
一套相机的东西,这里要说是,作为一个完整的产品,其实就像这些供电,安装螺丝什么的一点要给消费者安排上,因为有时候用不了,可能就是一个5快的小东西。而且你也可以把这些东西,单摘出来卖一份套装,为了产品的市场你也可以公布一些接口协议,尺寸,有商家有能力给你的产品做一些副厂产品,这是极好的。
按照这个配置看,还挺强的,就是有点贵
其实可以学习的地方是这个引出一个控制的引脚,方便触发快门,玩出更多的花样。不过我也做了机械触发的东西,也是蛮不错的。而且这个海报的设计也值得学习,小图标,九宫格。
另一块海报
某鱼上面的各种打印件,自己diy可以参考
也有这样的打印方案,支持调节角度
这里给你了打印的尺寸相关
一个串口啥也不做就干了这个。。。真奢侈呢
这是相机的相关参数
相机这行真好,好想入行。。。
Nexus 5
安卓4.4
曾经的5儿子,现在二手的60块钱。。。可以买一个玩的
晓龙800
https://developers.google.com/android/images
nexus 5是Google的亲儿子,so,刷机这块是个不错的练手工具。
可以用到6的系统哦~~~
https://developers.google.com/android/ota
CTRL+F,搜索一下。
解包目录
内核镜像在boot.img中,关于boot.img文件的文件格式,大家可以参看Android内核源码 system/core/mkbootimg/
目中 bootimg.h
文件中的定义
#ifndef _BOOT_IMAGE_H_
#define _BOOT_IMAGE_H_
typedef struct boot_img_hdr boot_img_hdr;
#define BOOT_MAGIC "ANDROID!"
#define BOOT_MAGIC_SIZE 8
#define BOOT_NAME_SIZE 16
#define BOOT_ARGS_SIZE 512
struct boot_img_hdr
{
unsigned char magic[BOOT_MAGIC_SIZE];
unsigned kernel_size; /* size in bytes */
unsigned kernel_addr; /* physical load addr */
unsigned ramdisk_size; /* size in bytes */
unsigned ramdisk_addr; /* physical load addr */
unsigned second_size; /* size in bytes */
unsigned second_addr; /* physical load addr */
unsigned tags_addr; /* physical addr for kernel tags */
unsigned page_size; /* flash page size we assume */
unsigned unused[2]; /* future expansion: should be 0 */
unsigned char name[BOOT_NAME_SIZE]; /* asciiz product name */
unsigned char cmdline[BOOT_ARGS_SIZE];
unsigned id[8]; /* timestamp / checksum / sha1 / etc */
};
/*
** +-----------------+
** | boot header | 1 page
** +-----------------+
** | kernel | n pages
** +-----------------+
** | ramdisk | m pages
** +-----------------+
** | second stage | o pages
** +-----------------+
**
** n = (kernel_size + page_size - 1) / page_size
** m = (ramdisk_size + page_size - 1) / page_size
** o = (second_size + page_size - 1) / page_size
**
** 0. all entities are page_size aligned in flash
** 1. kernel and ramdisk are required (size != 0)
** 2. second is optional (second_size == 0 -> no second)
** 3. load each element (kernel, ramdisk, second) at
** the specified physical address (kernel_addr, etc)
** 4. prepare tags at tag_addr. kernel_args[] is
** appended to the kernel commandline in the tags.
** 5. r0 = 0, r1 = MACHINE_TYPE, r2 = tags_addr
** 6. if second_size != 0: jump to second_addr
** else: jump to kernel_addr
*/
#if 0
typedef struct ptentry ptentry;
struct ptentry {
char name[16]; /* asciiz partition name */
unsigned start; /* starting block number */
unsigned length; /* length in blocks */
unsigned flags; /* set to zero */
};
/* MSM Partition Table ATAG
**
** length: 2 + 7 * n
** atag: 0x4d534d70
** <ptentry> x n
*/
#endif
#endif
这个东西,就是刷机的教程多,骚年,rec起来吧。
这个曲子的后面
有这个操作,真好看
最后分享一个沙雕拍摄手法,愉快的结束第一篇文章