Tips
现代通信网络-LC1-Overview
本篇笔记是鲍宁海老师上课的口述记录而成,纯纯他如何讲我如何记。没有经过过多整理,所以内容可能有些乱且杂糅。但是考试重点均有cover
本节对应参考书章节CH1
三个时代三个时代(这一部分讲了2个星期 -> _ ->)
横向对比
Generation-1
Generation-2
Generation-3
描述
仅又很少的终端,能够接入网络的用户有限。采用模拟信号,Qos不太好
终端的价格开始逐渐下降(经历了一段时间才降下来),用户可以承担。但服务的费用很高,用户安装了终端却不舍得用。开始采用数字信号。在技术层面遇到了频率容量(capacity) 和 交移 (handover) 问题
传统电信业务的资费下降,用户可以承受。要继续扩大市场就需要发展更多的服务。
关注的技术
Transmission
Switching
Soft-switch
关键词
Reachability
Accessibility
Realizability
拓补结构
mesh
star
hybrid (mesh + star)
第二时代存在的两个问题的解释
Hand ...
Part1-Filter
滤波器基本参数
上图展示了滤波器通带、阻带、过渡带。
特征角频率和特征频率($f_0/f_n$) pole frequency/ nature frequency它只与滤波用的电阻和电容元件的参数有关,通常对于带通(带阻)滤波器,称为带通(带阻)滤波器的中心角频率或中心频率$f_0$,是通带(阻带)内电压增益最大(最小)点的频率。
滤波器的截止频率($f_c$)cut-off frequency一般地是指幅度响应比通带低3 dB时的频率。无论是什么样的滤波器,截止频率一般都是指-3db的位置,也就是说从滤波器的通带的增益算起,下降-3db的位置。
Chenqiao原话:但是一些文献里面认为$f_0$就是截止频率$ f_c $,截止频率不一定需要在-3dB point。这里需要根据实际情况讨论。
无源滤波器(Passive Filter)电容、电抗和阻抗的关系:
所有滤波器的公式都是将电容和电抗表现成阻抗的形式,代入电路得出的。
一阶无源滤波器
低通:一阶低通滤波器:输出的电压等于夸在电容两端的电压,输出信号的相位
\psi=\phi_0-arctan(R/X_C )=\phi_ ...
Part1-Timer
Recall:RC电路的充放电公式
时间常数:$τ=RC $
充电:$V_c=(1-e^{-t/τ})$
放电:$V_c=V_i\cdot e^{-t/τ}$
充放电时间:5τ
上面这个充放电的e就是下式中提到$ln$的来源。
555定时器引入555定时器内部电路结构图如下
其有以下几种工作模式:
非稳态:做为一个电子振荡器,输出PWM波。
单稳态:类似于延时开关,收到一个输入脉冲时,电平跳变一段时间,随后跳回原来电平
双稳态:受到两个输入控制,第一个收到脉冲时使芯片保持高电平输出,第二个收到脉冲时使芯片保持低电平输出。
施密特触发器:稳定输入电平。
555timer支持流入或流出最高200ma的电流(具体的可能不一样,需要参考制造商手册),驱动更高电流需要放大电路。
非稳态(A-Stable)电路电路分析非稳态电路图如下:
在上电一瞬间,$Vc=0,$ 比较器1输出0 (reset=0),比较器2输出1 (set=1);所以SR Flip-Flop输出高电平,同时Q1关闭使C充电。
当充电$VTL<Vc<VTH$时,比较器1和2都输出0,此时SR锁存 ...
Part1-CH4-数字的表达和算数电路
加法器半加法器半加法器接受两个输入:$x_1,x_2$ 并产生本位和进位两个输出。半加法器的真值表和实现电路如下图所示
全加法器全加法器:输入$x_1,x_2,c$,三位(其中c表示上一位到这一位的进位)计算三位相加产生本位和进位。真值表和电路如下
串行进位全加法器(Ripple-carry Adder)讲上述全加法器进行串联,前一个的进位输出连接至下一个的进位输入。
原码(True form)反码(1’s complement ) 补码(2’s complement) 在 计算机组成与接口 中有更详细的介绍,此处略去。
加法(减法)单元在计算机中,设计专门的减法电路划不来,因此使用补码+加法电路来计算减法。补码的求法是原码取反加一,因此设计如下的计算模块
当Add/Sub control 为0时,$y_i=y_i\oplus0=y_i$, 同时输入的基础进位$c_0$等于0。此时是正常调用全加法器计算加法。
当Add/Sub control为1时,$y_ ...
Part1-CH5-组合电路-构建快
多路复用器多路复用器可以使用逻辑门制造,也可以使用Transition Gate 制造。一个多路复用器具有n个输入,那么就需要$log_{2}{n}$路选择信号。考试中最多出现4 to 1多路复用器。
例题:2x2交叉选择器
使用多路复用器构建逻辑函数 五星级中的五星级
如上图这个情况,使用$w_1,w_2$做为选择信号,可以把输出分为4个case:
Case 0: $w_1=0,w_2=0$, 输出为0
Case 1: $w_1=0,w_2=1$, 输出等于$w_3$
Case 3: $w_1=1,w_2=0$,输出等于$w_3$
Case 4: $w_1=1,w_2=1$,输出等于1
这样就实现了用多路复用器来实现基础的逻辑组合。除了简单的电路外,还可以使用逻辑门的输出和多路复用器进行组合,实现更复杂的电路。
香农拓展定理(Shannon’s Expansion Theorem)
香农拓展定理的核心理念是:对于一个Boolean function, 可以把它写为分解为$w_1 (…)+ \overline w_1 ...
STM32的UART通信(Register)
基本工作原理(F4系列)F4的USART模块支持可编程字长、自定义波特率、单线半双工模式(RX,TX使用一条线,半双工收发)、唤醒MCU、可编程的停止位长度、可启用/禁用/设置模式的就校验位。其硬件模块如下
F4系列的USART模块还支持IRDA协议和LIN协议,这里不会详细介绍
USART硬件系统可以被拆分成如下几个重要部分:
控制初始化工作部分
使能USART:由CR1寄存器UE位(bit13)进行控制,使能后USART模块才会开始工作,不用时失能减少功耗;
设置数据字长:F4系列支持8bit和9bit两种长度,通过对CR1寄存器M位(bit12)配置进行控制;
设置波特率:波特率生成器负责生成控制发送速率的时钟,由USART_BRR寄存器控制。
设置停止位长度:由CR2寄存器中bit[12:13]控制,支持0.5 / 1 / 1.5 / 2四种停止位长度
设置奇偶校验:CR1寄存器PCE位(bit10)控制。
控制收发工作部分
DR(数据寄存器):用于寄存要发送的数据或者收到的数据。发送时,该寄存器内的值会被逐个读取至TDR,并通过移位寄存器逐个bit发送;接受时,RDR ...
嵌入式中常用串行通信
USART简介USART:Universal Synchronous Asynchronous Receiver Transmitter,通用同步异步收发器
UART:Universal Asynchronous Receiver Transmitte,通用异步收发器
USART算是UART的哥哥,比UART多一个同步通信特性。这两个都是串行通信协议。同步通信需要双方时钟频率一致,而异步通信无需时钟频率一致,通过设置固定的波特率+识别起始位和结束位来识别数据。其数字基带调制均使用NRZ(不归零)码。
UART和USART最大都只能和一个主机同时通信
波特率UART通信的波特率用于描述UART每秒传输的比特的速度(因为UART采用二进制信道Baud=bps),其单位为bps(bit per sec),常用的波特率有9600,115200等。以9600为例,每一个bit持续的Ts就是
T_s=\frac{1}{9600}\approx104.2us帧格式UART规定数据空闲时,总线为高电平。
UART的帧格式为
起始位:一个低电平信号,使用由高电平(空闲)朝低电平(起始位)跳变的边沿 ...
STM32的中断(Register)
NVIC不同于普通单片机的软中断(单一入口,软件识别flag)或硬中断(不同入口)会在多个中断同时发生时挂起后发生的,STM32支持对中断的优先级进行编程,在中断中触发中断。用于管理这一优先级的系统被称为NVIC。
NVIC:Nested vectoredinterrupt controller,嵌套向量中断控制器,属于内核 (M3/4/7)。NVIC支持256个中断(16个内核中断+240个外部中断),内核支持256个中断优先级。ST公司把256个优先级裁切为了16个优先级(所有系列都是如此)。对于F407xx系列芯片,有10个内核中断,82个外部中断。
STM32的中断优先级又分为几类:抢占式优先级、响应式优先级、自然优先级。在STM32中,优先级设置的数值越小,其优先级越高
抢占式优先级:当两个中断同时发生时,优先执行抢占式优先级高的中断,可形成中断嵌套(在执行某低优先级中断中被高优先级再次中断,先执行高的再回来继续执行低的)
响应式优先级:当两个同抢占式优先级的中断同时发生时,优先响应 响应式优先级 高的中断,另一个被挂起。响应式优先级无法打断执行过程中的中断。
自然优先级 ...
STM32——HAL库
GPIO控制GPIO口寄存器的封装和总线时钟123456789101112131415161718192021222324252627282930313233//GPIO_TypeDef 结构体如下:typedef struct{ __IO uint32_t MODER; /*!<模式寄存器, Address offset: 0x00 */ __IO uint32_t OTYPER; /*!<输出数据类型寄存器, Address offset: 0x04 */ __IO uint32_t OSPEEDR; /*!<输出速度寄存器, Address offset: 0x08 */ __IO uint32_t PUPDR; /*!<上拉下拉电阻选择寄存器, Address offset: 0x0C */ __IO uint32_t IDR; /*!<输入数据寄存器, Ad ...
git常用命令
git常用命令以下内容中<参数>都表示输入参数,输入时不需要加<>
本地仓库相关在某一文件夹内初始化git1git init
把工作区文件添加至暂存区12git add <文件名 或 通配符>git add -u #将已跟踪的文件提交至暂存区
把暂存区文件提交至本地仓库123git commit -m "<对本次提交的描述>" #从暂存区提交git commit -am "<对本次提交的描述>" #将已跟踪的文件提交至暂存区和仓库git commit --amend -m "<对上次提交的描述修改>" #修改上次提交的描述,不加-m可进入vim编辑
查看当前仓库的状态(分支、文件、文件状态)1git status
回退版本 <输入参数>有:
—soft (保留工作区和暂存区仅回退版本)
—hard (回退版本、工作区、暂存区)
—mixed (回退功版本和暂存区,保留工作区)
1git reset <输入参数>
查看差 ...