又见炊烟升起

导航

=nsynote-通信&嵌入式&软件使用

无线通信

//河南商丘虞城县 BPC标准低频时码授时台 的发射频率:国家无委批准的68.5KHz,发射带宽±1 KHz,就属于长波,覆盖半径:天波3000公里,地波1000公里;

//2009年1月7日下午,工信部举行了一个小型的内部发牌仪式,将TD-SCDMA给了中国移动,与此同时,中国联通获得WCDMA牌照、中国电信获得CDMA2000牌照。
2013年,工信部发放了4G牌照。
2019年,工信部发放了5G牌照。

// oppo 抓log *#800# ,网络相关-开始抓取

vivo *#558# >品质验证测试 > 通用功能界面 >保存手机log

小米
##995995#* #* 开始和停止,输入##284##保存 log,路径文件管理-diag_logs

//众所周知,3G的技术规范我们称为25系列,LTE叫36系列,5G则是38系列。
//cell update 、periodical cell update
//相较于 4G 网络的频率,5G 网络的频率再一次提高,频段基本上分为 6GHz 以下频段(Sub 6GHz)和毫米波两类。
依据上表,波长在 1 到 10 毫米之间的电磁波,通常对应于 30GHz 至 300GHz 之间的无线电频谱,也就是广义上的毫米波。不过这个定义也不是那么严格,24.25GHz 电磁波的波长是 12.37 毫米,也可以叫它毫米波,虽然它比较像毫米波里面的姚明。
负责制定 5G 网络标准的 3GPP 组织之前开会规定,5G NR 主要使用两段频率:FR1 频段和 FR2 频段。FR1 频段的频率范围是 450MHz——6GHz,又叫 sub 6GHz 频段;FR2 频段的频率范围是 24.25GHz——52.6GHz,也就是 5G 领域里面的毫米波(mmWave)。

Cell Update 是手机在通话状态下,由于无线环境或者是干扰的原因,收不到网络测下发的信令消息,而发起的一个避免掉话的应急响应,Cell Update可以在原小区也可以在别的小区进行更新,如果更新成功的话,从信令上看是掉话了的,但是从用户感知上来说,通话仍然继续,也就是说,用户感觉不到掉话,要是更新失败,肯定是要掉话的。解决此类原因,尽量避免在通话状态下发起小区更新,也就是改善无线环境,排除上下行干扰,优化无线链路维持参数等。

//  目前在3GPP规范中有三种关于物联网的无线连接技术,一种是NB-IoT(窄带物联网),第二种是EC-GSM,第三种是eMTC。

  NB-IoT和eMTC已经在LTE整体发展的全新路线中,以往LTE的发展方向是希望把传输速度做得越快越好,但是现在LTE发展,也应该开始包括低成本和低功率,因此LTE有向两级发展的趋势。与我们所知道的Cat.4到Cat.16一样,eMTC是Cat M1,而NB-IoT是Cat NB-1,都属于同一个LTE发展路线图,这些技术也能够在运营商部署LTE时并存。

  EC-GSM是基于GSM(2G)技术的,一些运营商还有原来的2G网络,希望利用它来支持物联网,也会在传统GSM基础上继续演进,加入增强的特性,比如更深的覆盖。在很长的一段时间里面,这三者都会共同发展共同存在。

//Atransmit diversity mode had already been introduced in Release 99 (WCDMA).
Release 7 of the 3GPP specification (HSPA+) expanded this approach to MIMO and
again increased the data rate with respect to Release 6 (HSDPA). The introduction of
64QAM modulation and MIMO in the downlink makes a peak data rate of 28 Mbps
(Rel. 7) possible. In Rel. 7 MIMO and 64QAM can not be used simultaneously. Since
Rel. 8 the simultaneous use is possible which leads to peak data rates up to 42 Mbps.
Uplink MIMO is not provided.

//LTE Transmission Mode:
Transmission mode 1: 'SISO' (Single Transmission Antenna and Single Reciever Antenna)
Transmission mode 2: Transmit diversity, SFBC(Space-Frequency Block Coding)based.
Transmission mode 3: 开环空间复用 Open-loop codebook-based precoding in the case of more than one layer, degraded to transmit diversity in the case of rank-one transmission. (SU-MIMO), no feedback from UE
Transmission mode 4: Closed-loop codebook-based precoding. (SU-MIMO),UE feedback from UE (CQI, PMI -
precoding matrix indicator 预编码矩阵指示, RI - Rank Indication 秩指示)
Transmission mode 5: Multi-user MIMO version of transmission mode 4 (up to max 2 users/layers).
Transmission mode 6: Special case of closed-loop codebook-based precoding limited to single layer transmission, also called beam-forming for single user.
Transmission mode 7: Release-8 non-codebook-based precoding supporting only single-layer transmission per UE, it is also called beam-forming here for single layer per UE.
Transmission mode 8: 双流Beamforming(仅用于TDD) Release-9 non-codebook-based precoding supporting up to two layers per UE.
Transmission mode 9: Release-10 non-codebook-based precoding supporting up to eight layers per UE.
Codebook based mode means the precoding matrix can only be selected from known(predefined) cookbook.
Non-codebook based mode requests different demodulation/UE specific reference signals to be inserted in the allocated RBs of PDSCH before precoding and the precoding matrix is completely selected by randomly. This mode supports up to 8 transmission layers(ranks) per UE in Release10.
Closed-loop precoding is assumed that the network selects the precoder matrix based on feedback(CSI-PMI/RI) from the terminal.
Open-loop precoding does not rely on any detailed precoder recommendation being reported by the terminal and does not require any explicit network signaling of the actual precoder used for the downlink transmission. Instead, the precoder matrix is selected in a predefined and deterministic way known to the terminal in advance. One use of open-loop precoding is in high-mobility scenarios where accurate feedback is difficult to achieve due to the l******cy in the PMI reporting.

TM mode 3GPP 36.213

CQI = Channel Quality Indicator;信道质量指示;
RI = rank indication;秩指示;
PMI = Precoding Matrix Indicator;预编码矩阵指示;

CQI用来反映下行PDSCH的信道质量。用0~15来表示PDSCH的信道质量。0表示信道质量最差,15表示信道质量最好。
-->UE在PUCCH/PUSCH上发送CQI给eNB。eNB得到了这个CQI值,就质量当前PDSCH无线信道条件好不好。 这样就可以有根据的来调度PDSCH。
-->换句话说,LTE中下行的自适应编码调制(AMC)的依据是什么?其中一个依据就是CQI。
-->再通俗一点的说法:信道质量好,那eNB就多发送点数据;信道质量不好,那就保险点,少发送点数据。

RI用来指示PDSCH的有效的数据层数。用来告诉eNB,UE现在可以支持的CW数。也就是说RI=1,1CW,RI>1,2 CW.
PMI用来指示码本集合的index。由于LTE应用了多天线的MIMO技术。在PDSCH物理层的基带处理中,有一个预编码技术。
-->这里的预编码简单的说,就是乘以各种不同的precoding矩阵。而这个矩阵,可以采用TM3这样没有反馈的方式。
-->也可以采用TM4这样通过UE上报PMI来决定这个预编码矩阵。从原理上说,这样使得PDSCH信号是最优的。

下行的传输模式(TM)很多,在R9版本下行定义了TM1~TM8;其中TM4,6,8的情况下,才需要有PMI的反馈。

更多详细的内容参见36.211、213。

4G LTE LTE-Advanced for Mobile Broadband (2011).pdf
10.3 MULTI-ANTENNA TRANSMISSION

//sib4 intrafrequency同频邻区list
sib5 interfrequency异频邻区list
sib6 IRAT 邻区--wcdma/tdscdma list
sib7 IRAT 邻区--gsm list
sib8 IRAT 邻区--CDMA/CDMA2000 list
(a) Reporting criteria: For an event triggered report, the criteria for E-UTRA measurements
are A1, A2, A3, A4 and A5. For inter-RAT measurement, B1 and B2 are used.
(b) Event A1: Serving becomes better than absolute threshold.
(c) Event A2: Serving becomes worse than absolute threshold.
(d) Event A3: Neighbor becomes amount of offset better than serving.
(e) Event A4: Neighbor becomes better than absolute threshold.
(f) Event A5: Serving becomes worse than absolute threshold 1 and Neighbor becomes
better than another absolute threshold 2.
(g) Event A6 - Neighbour becomes offset better than SCell
(h) Event B1: Neighbor becomes better than absolute threshold.
(i) Event B2: Serving becomes worse than absolute threshold 1 and Neighbor becomes
better than another absolute threshold 2.

//eCall: A manually or automatically initiated emergency call,(TS12) from a vehicle, supplemented with a minimum set of emergency related data (MSD), as defined under the EU Commission’s eSafety initiative.
//频谱和波段划分

无法复制加载中的内容

注1.
极低频、超低频、特低频、甚低频四个频带(频率约3–30,000赫兹)和音频(audio frequency, AF)频率(约20–20,000赫兹)重叠,虽然声频是用在透过空气传播的音波上。

//微波波段

无法复制加载中的内容

//首先, DB 是一个纯计数单位:对于功率,dB = 10lg(A/B)。对于电压或电流,dB = 20lg(A/B).
dBm是一个表示功率绝对值的单位,计算公式为:10*lg(功率值)/1mW。例如:如果发射功率为1mW,按dBm单位进行折算后的值应为:10 lg (1mW/1mW) = 0dBm;
0.001mw <-> -30 dbm
0.01mw <-> -20 dbm
0.1mw <-> -10 dbm
1mw <-> 0dbm
10mw <-> 10dbm
100mw <-> 20dbm
1w <-> 30dbm

dB是一个表征相对值的值,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面计算公式:10lg(甲功率/乙功率)
甲功率比乙功率大一倍,那么10lg(甲功率/乙功率)=10lg2=3dB,也就是说,甲的功率比乙的功率大3 dB。

//今天的GSM显然是最流行的蜂窝制式。它已部署于整个欧洲,大部分亚洲地区和南美的一些国家。在美国开发了称为PCS 1900 的一个GSM 变体.
//Mobile termination (MT) supports physical channel between MS and base station radio transmission, channel coding, speech coding .
Terminal equipment (TE), eg, telephone set.Contains terminal/user-specific data in form of smart card subscriber identify module or SIM card, plugs into any GSM terminal like credit card and identifies user to network for personal mobility (in addition to terminal mobility) and security.

//GSM Phase 1:Original GSM
GSM Phase 2: DCS 1800
Release 96:HSCSD
Release 97:GPRS
Release 98:EDGE
Release 99:W-CDMA (FDD and wideband TDD)
Release 4:Narrowband TDD (Low chip rate- TD-SCDMA)
Release 5:High Speed Downlink Packet Access (HSDPA),HSDPA
Release 6:HSUPA
Release 7:HSPA+(高阶调制技术和MIMO )
Release 8:HSPA+进一步发展,LTE首次发布
Release 9:对LTE-Advanced的研究

//拨号码中按*键,出现:
p pause 暂停的意思拨打分机用
w waiting 等待的意思拨打分机用
//GPRS速率9.6Kbit/s,使用先进的编码可以达到14.4kb/s,有4种速率:
4 Coding Schemes CS1, CS2, CS3, CS4 giving
– user data rates of approx. 6, 9, 10, 14 kbps per slot,
– raw data rates 9.05, 13.4, 15.6, 21.4 kbps per slot

//EDGE 是一种适用于GSM 网络的增强型无线调制技术,可以将无线时隙扩展到48
kbit/s。与GPRS结合使用时,EDGE最多可以提供384kbit/s的用户带宽。

CDMA2000有三个实施阶段:CDMA 2000 1X、CDMA 2000 1X EV Data Optimized
(DO) 和用于优化数据和话音(DV)的CDMA20001X EV。CDMA2000 1xEV 将提供高达2.4Mbit/s的用户带宽。

//如今,通过利用OTA 技术,中国移动的用户可以根据自己的需要,随时增加或删除自己OTA 卡上的移动梦网短信业务菜单,以此实现梦网服务的个性化和业务更新的实时性,使得移动客户能更方便、更迅速地享受到各项梦网短信服务。

空中下载是一种无须与SIM 卡直接接触或连接即可与SIM 卡进行通信、往卡上加载应用并对SIM 卡进行管理的技术。
空中下载技术可以让网络运营商以很快的速度和较低的成本推出新的SIM服务或修改SIM 卡上的内容。
空中下载技术基于客户端/服务器方式,服务器端为运营商的后台系统(客
服中心、计费系统、应用服务器…),客户端则是一块SIM 卡。
运营商的后台系统负责将服务请求发送给一个OTA 网关,然后再由这个O
TA 网关把这些服务请求转换成短信后发给一个短信服务中心(SMSC),
最后再由这个短信中心把它们传给服务区内的一个或多个SIM 卡。
这样一来,运营商不必对用户的SIM 卡进行重新发行就可以利用空中下载
技术更新或修改卡上的数据,也就是说,最终用户无须再去运营商的营业
网点办理任何手续就能接收来自运营商的一种特殊信息,然后用自己的手
机下载或激活新的服务…
//信产部CTA测试,英文全称:China Type Approval,即入网测试,只有通过了这一测试,才能获得信产部颁发的终端入网证。(相当一部分是在北京信息产业部电信研究所进行测试)

有线通信

//8B/10B变换是PHY芯片的工作
8B/10B变换的主要作用是扰码,让信号中不出现过长的连“0”和连“1”情况,影响时钟信息的提取!

//从子网掩码计算子网:
IP:211.99.34.33
子网掩码:255.255.255.248
则该子网的网段可以有IP个数为(256-255)(256-255)(256-255)*(256-248) =8.
然后我们把每8个地址编号为一组,看33在哪个组里面即可,07是第1组,815是第2组,以此类推,3239是第5组,而33正好在3239.于是得出结论:211.99.34.33 在子网地址211.99.34.32,掩码为255.255.255.248的网段中.

//子网掩码还有一种简单的书写万法,就是在地址后面加上“/n”,如果你知道这个网段有X个IP地址,假设2Y=X,那么n=32-Y。比如上面例子中的网段有8个P地址,23=8,那么n=32-3=29;上述例子的211.99.34.33就可以表示为: 211.99.34.33/29。
所以192.168.0.1/24 的子网掩码就是255.255.255.0。

//ccna是cisco的初级网络工程师认证证书;ccnp是cisco的中级网络工程师认证证书,表示你熟悉掌握基本网络知识,有一定的网络配置经验和调试经验相对于ccna更有技术深度;ccie是cisco的高级网络工程师认证。

嵌入式

//cortex-M内核的芯片可以运行ucLinux吗? A:LIUNX的内存管理要用到MMU,现在M3大多都不## 缩略语
//XTAL - 表示外部晶振(或外接晶振)(External Crystal Oscillator)
TOSC - Timer Oscillator
根文件系统(rootfs=Root Fils System)
复位和时钟控制 (RCC)
数字摄像头接口 (DCMI)
独立看门狗 (IWDG)
窗口看门狗 (WWDG)
控制器区域网络 (bxCAN)
安全数字输入/输出接口 (SDIO)
随机数发生器 (RNG)
灵活的静态存储控制器 (FSMC)
毫秒:时间单位,符号ms(英语:millisecond ). 1000 毫秒 = 1秒
微秒:时间单位,符号μs(英语:microsecond ). 1,000 微秒 = 1毫秒
SS模式 =从动串行
电子硬件
//EPLD和CPLD没有区别,EPLD只是altera早期对于CPLD的叫法
//我的感悟:
做嵌入式产品有很多种做法,简单的做可以是用plc来做,用树莓派来做,用单片机来做,用arm来做,每一轮的话成本和难度都不一样。

如果实现一个功能,先不用考虑代价地实现它,然后大规模生产时使用替代芯片或者方案来实现。比如先用arduino或者树莓派搞,再自己画板子搞。

//
烙铁使用教程: http://v.youku.com/v_show/id_XMzI2NjY3MTQ0.html?from=y1.2-1-87.3.3-1.1-1-1-2-0

//结温(Junction Temperature)是电子设备中半导体的实际工作温度。在操作中,它通常较封装外壳温度(Case Temperature)高。温度差等于其间热的功率乘以热阻。
最大结温在指定一个组成成分的数据,并给定功耗的情况下,计算外壳与环境之间热阻。或者反过来可以帮助设计人员确定一个合适散热器。

//单纯使用声卡作为虚拟示波器,存在频率较低的问题,只有100khz以内的采样,对于检查单片机频率不够。
//在电子电路中,VCC是电路的供电电压(C=circuit 表示电路的意思, 即接入电路的电压), VDD是芯片的工作电压(D=device 表示器件的意思, 即器件内部的工作电压),一般VCC>VDD

VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压;
GND(Ground)代表地线或0线,GND就是公共端的意思,也可以说是地,但这个地并不是真正意义上的地。是出于应用而假设的一个地,对于电源来说,它就是一个电源的负极。

//LEGO MINDSTORMS Robotics Invention System (RIS) was released in October1998

RCX Code, the graphic programming system supplied with the kit, and NQC, the most widespread independent language for the RCX.

RCX only gates to the external world are a small display, three input ports, three output ports, four push-buttons, and an infrared (IR) serial communication interface.

处理器 Hitachi H8300,使用电池保存程序,电池掉电则程序丢失
//淘宝的使用CH340 的通过usb来控制 继电器的串口命令:
a00100a1
a00101a2
a00201a3
a00200a2
a00301a4
a00300a3

//小玩具马达的功率 = 5V x 0.35A = 1.75W

U-boot
//uImage和zImage的区别

  1. 指令的区别:启动uImage 用bootm; 启动zImage 用go;

  2. 文件区别:uImage 在zImage加了0x40(63) 个字节, 包含这个映像文件的类型、加载位置、生成时间、大小等信息;

  3. bootm uImage 会把bootargs 传给uImage; go zImage 不会给zImage 传递任何东西;
    //zImage 是ARM Linux常用的一种压缩映像文件,uImage是U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的“头”,说明这个映像文件的类型、加载位置、生成时间、大小等信息。换句话说,如果直接从uImage的0x40位置开始执行,zImage和uImage没有任何区别。另外,Linux2.4内核不支持uImage,Linux2.6内核加入了很多对嵌入式系统的支持,但是uImage的生成也需要设置。

几种linux内核文件的区别:
1、vmlinux 编译出来的最原始的内核文件,未压缩。
2、zImage 是vmlinux经过gzip压缩后的文件。
3、bzImage bz表示“big zImage”,不是用bzip2压缩的。两者的不同之处在于,zImage解压缩内核到低端内存(第一个640K),bzImage解压缩内核到高端内存(1M以上)。如果内核比较小,那么采用zImage或bzImage都行,如果比较大应该用bzImage。
4、uImage U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的tag。
5、vmlinuz 是bzImage/zImage文件的拷贝或指向bzImage/zImage的链接。
6、initrd 是“initial ramdisk”的简写。一般被用来临时的引导硬件到实际内核vmlinuz能够接管并继续引导的状态。

//uboot的模拟参考!:https://blog.csdn.net/jqh_111/article/details/83720406
1、生成配置文件, make ARCH=arm vexpress_ca9x4_defconfig
2、编译Uboot, make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- -j4
3、开启模拟:qemu-system-arm -M vexpress-a9 -m 256 -kernel u-boot --nographic

labcenter Proteus

//.dsn格式和.pdsprj格式都是Proteus软件中保存工程文档的格式。

.dsn格式是Proteus 7版本及更早版本使用的格式,而.pdsprj格式是Proteus 8版本及更新版本使用的格式。这两种格式都是为了方便用户在不同版本之间打开和编辑工程文档。
在Proteus 7版本及更早版本中,用户可以打开并编辑.dsn格式的文档,但不能打开.pdsprj格式的文档。

因此,.dsn格式和.pdsprj格式之间的关系是它们都是用于保存Proteus工程文档的格式,但它们分别代表了不同版本的Proteus软件。

//Proteus 8可以仿真:8051,8086、AVR(含Arduino)、PIC、HC11、MSP430、ARM7TDMI、Cortex-M0/3/4,TI PICCOLO开发板(基于TMS320Piccolo处理器) 、树莓派3/4/zero (可安装GrovePi HAT)等常用的MCU.

OS-embed_linux

//cortex-M内核的芯片可以运行ucLinux吗?
A:LIUNX的内存管理要用到MMU,现在M3大多都不带MMU,但是ucLinux去掉了linux的MMU。

==

不爱说话
33楼
高级工程师 | 2019-2-22 09:30 | 只看该作者
STM32最好429及以上的芯片跑uClinux还可以试试。太早的芯片没有FMC接口不能外扩SDRAM,用pSRAM又太小众太贵。
这是我这些年来用STM32跑uClinux的心得体会。

==
尽管uClinux不需要MMU,但需要大量的Flash和SRAM。另外,处理器必须能够高速运行。当前,只有高端Cortex-M3 / M4 MCU可以满足这些要求。也许uClinux也将很快在Cortex-M7上可用。

//我的理解:虚拟机和qemu 是一类的,仿真的是guest硬件 +guest OS,而docker 直接仿真的是guest OS的bin/lib ,所以效率高。

//查busybox的版本号:
$/bin/busybox --help
BusyBox v1.1.3 (2009.09.12-18:22+0000) multi-call binary

//嵌入式linux系统的小系统=uboot+kernel+文件系统(如busybox,yocto)
//strace - trace system calls and signals
源码中的if语句或其他代码在相应strace输出中并没有体现,因为它们并没有唤起系统调用。strace只关心程序与系统之间产生的交互,因而strace不适用于程序逻辑代码的排错和分析。
默认情况下,strace只跟踪指定的进程,而不对指定进程中新建的子进程进行跟踪。使用-f选项,可对进程中新建的子进程进行跟踪,并在输出结果中打印相应进程PID:

:使用strace跟踪挂死程序,如果最后一行系统调用显示完整,程序在逻辑代码处挂死;如果最后一行系统调用显示不完整,程序在该系统调用处挂死。
当程序挂死在系统调用处,我们可以查看相应系统调用的man手册,了解在什么情况下该系统调用会出现挂死情况。另外,系统调用的参数也为我们提供了一些信息,例如挂死在如下系统调用:
read(16,
那我们可以知道read函数正在对文件描述符为16的文件或socket进行读取,进一步地,我们可以使用lsof工具,获取对应于文件描述符为16的文件名、该文件被哪些进程占用等信息。

//ftrace 是内建于 Linux 内核的跟踪工具,从 2.6.27 开始加入主流内核。使用 ftrace 可以调试或者分析内核中发生的事情。ftrace 提供了不同的跟踪器,以用于不同的场合,比如跟踪内核函数调用、对上下文切换进行跟踪、查看中断被关闭的时长、跟踪内核态中的延迟以及性能问题等。
使用 ftrace ,首先要将其编译进内核。内核源码目录下的 kernel/trace/Makefile 文件给出了 ftrace 相关的编译选项。

OS- Ethernut&Nut/OS

//编译:
使用Configurator 生成makefile
C:\ethernut-4.10\nutbld 下执行make

OS-ecos

//.ecm :eCos Minimal Configuration 只出现在hal文件夹下面
Most HAL packages include a .ecm file that can be imported, along with using the RedBoot template, in order to set up the packages needed to build the RedBoot ROM monitor for a specific platform.

.ecc :eCos Configuration(The saved configuration file contains all of the packages loaded, template used, option settings, and description information, which the Configuration Tool uses to generate the proper eCos image.)一个项目工程的配置文件,相当于工程文件
//compat用于实现兼容性的软件包
//ecos的生成:
|__ \redboot_build
|__ \redboot_install
| |__ \include
| |__ \lib
| | |__ libtarget.a
| |__ \bin
|__ \redboot_mlt

Project-Openwrt

//【终极小鸟】北大街57号 18:57:21
有没有国内用的比较广泛的,不用改硬件的路由器啊

【高级老鸟】往事 18:57:32
如果你想要便宜发,去咸鱼买D525双网口

【高级老鸟】往事 18:57:36
百来块钱

【高级老鸟】往事 18:57:53
这是入门级的

【高级老鸟】往事 18:59:04
再上一个档次,一般就是J1900,不过就稍微贵点了

【高级老鸟】往事 18:59:21
再网上就是I3 I5 I7了

D525整机功耗大概十来W,也还能接受

【终极小鸟】北大街57号 19:02:10
嗯嗯

【小小鸟蛋】小小 19:02:15
@北大街57号 很多 华硕的N-18U AC-68U 都是可以的吧

竞斗云也可以闲鱼看看

Project-R2S

//调试串口的接法:
靠近边缘是黑色,向里是红色和白色
Project- Arduino
//注意,arduino的串口只能波特率9600,即使修改
Serial.begin(9600);
为其他波特率也不生效,这个参数根本就没有被使用。

//[置顶]arduino相关的函数和外设库参考:
https://www.arduino.cc/reference/en/
https://www.arduino.cc/en/Reference/Libraries

ArduinoDuemilanove

Duemilanove(意大利语“2009”的意思)是已生产的最流行的Arduino电路板之一,已取代了它之前的版本Arduino Diecimila。但现在,它又被更新的Arduino Uno所取代。Duemilanove的特色是使用了供电自动切换电路,自动选择从USB还是从外部电源供电。它还使用了ATmega328处理器,但2009年3月之前的版本采用的仍然是ATmega168。它的引脚布局和运算能力与Uno相同,只是它使用FTDI芯片实现USB转串口通信。
如果你打算买一片新的Arduino,那就应该选择ArduinoUno。如果你已经有一片Duemilanove,并且需要更稳定的3.3 V电压或者想做一些基于ATmega8U2的高级编程,那么可以考虑将其升级为Uno。

国内使用比较多的为Arduino Duemilanove 2009,主要原因是
Uno的usb控制芯片封装方式改变,制造成本上升,其他变化不大,
性价比还是Arduino Duemilanove 2009比较好。

//ICSP = in circuit serial programmable (在线串行编程),就是PIC系列单片机的在线调试器MAPLAB ICD2在线烧写程序的方式。

//调试Arduino需要使用诸如如下的代码:

Use the begin() method of the Serial class in the setup() method of your application
to set the communications speed:
int speed = 9600;
void setup() {
Serial.begin(speed)
}

然后:
you can send data from your Arduino controller to your computer using the print()
method:
Serial.print(data)

//An Arduino library is generally made up of four parts:, an .h file, a .cpp file, a
keywords.txt file that highlights Arduino library words in the IDE, and the actual binary
library code.

MCU

//ESP8266 是单核 Tensilica L106 (32位MCU)的Wi-Fi芯片,主频最高可达160MHz。

ESP32 是双核Tensilica L108 (32 位MCU)的Wi-Fi芯片,主频更高可达250MHz,性能更强,内存更大有400KB SRAM。另外还集成了蓝牙BLE。

由于ESP32的MCU性能更强,内存更大,可以处理包括音频、视频在内的更复杂Wi-Fi应用。还可以应用在需要蓝牙和Wi-Fi共存的IOT场景中。

MCU-51

//keil rtx51tiny最小占用2KB(官方的参考用例 \keil_c51\C51\RtxTiny2\Examples\Ex1\编译后 )

//89C51和89C52区别:
//89S51相对于89C51增加的新功能包括:

-- ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。
-- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。
-- 具有双工UART串行通道。
-- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。
-- 双数据指示器。
-- 电源关闭标识。
-- 全新的加密算法,这使得对于89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。

MCU- AVR

//很多朋友的51 单片机都是从AT89C51 这款芯片开始的, 而这家公司也推出过基于ARM9 内核的处理器,只不过普及度不高。为了发挥它们的优势,它们还把曾经在单片机圈非常火爆的AVR单片机做成了32 位版本的AVR32 , 它不是ARM 内核, 但希望以此与ARM 竞争,结果是现在很少有人听说过AVR32。 AR M的地位不可动摇, 大部分厂商还是乖乖地生产ARM 处理器。

//目前AVR 单片机高级语言发发工具主要有IAR C、WINAVR、ICCAVR、CodeVision、BASCOM-AVR(BASIC 语言)。IAR 是与AVR 内核协同开发的,很多对AVR 更适合C 语言开发方面的改进是根据IAR开发过程的,它也是ATMEL 公司推荐的C 语言编译器,但它的价格几呼让人难以接受,达到上万元人民币。ICCAVR 是国内AVR 主要推广单位双龙公司代理的C 编译器,它价格低廉,性能也XX,友好的界面把很多烦琐的项目管理和编译设置隐藏了起来,为此它受部分开发人员的欢迎。CodeVision 也是个很不错的C 编译器,目前在国内也有一定数量的用户。Winavr 是个免费的AVR 开发程序集,它以著名的自由软件GCC 为C/C++编译器。

//中兴的coremark的5档次 4k-10k-80k-160k-400k
我的华为笔记本是123K:
<
无法复制加载中的内容
//
生成object 文件:avr-gcc –mmcu=at90s2313 –o demo1.elf demo1.o
生成elf文件:avr-gcc –mmcu=at90s2313 –o demo1.elf demo1.o
生成hex文件:avr-objcopy -j .text -j .data -O ihex demo1.elf demo1.hex

ARM Cortex-M
//新版的STM Cube集成了 TouchGFX(嵌入式GUI界面) 以及低功耗蓝牙BLE协议栈等
//STM32CubeIDE内部就集成了STM32CubeMX的插件,所以在STM32CubeIDE 里可以使用STM32CubeMX。
//

ARM Cortex-A
//i.MX 6ULL Arm Cortex-A7 单核 792 MHz,基于ARMv7-A
AM335X TI的ARM Cortex-A8
Roc-rk3288 瑞芯微的四核Cortex-A17,频率高达1.8GHz
Roc-rk3399 瑞芯微两个Cortex-A72 + 四个Crotex-A53核心,组成big.LITTLE大小核架构六核ARM Cortex-A 64位处理器
//跟GUI没有关系 是芯片决定用的什么版本的linux
不带gui的原因,一般都是cpu不支持屏幕

//The Versatile Express platform provides an environment for developing SoC designs. Arch Linux ARM specifically targets the Motherboard Express uATX system using one of the available CoreTile Express daughtercards.
Supported CoreTiles:

  • V2P-CA5: 2x Cortex-A5 100MHz
  • V2P-CA9: 4x Cortex-A9 400MHz ==> 宋宝华《Linux设备驱动开发详解》使用
  • V2P-CA15 (TC1): 2x Cortex-A15 1GHz
  • V2P-CA15-CA7 (TC2): 2x Cortex-A15 1GHz, 3x Cortex-A7 800MHz ==>《奔跑吧Linux内核》使用

Android BSP

//adb root
adb remount
adb shell //执行shell命令的环境
adb logcat >~/0705.log //保存log
其他
// 就单片机来说,protues 支持我们通常用的C语言,而multisim目前只支持汇编。之后自学单片机用的开发板其实是可以在protues上做一个的。protues支持与keil的联调,就是用keil中的调试功能,一行一行运行代码,然后在protues上显现出相应的效果。multisim在其他电路上貌似更专业,更强大。

multisim 可以支持的MCU有 PIC16F84/16F84A 和8051单片机

软件使用

Mysql

//SQL stands for Structured Query Language. 结构化查询语言
SQL is a standard language for accessing and manipulating databases.

//MySQL的后台程序是mysqld,监听默认端口为3306的查询请求,客户机程序是mysql

Sketch up

//当您在建模时,SketchUp会用颜色精确的反馈您的鼠标在3D模型空间中的位置。绿色点= 终点, 红色点= 在边上, 青色点= 边线中点,蓝色点= 在表面。红、绿、蓝色线分别代表X、Y、Z三个坐标轴的方向。紫红色线代表有物体平行或是垂直于特定的边。
//为了得到您想要的点或边线,您只需要在SketchUp中旋转您的鼠标,当您的鼠标经过时,SketchUp应该会记住您需要的正是这个点。按下SHIFT 键可以进行捕捉和锁定方向和点。

//平移- 在转动时,按住键盘上的shift键可以进行平移。
//使用组件可以使您的模型更小并且更有效果。要创建组件的话,只需要选择要创建成组件的几何体,然后点击鼠标右键,选择“创建组件”菜单。组件很容易编辑,如果您对其中的一个组件做出改变,其它相同组件也会发生相应的变化。如果在SketchUp中,有许多几何体的话,您应该保证他们都是组件。如果您需要组件的话,可以试着到3D Warehouse中去搜索
//您知道可以通过页面为您的模型创建动画吗?要想创建页面,请到“窗口”菜单下面选择“页面”工具。您可以通过点击页面对话框中的“ + ”号图标来添加页面。改变您模型中的视角,并为每个视角增加一个页面。创建完毕后,您可以随时通过单击模型窗口上方的页面标签来激活一个页面。要链接所有有页面成一段动画的话,请到“查看”菜单下面,从“动画”菜单的子菜单中选择“播放”菜单。页面是一个可以应用于很多方面的强大工具。

Eclipse

//打开变量的declaration,使用“open declaration”或者按F3.
得到函数被调用的地方,使用CTRL + SHIFT +G
////eclipse 的快速打开文件:ctrl +shift +r 打开 "Open Resource" ,然后输入文件名;或者使用[CTRL]+[H] 来搜索文件
//eclipse 的界面使用SWT,netbeans使用swing.
//eclipse 可以在已有的C代码文件夹建立工程,建立的工程名称为 .project 和 .cproject

Octave

//R – 实数
F- 浮点数
C-复数(Complex Number)
V-矢量(Vector)
amn :矩阵中的m表示行(row),n表示列(column)

Docear

//docear 首次使用时注意点:只导入pdf;不显示书签(pdf management 中去掉bookmark)

其他

//用硬盘给文件做备份:使用 freefilesync.org的开源软件同步

//Q: 怎样搜索excel文档中的问号(“?”)
A:?在excel中是通配符,表示任何1个字符,所以不能直接查找,否则返回所有1个字符的结果。如果需要查找通配符本身时,需要在通配符前面加,这样就可以查找到通配符本身。EXCEL中另外一个通配符*,*表示任意字符串,查找*本般的方法也是需要在*前加一个

//微信删除/拉黑后还可以收发消息吗?微信科普:拉黑——自己可以发消息给对方,对方只能收到而不能回复信息;删除——双方都不能发送信息。拉黑后双方的聊天记录还在,删除后聊天记录将被清除。
拉黑/删除后还可以重新添加回来吗?拉黑状态下,只需将对方解除黑名单即可恢复好友关系;删除状态下,可以从共同群聊添加回来,对方不会收到提示,也可以重新通过验证添加回来。

对方知道被拉黑/删除了吗?拉黑时,对方给你发消息会收到提示:消息已发出,但被对方拒收了。删除时,对方给你发消息会收到提示:开启了朋友验证,你还不是他(她)朋友。也可以重新通过验证添加回来。

//开启 Chrome 的 Tab Freeze 功能:Chrome://flags,直接搜寻 Tab Freeze,有几个选项可以选,分别功用如下:

Enabled:当未使用分页超过 5 分钟后就会自动冻结,当你去点击该分页时会自动重新整理
Enabled Freeze(No Unfreeze):当未使用分页超过 5 分钟后就会自动冻结,当你去点击该分页时不会自动重新整理
Enable Freeze(Unfreeze 10 s every 15min.):当未使用分页超过 5 分钟后就会自动冻结,每过 15 分钟自动回复 10 秒

//firefox 中临时保存的书签放到书签栏,这样换一台电脑或者系统,仍然能够快速找到这个临时书签。
//xournal 种pdf的批注和普通pdf批注完全不一样,比如以前pdf可能有矩形方框,使用xournal 修改后导出pdf,会发现完全没有了之前的批注,但是之前批注的效果还在;如该自己使用xournal 的涂鸦来涂画,也不会出现在批注里面。
//virtualbox添加硬盘:
创建虚拟硬盘之后需要挂载到虚拟机上,已经挂载的虚拟硬盘是RAW格式的,需要格式化,如果是WINDOWS客户机,用我的电脑-》管理->存储->磁盘管理进行分区和格式化。
如果是linux系统,开机后检查/DEV/目录下是否有sdb(现在一般linux硬盘都是认成这个名字)这个标志文件,如果有的话使用fdisk /dev/sdb分区并格式化。格式化完成后按照相应分区格式使用mount命令挂载。

//QQ空间的RSS订阅:
http://feeds.qzone.qq.com/cgi-bin/cgi_rss_out?uin=QQ号码

//专业无线电对讲机
专业无线电对讲机的使用者大都是在群体团队的专业业务中使用。因此,专业无线电对讲机的特点是,功能简单实用。在设计是都留有多种通信接口供用户作二次开发。其频率报设置大都是通过计算机编程,使用者无法改变频率,其面板显示的只是信道数,不直接显示频率点,频率的保密性较好,频率的稳定性也较高,不易跑频。
在长期工作中,其稳定性、可靠性都较高,工作温度范围较宽,一般都在-30度到+60度。专业机的工作频率在VHF段时一部分V高段(148-174MHZ)和V低段(136-160MHZ)。另有一部分是全段(136-174MHZ)。但在UHF频段,大部分分U高段(450-470MHZ)和U低段(400-430MHZ),极少数是U全段(400-470MHZ)。专业机的性能、可靠性、稳定性较业余机高,其价格自然比业余机要高,有的甚至高出很多。

业余无线电对讲机
[民用对讲机]

民用对讲机
专为满足无线电爱好者使用而设计、生产的无线电对讲机。这类对讲机又可称为“玩机”,玩对讲机的爱好者称为“HAM”或者“火腿”。由于无线电对讲机的频率范围有限,使用的环境条件及使用要求和专业对讲机有所区别。业余机的主要特色是,体积要小巧、功能要齐全、可进行频率扫描,可在面板上直接置频,面板上显示频率点。其技术指标、设备的稳定性、频率稳定性、可靠性以及工作环境也相对专业无线电对讲机要差些。其直接结果是业余机成本也较低些,以适应个人购买的需要。
针对这种业余的个人无线电业务,各个国家都开辟了专用频段分配给业余无线电运动爱好者使用。我国开辟的频段为144-146MHZ和430-440MHZ,世界各国一般也都是这一频段。2001年10月信息产业部国家无线电管理局发布的《中华人民共和国无线电频率规划》中的对业余无线电爱好者和业余业务专门有说明“业余业务:供业余无线电爱好者进行自我训练、相互通信和技术研究的无线电通信业务。业余无线电爱好者系指经正式批准的、对无线电技术有兴趣的人,其兴趣纯系个人爱好而不涉及谋取利润。”

//用word查看字符Unicode码值:
按快捷键Alt+X,光标前面的字就会自动转成Unicode编码了。在菜单:插入-〉符号中还可以修改编码,那么ASCII,GB都可选了。当然如果你是支持繁体的word我想一定会有BIG5的。

//vmware:
vmware中主机和虚拟机相互ping通的配置:
image

posted on 2022-06-29 00:08  ni_sy  阅读(604)  评论(0编辑  收藏  举报