正确理解时钟器件的抖动性能 摘要在选择时钟器件时,抖动指标是最重要的关键参数之一。但不同的时钟器件,对抖动的描述不尽相同,如不带锁相环的时钟驱动器有附加抖动指标要求,而带锁相环实现零延时的时钟驱动器则有周期抖动和周期间抖动指。同时,不同厂家对相关时钟器件的抖动指标定义条件也不一样,如在时钟... 2023-06-13 理解时钟器件抖动性能文章课设毕设时钟类
单片机堆栈指针的理解 堆栈指针sp在片内RAM128B中开辟栈区,并随时跟踪栈顶地址。它是按"先进后出"的原则存取数据。开机复位后,单片机栈底地址为07H。主要用来保存临时数据,局部变量和中断/自程序的返回地址。堆栈指针总是指向栈顶元素。所以数据入栈的时候,堆栈指针先加1,再压栈。向上增长方式。... 2023-06-13 单片机堆栈指针理解文章基础知识
单片机汇编延时程序理解 单片机汇编实现延迟的程序代码:DELAY: MOV R7,#250 ;D1: MOV R6,#250 ;D2: DJNZ R6,D2 ;DJNZ R7,D1 ;RET如果用高级语言编程,只需要简单地调用延时函数就可以实现,但是计算机具体是怎么实现的呢?要想知其所以然,还得从汇编开始学起。冒号前面的“DELAY”、“D1”、&l... 2023-06-13 单片机汇编延时程序理解文章单片机基础知识
简单一点理解推挽输出与开漏输出 1. 推挽输出与开漏输出的区别:>>推挽输出:可以输出高,低电平,连接数字器件>>开漏输出:输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).2. 开漏电路特点在电路设计时我们常常遇到开漏(open dr... 2023-06-13 推挽输出开漏输出理解文章单片机基础知识
单片机开发中断及一些理解 强制类型转换a = 0x0000; b = 0xaa55;(uint16)a = (uint8)(b);a = 0x55;a = 0x00; b = 0x10;a = (bit)(表达式);中断响应条件一、中断源有中断请求;二、此中断源的中断允许位为1;三、CPU开中断(即EA=1);以上三个条件同时满足时,CPU才有可能响应中断。EA =1;开总中断EX0=1;开外... 2023-06-13 单片机开发中断理解文章基础知识
结合Linux系统内核源码理解SYN_RECV状态 在tcp_v4_do_rcv中,有下面一段代码,是关于TCP连接建立时候的代码:if (sk->sk_state == TCP_LISTEN) {struct sock *nsk = tcp_v4_hnd_req(sk, skb);if (!nsk)goto discard;if (nsk != sk) {if (tcp_child_process(sk, nsk, skb))got... 2023-06-13 Linux系统内核源码理解SYN_RECV状态文章软件开发Linux
#pragma 在嵌入式中的讲解和理解 例如我们使用GCC的编译器呢它就有这么几种用法:#pragma GCC dependency unix_c_01.c.txt 若《文件》比此文件新 则产生警告#pragma GCC poison 若出现 则产生错误#pragma pack( 1/2/4/8) 按1、2、4、8字节对齐补齐Dependency 依赖的意思意思就是说... 2023-06-13 pragma嵌入式讲解理解文章软件开发嵌入式OS
对C与C++语言内存的理解 一、对内的分配32位操作系统支持4GB内存的连续访问,但通常把内存分为两个2GB的空间,每个进程在运行时最大可以使用2GB的私有内存(0x00000000—0x7FFFFFFF)。即理论上支持如下的大数组:char szBuffer[2*1024*1024*1024];当然,由于在实际运行时,程序还有代码段、临时变量段、... 2023-06-13 CC++内存理解文章基础课C语言基础
atexit函数和exit函数的理解 我们通常认为C语言的起始函数是main函数,实质上一个程序的启动函数并不一定是main函数,这个可以采用链接器来设置,但是gcc中默认main就是C语言的入口函数,在main函数启动之前,内核会调用一个特殊的启动例程,这个启动例程从内核中取得命令行参数值和环境变量值,为调用main函数做... 2023-06-13 atexit函数exit函数理解文章基础课C语言基础